From: Anton Korobeynikov Date: Sat, 5 Mar 2011 18:44:00 +0000 (+0000) Subject: ARM assembler stuff is crazy: for .setfp positive values of offset corresponds to... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=e516379d2a2fd1ad7583b2fa289051da517d8a42;p=oota-llvm.git ARM assembler stuff is crazy: for .setfp positive values of offset corresponds to "add" instruction, not to "sub" as in .pad case git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127106 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp index 135148d1645..e1a2cc57abf 100644 --- a/lib/Target/ARM/ARMAsmPrinter.cpp +++ b/lib/Target/ARM/ARMAsmPrinter.cpp @@ -916,10 +916,11 @@ void ARMAsmPrinter::EmitUnwindingInstruction(const MachineInstr *MI) { } if (DstReg == FramePtr && FramePtr != ARM::SP) - // Set-up of the frame pointer. - OutStreamer.EmitSetFP(FramePtr, ARM::SP, Offset); + // Set-up of the frame pointer. Positive values correspond to "add" + // instruction. + OutStreamer.EmitSetFP(FramePtr, ARM::SP, -Offset); else if (DstReg == ARM::SP) { - // Change of SP by an offset. Positive values corresponds to "sub" + // Change of SP by an offset. Positive values correspond to "sub" // instruction. OutStreamer.EmitPad(Offset); } else {