From: Evan Cheng Date: Wed, 30 Jan 2008 03:57:33 +0000 (+0000) Subject: Skip over the label which marks the beginning of the function before inserting prolog... X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=d2c860cef1593307b48096bc83343bcf6583edf1;p=oota-llvm.git Skip over the label which marks the beginning of the function before inserting prologue code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46546 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp index 277a09cc155..bca197311fa 100644 --- a/lib/Target/X86/X86RegisterInfo.cpp +++ b/lib/Target/X86/X86RegisterInfo.cpp @@ -525,6 +525,12 @@ void X86RegisterInfo::emitPrologue(MachineFunction &MF) const { X86FI->getCalleeSavedFrameSize() +(-TailCallReturnAddrDelta)); uint64_t NumBytes = StackSize - X86FI->getCalleeSavedFrameSize(); + // Skip over the label which mark the beginning of the function. + if (MMI && MMI->needsFrameInfo() && + MBBI != MBB.end() && + MBBI->getOpcode() == X86::LABEL) + ++MBBI; + // Insert stack pointer adjustment for later moving of return addr. Only // applies to tail call optimized functions where the callee argument stack // size is bigger than the callers.