unsigned StackAlign = getStackAlignment();
unsigned LocalVarAreaOffset = MipsFI->needGPSaveRestore() ?
(MFI->getObjectOffset(MipsFI->getGPFI()) + RegSize) :
- MFI->getMaxCallFrameSize();
+ MipsFI->getMaxCallFrameSize();
unsigned StackSize = AlignOffset(LocalVarAreaOffset, StackAlign) +
AlignOffset(MFI->getStackSize(), StackAlign);
if (IsPIC) {
// Function can have an arbitrary number of calls, so
// hold the LastArgStackLoc with the biggest offset.
- int MaxCallFrameSize = MipsFI->getMaxCallFrameSize();
+ unsigned MaxCallFrameSize = MipsFI->getMaxCallFrameSize();
unsigned NextStackOffset = CCInfo.getNextStackOffset();
// For O32, a minimum of four words (16 bytes) of argument space is
if (Subtarget->isABI_O32())
NextStackOffset = std::max(NextStackOffset, (unsigned)16);
- if (MaxCallFrameSize < (int)NextStackOffset) {
+ if (MaxCallFrameSize < NextStackOffset) {
MipsFI->setMaxCallFrameSize(NextStackOffset);
// $gp restore slot must be aligned.
std::pair<int, int> InArgFIRange, OutArgFIRange;
int GPFI; // Index of the frame object for restoring $gp
bool HasCall; // True if function has a function call.
- int MaxCallFrameSize;
+ unsigned MaxCallFrameSize;
public:
MipsFunctionInfo(MachineFunction& MF)
: SRetReturnReg(0), GlobalBaseReg(0),
VarArgsFrameIndex(0), InArgFIRange(std::make_pair(-1, 0)),
OutArgFIRange(std::make_pair(-1, 0)), GPFI(0), HasCall(false),
- MaxCallFrameSize(-1)
+ MaxCallFrameSize(0)
{}
bool isInArgFI(int FI) const {
bool hasCall() const { return HasCall; }
void setHasCall() { HasCall = true; }
- int getMaxCallFrameSize() const { return MaxCallFrameSize; }
- void setMaxCallFrameSize(int S) { MaxCallFrameSize = S; }
+ unsigned getMaxCallFrameSize() const { return MaxCallFrameSize; }
+ void setMaxCallFrameSize(unsigned S) { MaxCallFrameSize = S; }
};
} // end of namespace llvm