summaryrefslogtreecommitdiff
path: root/lib/Target/XCore/XCoreISelLowering.h
diff options
context:
space:
mode:
authorRobert Lytton <robert@xmos.com>2014-01-06 14:21:00 +0000
committerRobert Lytton <robert@xmos.com>2014-01-06 14:21:00 +0000
commitaf74cbf553073b701fc570c7ef9b1446111ac9b6 (patch)
tree80c553a5b9d705896aad7a5d32133cc14eafd16f /lib/Target/XCore/XCoreISelLowering.h
parent12ad7cd730cb0575a6d03cccd6073af8e9486f3f (diff)
downloadllvm-af74cbf553073b701fc570c7ef9b1446111ac9b6.tar.gz
llvm-af74cbf553073b701fc570c7ef9b1446111ac9b6.tar.bz2
llvm-af74cbf553073b701fc570c7ef9b1446111ac9b6.tar.xz
XCore target: Lower FRAME_TO_ARGS_OFFSET
This requires a knowledge of the stack size which is not known until the frame is complete, hence the need for the XCoreFTAOElim pass which lowers the XCoreISD::FRAME_TO_ARGS_OFFSET instrution into its final form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198614 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/XCore/XCoreISelLowering.h')
-rw-r--r--lib/Target/XCore/XCoreISelLowering.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/XCore/XCoreISelLowering.h b/lib/Target/XCore/XCoreISelLowering.h
index a6dd226024..c4de86e22d 100644
--- a/lib/Target/XCore/XCoreISelLowering.h
+++ b/lib/Target/XCore/XCoreISelLowering.h
@@ -72,6 +72,9 @@ namespace llvm {
// Jumptable branch using long branches for each entry.
BR_JT32,
+ // Offset from frame pointer to the first (possible) on-stack argument
+ FRAME_TO_ARGS_OFFSET,
+
// Memory barrier.
MEMBARRIER
};
@@ -158,6 +161,7 @@ namespace llvm {
SDValue LowerUMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerSMUL_LOHI(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerFRAMEADDR(SDValue Op, SelectionDAG &DAG) const;
+ SDValue LowerFRAME_TO_ARGS_OFFSET(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerRETURNADDR(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerINIT_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerADJUST_TRAMPOLINE(SDValue Op, SelectionDAG &DAG) const;