Notify the delegate before removing dead values from a live interval.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Wed, 23 Mar 2011 04:43:16 +0000 (04:43 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Wed, 23 Mar 2011 04:43:16 +0000 (04:43 +0000)
The register allocator needs to know when the range shrinks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128145 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/LiveRangeEdit.cpp

index f5c67b9c748372b98a1cf317fd9864dd95bcfe9f..6b419ebf32f2f4abb5bd209c20197e4048f83595 100644 (file)
@@ -182,6 +182,8 @@ void LiveRangeEdit::eliminateDeadDefs(SmallVectorImpl<MachineInstr*> &Dead,
         // Remove defined value.
         if (MOI->isDef()) {
           if (VNInfo *VNI = LI.getVNInfoAt(Idx)) {
+            if (delegate_)
+              delegate_->LRE_WillShrinkVirtReg(LI.reg);
             LI.removeValNo(VNI);
             if (LI.empty()) {
               ToShrink.remove(&LI);