summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/XCore/XCoreFrameLowering.h
diff options
context:
space:
mode:
authorRobert Lytton <robert@xmos.com>2013-12-02 11:05:28 +0000
committerRobert Lytton <robert@xmos.com>2013-12-02 11:05:28 +0000
commit7fbca3cce0342828e92a2d8e8e2128c48ee2d52f (patch)
tree8f41b82dabaeb2ff5b24ec1b60e1f04f7f4afe64 /llvm/lib/Target/XCore/XCoreFrameLowering.h
parent72360d201c0b61c64244f3eea51a87699f6c5069 (diff)
downloadbcm5719-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.h3
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;
OpenPOWER on IntegriCloud