summaryrefslogtreecommitdiff
path: root/lib/CodeGen/LiveRangeEdit.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-03-23 04:43:16 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-03-23 04:43:16 +0000
commit1e6c65dba706de80f5a4ceb8a1fc86bc3d0a61c6 (patch)
treea770cb75c029144521ab442ea9bbdaff26511f34 /lib/CodeGen/LiveRangeEdit.cpp
parent0b5015188e834afa7fb2fe3694a9c190f59fd19c (diff)
downloadllvm-1e6c65dba706de80f5a4ceb8a1fc86bc3d0a61c6.tar.gz
llvm-1e6c65dba706de80f5a4ceb8a1fc86bc3d0a61c6.tar.bz2
llvm-1e6c65dba706de80f5a4ceb8a1fc86bc3d0a61c6.tar.xz
Notify the delegate before removing dead values from a live interval.
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
Diffstat (limited to 'lib/CodeGen/LiveRangeEdit.cpp')
-rw-r--r--lib/CodeGen/LiveRangeEdit.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/CodeGen/LiveRangeEdit.cpp b/lib/CodeGen/LiveRangeEdit.cpp
index f5c67b9c74..6b419ebf32 100644
--- a/lib/CodeGen/LiveRangeEdit.cpp
+++ b/lib/CodeGen/LiveRangeEdit.cpp
@@ -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);