Commit 2622b3d9 authored by Tanya Lattner's avatar Tanya Lattner
Browse files

Merge 80960 from mainline.

If we've pushed registers onto the stack, but aren't adjusting the stack pointer
(i.e., there are no local variables and stuff), we still need to output FDE
information for the pushed registers.

llvm-svn: 81973
parent 518c626d
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1086,12 +1086,12 @@ void X86RegisterInfo::emitPrologue(MachineFunction &MF) const {
      emitSPUpdate(MBB, MBBI, StackPtr, -(int64_t)NumBytes, Is64Bit, TII);
  }

  if (NumBytes && needsFrameMoves) {
  if ((NumBytes || PushedRegs) && needsFrameMoves) {
    // Mark end of stack pointer adjustment.
    unsigned LabelId = MMI->NextLabelID();
    BuildMI(MBB, MBBI, DL, TII.get(X86::DBG_LABEL)).addImm(LabelId);

    if (!HasFP) {
    if (!HasFP && NumBytes) {
      // Define the current CFA rule to use the provided offset.
      if (StackSize) {
        MachineLocation SPDst(MachineLocation::VirtualFP);