Revert r140924 "Attempt to fix dynamic stack realignment for thumb1 functions."

to appease nightly testers.  Not quite there yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140953 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chad Rosier
2011-10-01 19:30:36 +00:00
parent cbf26e3b57
commit 2bfaf521ae
3 changed files with 7 additions and 27 deletions

View File

@ -155,27 +155,6 @@ void Thumb1FrameLowering::emitPrologue(MachineFunction &MF) const {
AFI->setGPRCalleeSavedArea2Size(GPRCS2Size);
AFI->setDPRCalleeSavedAreaSize(DPRCSSize);
if (RegInfo->needsStackRealignment(MF)) {
// We cannot use sp as source/dest register here, thus we're emitting the
// following sequence:
// mov r4, sp
// lsrs r4, r4, Log2MaxAlign
// lsls r4, r4, Log2MaxAlign
// mov sp, r4
unsigned MaxAlign = MFI->getMaxAlignment();
unsigned Log2MaxAlign = Log2_32(MaxAlign);
AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tMOVr), ARM::R4)
.addReg(ARM::SP, RegState::Kill));
AddDefaultPred(AddDefaultT1CC(BuildMI(MBB, MBBI, dl, TII.get(ARM::tLSRri), ARM::R4))
.addReg(ARM::R4, RegState::Kill)
.addImm(Log2MaxAlign));
AddDefaultPred(AddDefaultT1CC(BuildMI(MBB, MBBI, dl, TII.get(ARM::tLSLri), ARM::R4))
.addReg(ARM::R4, RegState::Kill)
.addImm(Log2MaxAlign));
AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tMOVr), ARM::SP)
.addReg(ARM::R4, RegState::Kill));
}
// If we need a base pointer, set it up here. It's whatever the value
// of the stack pointer is at this point. Any variable size objects
// will be allocated after this, so we can still use the base pointer