Make sure all eliminated kills are removed from VNInfo lists.

This fixes PR7479 and PR7485. The test cases from those PRs are big, so not
included. However, PR7485 comes from self hosting on FreeBSD, so we will surely
hear about any regression.

llvm-svn: 106811
This commit is contained in:
Jakob Stoklund Olesen 2010-06-24 23:57:35 +00:00
parent 600658a4ba
commit 889ab7d158
1 changed files with 2 additions and 0 deletions

View File

@ -484,6 +484,8 @@ void LiveInterval::join(LiveInterval &Other,
I->valno = NewVNInfo[OtherAssignments[RangeNo]];
assert(I->valno && "Adding a dead range?");
InsertPos = addRangeFrom(*I, InsertPos);
InsertPos->valno->removeKills(InsertPos->start,
InsertPos->end.getPrevSlot());
}
ComputeJoinedWeight(Other);