[llvm-commits] [llvm] r45798 - /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Evan Cheng evan.cheng at apple.com
Wed Jan 9 16:37:26 PST 2008


Author: evancheng
Date: Wed Jan  9 18:37:26 2008
New Revision: 45798

URL: http://llvm.org/viewvc/llvm-project?rev=45798&view=rev
Log:
Do not use the stack pointer directly, issue a copyfromreg instead. Otherwise we can end up with something like ADD32ri %esp, x which two-address pass won't like.

Modified:
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=45798&r1=45797&r2=45798&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Wed Jan  9 18:37:26 2008
@@ -1332,7 +1332,7 @@
     } else {
       assert(VA.isMemLoc());
       if (StackPtr.Val == 0)
-        StackPtr = DAG.getRegister(getStackPtrReg(), getPointerTy());
+        StackPtr = DAG.getCopyFromReg(Chain, X86StackPtr, getPointerTy());
 
       MemOpChains.push_back(LowerMemOpCallTo(Op, DAG, StackPtr, VA, Chain,
                                              Arg));





More information about the llvm-commits mailing list