diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2007-08-28 05:13:42 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2007-08-28 05:13:42 +0000 |
commit | 51195af45f4142035f23c7d58d1311face3900a4 (patch) | |
tree | 2a3ffb0b5664e8f53f7bc1e7a910fd3b4b550252 /lib/Target/Mips/MipsRegisterInfo.h | |
parent | a2b1bb5296624d32a200f9c53d6f26c0c9c3bddc (diff) | |
download | llvm-51195af45f4142035f23c7d58d1311face3900a4.tar.gz llvm-51195af45f4142035f23c7d58d1311face3900a4.tar.bz2 llvm-51195af45f4142035f23c7d58d1311face3900a4.tar.xz |
Added method to get Mips register numbers
Changed the stack frame layout, StackGrowsUp fits better to Mips strange stack.
Stack offset calculation bug fixed!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41529 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsRegisterInfo.h')
-rw-r--r-- | lib/Target/Mips/MipsRegisterInfo.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/Target/Mips/MipsRegisterInfo.h b/lib/Target/Mips/MipsRegisterInfo.h index ebc0318b88..cc8215c864 100644 --- a/lib/Target/Mips/MipsRegisterInfo.h +++ b/lib/Target/Mips/MipsRegisterInfo.h @@ -27,6 +27,10 @@ struct MipsRegisterInfo : public MipsGenRegisterInfo { MipsRegisterInfo(const TargetInstrInfo &tii); + /// getRegisterNumbering - Given the enum value for some register, e.g. + /// Mips::RA, return the number that it corresponds to (e.g. 31). + static unsigned getRegisterNumbering(unsigned RegEnum); + /// Code Generation virtual methods... void storeRegToStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, @@ -62,6 +66,7 @@ struct MipsRegisterInfo : public MipsGenRegisterInfo { MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; + /// Stack Frame Processing Methods void eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj, RegScavenger *RS = NULL) const; @@ -70,11 +75,11 @@ struct MipsRegisterInfo : public MipsGenRegisterInfo { void emitPrologue(MachineFunction &MF) const; void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const; - // Debug information queries. + /// Debug information queries. unsigned getRARegister() const; unsigned getFrameRegister(MachineFunction &MF) const; - // Exception handling queries. + /// Exception handling queries. unsigned getEHExceptionRegister() const; unsigned getEHHandlerRegister() const; }; |