Fixed FP and SP usage. SP for outgoing args - for everything else FP
llvm-svn: 1258
diff --git a/llvm/lib/Target/Sparc/SparcRegInfo.cpp b/llvm/lib/Target/Sparc/SparcRegInfo.cpp
index 9e83063..cb7009d 100644
--- a/llvm/lib/Target/Sparc/SparcRegInfo.cpp
+++ b/llvm/lib/Target/Sparc/SparcRegInfo.cpp
@@ -665,7 +665,7 @@
int argOffset = PRA.mcInfo.allocateOptionalArg(target, LR->getType());
- AdMI = cpReg2MemMI(UniLRReg, getFramePointer(), argOffset, RegType );
+ AdMI = cpReg2MemMI(UniLRReg, getStackPointer(), argOffset, RegType );
}
AddedInstrnsBefore.push_back( AdMI ); // Now add the instruction
@@ -716,7 +716,7 @@
Ad1 = cpReg2MemMI(TReg, getFramePointer(), TmpOff, RegType );
Ad2 = cpMem2RegMI(getFramePointer(), LR->getSpillOffFromFP(),
TReg, RegType );
- Ad3 = cpReg2MemMI(TReg, getFramePointer(), argOffset, RegType );
+ Ad3 = cpReg2MemMI(TReg, getStackPointer(), argOffset, RegType );
Ad4 = cpMem2RegMI(getFramePointer(), TmpOff, TReg, RegType );
// We directly add to CallAI->InstrnsBefore instead of adding to