We need to subtract one from this index because live ranges are open at the end.
authorOwen Anderson <resistor@mac.com>
Wed, 4 Jun 2008 00:38:56 +0000 (00:38 +0000)
committerOwen Anderson <resistor@mac.com>
Wed, 4 Jun 2008 00:38:56 +0000 (00:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51922 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/StrongPHIElimination.cpp

index 449ef38a3a1da3e9fb7ba655b946a14b1d6a2eb3..ab9538761d20622e703baa81f85992604572567c 100644 (file)
@@ -467,7 +467,7 @@ void StrongPHIElimination::processBlock(MachineBasicBlock* MBB) {
       } else {
         // Otherwise, add it to the renaming set
         LiveInterval& I = LI.getOrCreateInterval(SrcReg);
-        unsigned idx = LI.getMBBEndIdx(P->getOperand(i).getMBB());
+        unsigned idx = LI.getMBBEndIdx(P->getOperand(i).getMBB()) - 1;
         VNInfo* VN = I.getLiveRangeContaining(idx)->valno;
         
         assert(VN && "No VNInfo for register?");