Changes in directory llvm/lib/Target/X86:

X86RegisterInfo.cpp updated: 1.191 -> 1.192
---
Log message:

One more try...

---
Diffs of the changes:  (+3 -2)

 X86RegisterInfo.cpp |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)


Index: llvm/lib/Target/X86/X86RegisterInfo.cpp
diff -u llvm/lib/Target/X86/X86RegisterInfo.cpp:1.191 
llvm/lib/Target/X86/X86RegisterInfo.cpp:1.192
--- llvm/lib/Target/X86/X86RegisterInfo.cpp:1.191       Sat Jan 20 04:11:56 2007
+++ llvm/lib/Target/X86/X86RegisterInfo.cpp     Sat Jan 20 04:17:53 2007
@@ -998,12 +998,13 @@
   
   // Get the number of bytes to allocate from the FrameInfo
   unsigned NumBytes = MFI->getStackSize();
-  if (MFI->hasCalls() && !hasFP(MF))
+  if (MFI->hasCalls() || MF.getFrameInfo()->hasVarSizedObjects()) {
     // When we have no frame pointer, we reserve argument space for call sites
     // in the function immediately on entry to the current function.  This
     // eliminates the need for add/sub ESP brackets around call sites.
     //
-    NumBytes += MFI->getMaxCallFrameSize();
+    if (!hasFP(MF))
+      NumBytes += MFI->getMaxCallFrameSize();
 
     // Round the size to a multiple of the alignment (don't forget the 4/8 byte
     // offset pushed by the caller though). No need to align the stack if this



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to