summaryrefslogtreecommitdiff
path: root/lib/Target/Mips/MipsISelLowering.h
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@mips.com>2012-10-19 21:47:33 +0000
committerAkira Hatanaka <ahatanaka@mips.com>2012-10-19 21:47:33 +0000
commit2b861be96ef18174c201ce6a94c5130445bc5b40 (patch)
tree8b6ddcaeb967622364f6478bbecae9671b352595 /lib/Target/Mips/MipsISelLowering.h
parente050902ca7b2976fff845b55d7fb2ccba9d37892 (diff)
downloadllvm-2b861be96ef18174c201ce6a94c5130445bc5b40.tar.gz
llvm-2b861be96ef18174c201ce6a94c5130445bc5b40.tar.bz2
llvm-2b861be96ef18174c201ce6a94c5130445bc5b40.tar.xz
[mips] Add code to do tail call optimization.
Currently, it is enabled only if option "enable-mips-tail-calls" is given and all of the callee's arguments are passed in registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166342 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsISelLowering.h')
-rw-r--r--lib/Target/Mips/MipsISelLowering.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/Mips/MipsISelLowering.h b/lib/Target/Mips/MipsISelLowering.h
index f185f12094..b75a513fa7 100644
--- a/lib/Target/Mips/MipsISelLowering.h
+++ b/lib/Target/Mips/MipsISelLowering.h
@@ -208,6 +208,11 @@ namespace llvm {
SDValue LowerINTRINSIC_WO_CHAIN(SDValue Op, SelectionDAG &DAG) const;
SDValue LowerINTRINSIC_W_CHAIN(SDValue Op, SelectionDAG &DAG) const;
+ /// IsEligibleForTailCallOptimization - Check whether the call is eligible
+ /// for tail call optimization.
+ bool IsEligibleForTailCallOptimization(CallingConv::ID CalleeCC,
+ unsigned NextStackOffset) const;
+
virtual SDValue
LowerFormalArguments(SDValue Chain,
CallingConv::ID CallConv, bool isVarArg,