The x86 jit doesn't generate a def_cfa_offset unwind instruction after the
authorBill Wendling <isanbard@gmail.com>
Sun, 2 Aug 2009 22:25:37 +0000 (22:25 +0000)
committerBill Wendling <isanbard@gmail.com>
Sun, 2 Aug 2009 22:25:37 +0000 (22:25 +0000)
pushes in the function prolog if the function doesn't have any stack space,
i.e. for a prolog like:

0x40011870:     push %r15
0x40011872:     push %r14
0x40011874:     push %rbx

Patch by Zoltan!

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

lib/Target/X86/X86RegisterInfo.cpp

index 8c54aebb9ea4802463a5230ce2e70ebaa2fec040..3fa53733c0d58beb09c2c97afb0c577878f12052 100644 (file)
@@ -1059,7 +1059,7 @@ void X86RegisterInfo::emitPrologue(MachineFunction &MF) const {
       emitSPUpdate(MBB, MBBI, StackPtr, -(int64_t)NumBytes, Is64Bit, TII);
   }
 
-  if (!HasFP && needsFrameMoves && NumBytes) {
+  if (!HasFP && needsFrameMoves) {
     // Mark end of stack pointer adjustment.
     unsigned LabelId = MMI->NextLabelID();
     BuildMI(MBB, MBBI, DL, TII.get(X86::DBG_LABEL)).addImm(LabelId);