summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm-c/Core.h25
-rw-r--r--llvm/lib/IR/Core.cpp33
-rw-r--r--llvm/test/Bindings/llvm-c/invoke.ll4
-rw-r--r--llvm/tools/llvm-c-test/echo.cpp2
4 files changed, 3 insertions, 61 deletions
diff --git a/llvm/include/llvm-c/Core.h b/llvm/include/llvm-c/Core.h
index 00d151c4541..cac2f297056 100644
--- a/llvm/include/llvm-c/Core.h
+++ b/llvm/include/llvm-c/Core.h
@@ -452,13 +452,6 @@ enum {
typedef unsigned LLVMAttributeIndex;
-typedef enum {
- LLVMTailCallKindNone,
- LLVMTailCallKindTail,
- LLVMTailCallKindMustTail,
- LLVMTailCallKindNoTail
-} LLVMTailCallKind;
-
/**
* @}
*/
@@ -3271,24 +3264,6 @@ LLVMBool LLVMIsTailCall(LLVMValueRef CallInst);
void LLVMSetTailCall(LLVMValueRef CallInst, LLVMBool IsTailCall);
/**
- * Obtains the kind of tail call for a call instruction.
- *
- * This only works on llvm::CallInst instructions.
- *
- * @see llvm::CallInst::getTailCallKind()
- */
-LLVMTailCallKind LLVMGetTailCallKind(LLVMValueRef CallInst);
-
-/**
- * Set the kind of tail call for a call instruction.
- *
- * This only works on llvm::CallInst instructions.
- *
- * @see llvm::CallInst::setTailCallKind()
- */
-void LLVMSetTailCallKind(LLVMValueRef CallInst, LLVMTailCallKind TCK);
-
-/**
* Return the normal destination basic block.
*
* This only works on llvm::InvokeInst instructions.
diff --git a/llvm/lib/IR/Core.cpp b/llvm/lib/IR/Core.cpp
index 4c38bb1a553..b4dc91bc3f3 100644
--- a/llvm/lib/IR/Core.cpp
+++ b/llvm/lib/IR/Core.cpp
@@ -2844,39 +2844,6 @@ void LLVMSetTailCall(LLVMValueRef Call, LLVMBool isTailCall) {
unwrap<CallInst>(Call)->setTailCall(isTailCall);
}
-LLVMTailCallKind LLVMGetTailCallKind(LLVMValueRef Call) {
- switch (unwrap<CallInst>(Call)->getTailCallKind()) {
- case CallInst::TailCallKind::TCK_None:
- return LLVMTailCallKindNone;
- case CallInst::TailCallKind::TCK_Tail:
- return LLVMTailCallKindTail;
- case CallInst::TailCallKind::TCK_MustTail:
- return LLVMTailCallKindMustTail;
- case CallInst::TailCallKind::TCK_NoTail:
- return LLVMTailCallKindNoTail;
- }
-}
-
-void LLVMSetTailCallKind(LLVMValueRef Call, LLVMTailCallKind TCK) {
- CallInst::TailCallKind kind;
- switch (TCK) {
- case LLVMTailCallKindNone:
- kind = CallInst::TailCallKind::TCK_None;
- break;
- case LLVMTailCallKindTail:
- kind = CallInst::TailCallKind::TCK_Tail;
- break;
- case LLVMTailCallKindMustTail:
- kind = CallInst::TailCallKind::TCK_MustTail;
- break;
- case LLVMTailCallKindNoTail:
- kind = CallInst::TailCallKind::TCK_NoTail;
- break;
- }
-
- unwrap<CallInst>(Call)->setTailCallKind(kind);
-}
-
/*--.. Operations on invoke instructions (only) ............................--*/
LLVMBasicBlockRef LLVMGetNormalDest(LLVMValueRef Invoke) {
diff --git a/llvm/test/Bindings/llvm-c/invoke.ll b/llvm/test/Bindings/llvm-c/invoke.ll
index 69228225251..613a18de1a8 100644
--- a/llvm/test/Bindings/llvm-c/invoke.ll
+++ b/llvm/test/Bindings/llvm-c/invoke.ll
@@ -55,12 +55,12 @@ catch: ; preds = %unwind5, %unwind3,
ret i32 %merge
unwind3: ; preds = %landingPad
- %8 = musttail call i32 @llvm.eh.typeid.for(i8* nonnull bitcast (%C6object9ClassInfo* @C6object9Exception__ClassInfo to i8*))
+ %8 = tail call i32 @llvm.eh.typeid.for(i8* nonnull bitcast (%C6object9ClassInfo* @C6object9Exception__ClassInfo to i8*))
%9 = icmp eq i32 %8, %5
br i1 %9, label %catch, label %unwind5
unwind5: ; preds = %unwind3
- %10 = notail call i32 @llvm.eh.typeid.for(i8* nonnull bitcast (%C6object9ClassInfo* @C6object9Throwable__ClassInfo to i8*))
+ %10 = tail call i32 @llvm.eh.typeid.for(i8* nonnull bitcast (%C6object9ClassInfo* @C6object9Throwable__ClassInfo to i8*))
%11 = icmp eq i32 %10, %5
br i1 %11, label %catch, label %unwind7
diff --git a/llvm/tools/llvm-c-test/echo.cpp b/llvm/tools/llvm-c-test/echo.cpp
index 7216aa7f594..8341b11aa45 100644
--- a/llvm/tools/llvm-c-test/echo.cpp
+++ b/llvm/tools/llvm-c-test/echo.cpp
@@ -643,7 +643,7 @@ struct FunCloner {
Args.push_back(CloneValue(LLVMGetOperand(Src, i)));
LLVMValueRef Fn = CloneValue(LLVMGetCalledValue(Src));
Dst = LLVMBuildCall(Builder, Fn, Args.data(), ArgCount, Name);
- LLVMSetTailCallKind(Dst, LLVMGetTailCallKind(Src));
+ LLVMSetTailCall(Dst, LLVMIsTailCall(Src));
CloneAttrs(Src, Dst);
break;
}
OpenPOWER on IntegriCloud