diff options
author | Jim Grosbach <grosbach@apple.com> | 2010-08-19 17:52:13 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2010-08-19 17:52:13 +0000 |
commit | 8c58bd30dc4bd71be6c58ffccefb6ce74c1b2b67 (patch) | |
tree | e47d21805d0e55f0daf603f80d17beac6a25e9d7 /llvm/lib/Target/ARM/Thumb1RegisterInfo.h | |
parent | e57dc14c444e6cac88b351852f0fa9aaf5f1205d (diff) | |
download | bcm5719-llvm-8c58bd30dc4bd71be6c58ffccefb6ce74c1b2b67.tar.gz bcm5719-llvm-8c58bd30dc4bd71be6c58ffccefb6ce74c1b2b67.zip |
Add Thumb1 support for virtual frame indices.
rdar://8277890
llvm-svn: 111533
Diffstat (limited to 'llvm/lib/Target/ARM/Thumb1RegisterInfo.h')
-rw-r--r-- | llvm/lib/Target/ARM/Thumb1RegisterInfo.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/lib/Target/ARM/Thumb1RegisterInfo.h b/llvm/lib/Target/ARM/Thumb1RegisterInfo.h index c365327e3f2..cdf625bd9e4 100644 --- a/llvm/lib/Target/ARM/Thumb1RegisterInfo.h +++ b/llvm/lib/Target/ARM/Thumb1RegisterInfo.h @@ -44,13 +44,14 @@ public: MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; - // rewrite MI to access 'Offset' bytes from the FP. Return the offset that - // could not be handled directly in MI. - int rewriteFrameIndex(MachineInstr &MI, unsigned FrameRegIdx, - unsigned FrameReg, int Offset, - unsigned MOVOpc, unsigned ADDriOpc, - unsigned SUBriOpc) const; - + // rewrite MI to access 'Offset' bytes from the FP. Update Offset to be + // however much remains to be handled. Return 'true' if no further + // work is required. + bool rewriteFrameIndex(MachineBasicBlock::iterator II, unsigned FrameRegIdx, + unsigned FrameReg, int &Offset, + const ARMBaseInstrInfo &TII) const; + void resolveFrameIndex(MachineBasicBlock::iterator I, + unsigned BaseReg, int64_t Offset) const; bool saveScavengerRegister(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, MachineBasicBlock::iterator &UseMI, |