Don't add <imp-def> operands during register rewriting.
commit920f2e7b25fafd19ae6fe1071c876bfb6b1e1222
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 7 Sep 2010 22:38:45 +0000 (7 22:38 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 7 Sep 2010 22:38:45 +0000 (7 22:38 +0000)
treee49f752af5551c9dcde1cc1eb40393c672d63896
parent3d537195129f746767062caf8fe9158c2d25b5e5
Don't add <imp-def> operands during register rewriting.

LiveIntervals already adds <imp-def> operands for super-registers when a subreg
def defines the whole register. Thus, it is not necessary to do it again when
rewriting.

In fact, the super-register imp-defs caused miscompilations because the late
scheduler couldn't see that the super-register was read.

We still add super-reg <imp-use,kill> operands when rewriting virtuals to
physicals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113299 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/VirtRegRewriter.cpp