Remove variable that keeps the size of area used to save byval or variable
authorAkira Hatanaka <ahatanaka@mips.com>
Mon, 14 Nov 2011 18:56:20 +0000 (18:56 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Mon, 14 Nov 2011 18:56:20 +0000 (18:56 +0000)
argument registers on the callee's stack frame, along with functions that set
and get it.

It is not necessary to add the size of this area when computing stack size in
emitPrologue, since it has already been accounted for in
PEI::calculateFrameObjectOffsets.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144549 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/MipsFrameLowering.cpp
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsMachineFunction.h

index 07de251193671828e29dfee2b5af09dcc2b71d89..19bb1a55e68d5f215654d7d74b978002599bee84 100644 (file)
@@ -163,7 +163,6 @@ void MipsFrameLowering::emitPrologue(MachineFunction &MF) const {
     (MFI->getObjectOffset(MipsFI->getGPFI()) + RegSize) :
     MipsFI->getMaxCallFrameSize();
   unsigned StackSize = AlignOffset(LocalVarAreaOffset, StackAlign) +
-    AlignOffset(MipsFI->getRegSaveAreaSize(), StackAlign) +
     AlignOffset(MFI->getStackSize(), StackAlign);
 
    // Update stack size
index 1ba138f5348c651224755e118e1192d296f2f761..9d2cd1d612dae1018ea76dde0b9336633c135bed 100644 (file)
@@ -2459,7 +2459,6 @@ CopyMips64ByValRegs(MachineFunction &MF, SDValue Chain, DebugLoc dl,
   if (IsRegLoc) {
     Reg = std::find(Mips64IntRegs, Mips64IntRegs + 8, VA.getLocReg());
     FOOffset = (Reg - Mips64IntRegs) * 8 - 8 * 8;
-    MipsFI->setRegSaveAreaSize(-FOOffset);
   }
   else
     FOOffset = VA.getLocMemOffset();
index be27606ed8e664f761d47871a82c399f86eb52a8..bc30b6b2425b4734fd9be39fe9780abf1551e7ce 100644 (file)
@@ -51,16 +51,12 @@ private:
   mutable int DynAllocFI; // Frame index of dynamically allocated stack area.   
   unsigned MaxCallFrameSize;
 
-  // Size of area on callee's stack frame which is used to save va_arg or 
-  // byval arguments passed in registers.
-  unsigned RegSaveAreaSize;
-
 public:
   MipsFunctionInfo(MachineFunction& MF)
   : MF(MF), SRetReturnReg(0), GlobalBaseReg(0),
     VarArgsFrameIndex(0), InArgFIRange(std::make_pair(-1, 0)),
     OutArgFIRange(std::make_pair(-1, 0)), GPFI(0), DynAllocFI(0),
-    MaxCallFrameSize(0), RegSaveAreaSize(0)
+    MaxCallFrameSize(0)
   {}
 
   bool isInArgFI(int FI) const {
@@ -104,11 +100,6 @@ public:
 
   unsigned getMaxCallFrameSize() const { return MaxCallFrameSize; }
   void setMaxCallFrameSize(unsigned S) { MaxCallFrameSize = S; }
-
-  unsigned getRegSaveAreaSize() const { return RegSaveAreaSize; }
-  void setRegSaveAreaSize(unsigned S) {
-    if (RegSaveAreaSize < S) RegSaveAreaSize = S;
-  }
 };
 
 } // end of namespace llvm