mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Let PEI::calculateFrameObjectOffsets compute the final stack size rather than
computing it in MipsFrameLowering::emitPrologue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161078 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -90,10 +90,6 @@ bool MipsFrameLowering::hasFP(const MachineFunction &MF) const {
|
||||
MFI->hasVarSizedObjects() || MFI->isFrameAddressTaken();
|
||||
}
|
||||
|
||||
bool MipsFrameLowering::targetHandlesStackFrameRounding() const {
|
||||
return true;
|
||||
}
|
||||
|
||||
void MipsFrameLowering::emitPrologue(MachineFunction &MF) const {
|
||||
MachineBasicBlock &MBB = MF.front();
|
||||
MachineFrameInfo *MFI = MF.getFrameInfo();
|
||||
@@ -110,12 +106,7 @@ void MipsFrameLowering::emitPrologue(MachineFunction &MF) const {
|
||||
unsigned ADDiu = STI.isABI_N64() ? Mips::DADDiu : Mips::ADDiu;
|
||||
|
||||
// First, compute final stack size.
|
||||
unsigned StackAlign = getStackAlignment();
|
||||
uint64_t StackSize = RoundUpToAlignment(MFI->getStackSize(), StackAlign);
|
||||
StackSize += RoundUpToAlignment(MFI->getMaxCallFrameSize(), StackAlign);
|
||||
|
||||
// Update stack size
|
||||
MFI->setStackSize(StackSize);
|
||||
uint64_t StackSize = MFI->getStackSize();
|
||||
|
||||
// No need to allocate space on the stack.
|
||||
if (StackSize == 0 && !MFI->adjustsStack()) return;
|
||||
|
@@ -31,8 +31,6 @@ public:
|
||||
STI(sti) {
|
||||
}
|
||||
|
||||
bool targetHandlesStackFrameRounding() const;
|
||||
|
||||
/// emitProlog/emitEpilog - These methods insert prolog and epilog code into
|
||||
/// the function.
|
||||
void emitPrologue(MachineFunction &MF) const;
|
||||
|
Reference in New Issue
Block a user