aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-08-13 07:12:23 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-08-13 07:12:23 +0000
commitafc1c2c26aeaf84cbca8b4718605e1b83e62d397 (patch)
treead311bc89b2b674a63d7ef878e33cec2c286deb8
parent17b7ccb308e0954a4bb50b24031fff4a098d9d43 (diff)
downloadexternal_llvm-afc1c2c26aeaf84cbca8b4718605e1b83e62d397.zip
external_llvm-afc1c2c26aeaf84cbca8b4718605e1b83e62d397.tar.gz
external_llvm-afc1c2c26aeaf84cbca8b4718605e1b83e62d397.tar.bz2
Kill info update bugs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41043 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CodeGen/LiveInterval.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/CodeGen/LiveInterval.cpp b/lib/CodeGen/LiveInterval.cpp
index 2c22976..d60c3b1 100644
--- a/lib/CodeGen/LiveInterval.cpp
+++ b/lib/CodeGen/LiveInterval.cpp
@@ -232,7 +232,7 @@ void LiveInterval::removeRange(unsigned Start, unsigned End) {
// If the span we are removing is at the start of the LiveRange, adjust it.
if (I->start == Start) {
if (I->end == End) {
- removeKillForValNum(I->ValId, End);
+ removeKillForValNum(I->ValId, Start, End);
ranges.erase(I); // Removed the whole LiveRange.
} else
I->start = End;
@@ -242,7 +242,7 @@ void LiveInterval::removeRange(unsigned Start, unsigned End) {
// Otherwise if the span we are removing is at the end of the LiveRange,
// adjust the other way.
if (I->end == End) {
- replaceKillForValNum(I->ValId, End, Start);
+ removeKillForValNum(I->ValId, Start, End);
I->end = Start;
return;
}
@@ -438,8 +438,6 @@ void LiveInterval::MergeValueNumberInto(unsigned V1, unsigned V2) {
if (LR != begin()) {
iterator Prev = LR-1;
if (Prev->ValId == V2 && Prev->end == LR->start) {
- bool Replaced = replaceKillForValNum(V2, Prev->end, LR->end);
- assert(Replaced);
Prev->end = LR->end;
// Erase this live-range.
@@ -458,7 +456,6 @@ void LiveInterval::MergeValueNumberInto(unsigned V1, unsigned V2) {
// of the loop.
if (I != end()) {
if (I->start == LR->end && I->ValId == V2) {
- removeKillForValNum(V2, LR->end);
LR->end = I->end;
ranges.erase(I);
I = LR+1;