diff options
author | Akira Hatanaka <ahatanaka@mips.com> | 2012-11-02 21:03:58 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@mips.com> | 2012-11-02 21:03:58 +0000 |
commit | 719df2874ce602f2f36f13cb7225a16e9ba0582c (patch) | |
tree | 403781bcc1e12ce06ea45a2f8611eb792fd342b3 /llvm/lib/Target/Mips | |
parent | 7296139d5efb6bc71c1e44f9608a4be024f00008 (diff) | |
download | bcm5719-llvm-719df2874ce602f2f36f13cb7225a16e9ba0582c.tar.gz bcm5719-llvm-719df2874ce602f2f36f13cb7225a16e9ba0582c.zip |
[mips] Add member field MipsFunctionInfo::IncomingArgSize which holds the size
of the incoming argument area.
llvm-svn: 167312
Diffstat (limited to 'llvm/lib/Target/Mips')
-rw-r--r-- | llvm/lib/Target/Mips/MipsISelLowering.cpp | 1 | ||||
-rw-r--r-- | llvm/lib/Target/Mips/MipsMachineFunction.h | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MipsISelLowering.cpp b/llvm/lib/Target/Mips/MipsISelLowering.cpp index 47a4f1a14a2..9f4d15cfe0a 100644 --- a/llvm/lib/Target/Mips/MipsISelLowering.cpp +++ b/llvm/lib/Target/Mips/MipsISelLowering.cpp @@ -3027,6 +3027,7 @@ MipsTargetLowering::LowerFormalArguments(SDValue Chain, MipsCCInfo.analyzeFormalArguments(Ins); MipsFI->setFormalArgInfo(CCInfo.getNextStackOffset(), MipsCCInfo.hasByValArg()); + MipsFI->setIncomingArgSize(CCInfo.getNextStackOffset()); Function::const_arg_iterator FuncArg = DAG.getMachineFunction().getFunction()->arg_begin(); diff --git a/llvm/lib/Target/Mips/MipsMachineFunction.h b/llvm/lib/Target/Mips/MipsMachineFunction.h index 1b3e0a3a8e9..d2eba581147 100644 --- a/llvm/lib/Target/Mips/MipsMachineFunction.h +++ b/llvm/lib/Target/Mips/MipsMachineFunction.h @@ -51,6 +51,9 @@ class MipsFunctionInfo : public MachineFunctionInfo { unsigned NextStackOffset; bool HasByvalArg; + // Size of incoming argument area. + unsigned IncomingArgSize; + public: MipsFunctionInfo(MachineFunction& MF) : MF(MF), SRetReturnReg(0), GlobalBaseReg(0), Mips16SPAliasReg(0), @@ -75,6 +78,9 @@ public: NextStackOffset = Offset; HasByvalArg = HasByval; } + + unsigned getIncomingArgSize() const { return IncomingArgSize; } + void setIncomingArgSize(unsigned S) { IncomingArgSize = S; } }; } // end of namespace llvm |