diff options
author | Robert Lytton <robert@xmos.com> | 2013-12-02 11:05:28 +0000 |
---|---|---|
committer | Robert Lytton <robert@xmos.com> | 2013-12-02 11:05:28 +0000 |
commit | 7fbca3cce0342828e92a2d8e8e2128c48ee2d52f (patch) | |
tree | 8f41b82dabaeb2ff5b24ec1b60e1f04f7f4afe64 /llvm/lib/Target/XCore/XCoreFrameLowering.h | |
parent | 72360d201c0b61c64244f3eea51a87699f6c5069 (diff) | |
download | bcm5719-llvm-7fbca3cce0342828e92a2d8e8e2128c48ee2d52f.tar.gz bcm5719-llvm-7fbca3cce0342828e92a2d8e8e2128c48ee2d52f.zip |
XCore target: Make handling of large frames not dependent upon an FP.
eliminateFrameIndex() has been reworked to handle both small & large frames
with either a FP or SP.
An additional Slot is required for Scavenging spills when not using FP for large frames.
Reworked the handling of Register Scavenging.
Whether we are using an FP or not, whether it is a large frame or not,
and whether we are using a large code model or not are now independent.
llvm-svn: 196091
Diffstat (limited to 'llvm/lib/Target/XCore/XCoreFrameLowering.h')
-rw-r--r-- | llvm/lib/Target/XCore/XCoreFrameLowering.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/XCore/XCoreFrameLowering.h b/llvm/lib/Target/XCore/XCoreFrameLowering.h index ebad62f2fa5..6cd90c96e7f 100644 --- a/llvm/lib/Target/XCore/XCoreFrameLowering.h +++ b/llvm/lib/Target/XCore/XCoreFrameLowering.h @@ -48,6 +48,9 @@ namespace llvm { void processFunctionBeforeCalleeSavedScan(MachineFunction &MF, RegScavenger *RS = NULL) const; + void processFunctionBeforeFrameFinalized(MachineFunction &MF, + RegScavenger *RS = NULL) const; + //! Stack slot size (4 bytes) static int stackSlotSize() { return 4; |