[llvm-commits] CVS: llvm/lib/Target/ARM/ARMRegisterInfo.cpp

Dale Johannesen dalej at apple.com
Thu Mar 1 17:17:34 PST 2007



Changes in directory llvm/lib/Target/ARM:

ARMRegisterInfo.cpp updated: 1.78 -> 1.79
---
Log message:

eliminate unnecessary reset of SP in epilog on darwin


---
Diffs of the changes:  (+1 -1)

 ARMRegisterInfo.cpp |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/lib/Target/ARM/ARMRegisterInfo.cpp
diff -u llvm/lib/Target/ARM/ARMRegisterInfo.cpp:1.78 llvm/lib/Target/ARM/ARMRegisterInfo.cpp:1.79
--- llvm/lib/Target/ARM/ARMRegisterInfo.cpp:1.78	Thu Mar  1 02:57:52 2007
+++ llvm/lib/Target/ARM/ARMRegisterInfo.cpp	Thu Mar  1 19:17:17 2007
@@ -1290,7 +1290,7 @@
     } else {
       // Darwin ABI requires FP to point to the stack slot that contains the
       // previous FP.
-      if (STI.isTargetDarwin() || hasFP(MF)) {
+      if ((STI.isTargetDarwin() && NumBytes) || hasFP(MF)) {
         NumBytes = AFI->getFramePtrSpillOffset() - NumBytes;
         // Reset SP based on frame pointer only if the stack frame extends beyond
         // frame pointer stack slot or target is ELF and the function has FP.






More information about the llvm-commits mailing list