OSDN Git Service

Fixed a bug in MergeValueInAsValue() pointed out by David Greene. Replace val# with...
authorEvan Cheng <evan.cheng@apple.com>
Wed, 30 Jan 2008 22:44:55 +0000 (22:44 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 30 Jan 2008 22:44:55 +0000 (22:44 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46579 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/LiveInterval.cpp

index b20a87e..e1b8cf9 100644 (file)
@@ -402,9 +402,9 @@ void LiveInterval::MergeValueInAsValue(const LiveInterval &RHS,
     IP = std::upper_bound(IP, end(), Start);
     // If the start of this range overlaps with an existing liverange, trim it.
     if (IP != begin() && IP[-1].end > Start) {
-      if (IP->valno != LHSValNo) {
-        ReplacedValNos.push_back(IP->valno);
-        IP->valno = LHSValNo; // Update val#.
+      if (IP[-1].valno != LHSValNo) {
+        ReplacedValNos.push_back(IP[-1].valno);
+        IP[-1].valno = LHSValNo; // Update val#.
       }
       Start = IP[-1].end;
       // Trimmed away the whole range?