summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-01-10 00:37:26 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-01-10 00:37:26 +0000
commitfead113fe095f90248d7a92cd9e0362492caafce (patch)
tree4796adfc98a9f4e755124f162c9f9b53ad1be76b /llvm
parent8958a785768f7180f30c7a26b1e426819a1f8ab1 (diff)
downloadbcm5719-llvm-fead113fe095f90248d7a92cd9e0362492caafce.tar.gz
bcm5719-llvm-fead113fe095f90248d7a92cd9e0362492caafce.zip
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.
llvm-svn: 45798
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index bd598e277bc..a7cf6cf8ca2 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -1332,7 +1332,7 @@ SDOperand X86TargetLowering::LowerCALL(SDOperand Op, SelectionDAG &DAG) {
} 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));
OpenPOWER on IntegriCloud