summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2009-10-21 22:59:56 +0000
committerJim Grosbach <grosbach@apple.com>2009-10-21 22:59:56 +0000
commitc16c8c707baaf208b7aa1586b99090081397cdc8 (patch)
treec89bfa586f3e5e49587509fe9d6849c41e0577d0 /llvm/lib
parent05536f50dc0b7c7387562c9e4d02a6b7758da73a (diff)
downloadbcm5719-llvm-c16c8c707baaf208b7aa1586b99090081397cdc8.tar.gz
bcm5719-llvm-c16c8c707baaf208b7aa1586b99090081397cdc8.zip
The spill restore needs to be resolved to the SP/FP just like the spill
llvm-svn: 84792
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/CodeGen/RegisterScavenging.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/RegisterScavenging.cpp b/llvm/lib/CodeGen/RegisterScavenging.cpp
index 5fa28d281a5..2518ce15209 100644
--- a/llvm/lib/CodeGen/RegisterScavenging.cpp
+++ b/llvm/lib/CodeGen/RegisterScavenging.cpp
@@ -310,6 +310,8 @@ unsigned RegScavenger::scavengeRegister(const TargetRegisterClass *RC,
// Restore the scavenged register before its use (or first terminator).
TII->loadRegFromStackSlot(*MBB, UseMI, SReg, ScavengingFrameIndex, RC);
+ II = prior(UseMI);
+ TRI->eliminateFrameIndex(II, SPAdj, NULL, this);
}
ScavengeRestore = prior(UseMI);
OpenPOWER on IntegriCloud