[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp
Andrew Lenharth
alenhar2 at cs.uiuc.edu
Tue Jan 24 17:51:20 PST 2006
Changes in directory llvm/lib/Target/Alpha:
AlphaRegisterInfo.cpp updated: 1.31 -> 1.32
---
Log message:
maintaining stackpointer alignment. Perhaps it doesn't matter
---
Diffs of the changes: (+4 -0)
AlphaRegisterInfo.cpp | 4 ++++
1 files changed, 4 insertions(+)
Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp
diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.31 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.32
--- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.31 Sun Jan 1 16:13:54 2006
+++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Jan 24 19:51:08 2006
@@ -257,6 +257,7 @@
" for stack size: " << MF.getFrameInfo()->getStackSize() << "\n");
if (Offset > IMM_HIGH || Offset < IMM_LOW) {
+ std::cerr << "Unconditionally using R28 for evil purposes\n";
//so in this case, we need to use a temporary register, and move the original
//inst off the SP/FP
//fix up the old:
@@ -311,6 +312,9 @@
// Do we need to allocate space on the stack?
if (NumBytes == 0) return;
+ unsigned Align = MF.getTarget().getFrameInfo()->getStackAlignment();
+ NumBytes = (NumBytes+Align-1)/Align*Align;
+
// Update frame info to pretend that this is part of the stack...
MFI->setStackSize(NumBytes);
More information about the llvm-commits
mailing list