summaryrefslogtreecommitdiff
path: root/lib/VMCore
diff options
context:
space:
mode:
authorGordon Henriksen <gordonhenriksen@mac.com>2008-08-30 16:34:54 +0000
committerGordon Henriksen <gordonhenriksen@mac.com>2008-08-30 16:34:54 +0000
commit07cabf6102800aa701bc4d1bd282fafb63b8a416 (patch)
tree04177dfd1817d99b875976c592cea2f88df6b2ed /lib/VMCore
parent699609cf918cbc1ad4d0029a1d4568369854789f (diff)
downloadllvm-07cabf6102800aa701bc4d1bd282fafb63b8a416.tar.gz
llvm-07cabf6102800aa701bc4d1bd282fafb63b8a416.tar.bz2
llvm-07cabf6102800aa701bc4d1bd282fafb63b8a416.tar.xz
PR2731: C and Ocaml bindings for setTailCall and isTailCall.
Based on patch by Giorgos Korfiatis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55570 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore')
-rw-r--r--lib/VMCore/Core.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/VMCore/Core.cpp b/lib/VMCore/Core.cpp
index 8517a41d7c..2fedc1e3f1 100644
--- a/lib/VMCore/Core.cpp
+++ b/lib/VMCore/Core.cpp
@@ -963,6 +963,16 @@ void LLVMSetInstrParamAlignment(LLVMValueRef Instr, unsigned index,
ParamAttr::constructAlignmentFromInt(align)));
}
+/*--.. Operations on call instructions (only) ..............................--*/
+
+int LLVMIsTailCall(LLVMValueRef Call) {
+ return unwrap<CallInst>(Call)->isTailCall();
+}
+
+void LLVMSetTailCall(LLVMValueRef Call, int isTailCall) {
+ unwrap<CallInst>(Call)->setTailCall(isTailCall);
+}
+
/*--.. Operations on phi nodes .............................................--*/
void LLVMAddIncoming(LLVMValueRef PhiNode, LLVMValueRef *IncomingValues,