diff --git a/kotlin-native/llvmCoverageMappingC/src/main/cpp/CoverageMappingC.cpp b/kotlin-native/llvmCoverageMappingC/src/main/cpp/CoverageMappingC.cpp index 52663cb8b32..bf85398a3c8 100644 --- a/kotlin-native/llvmCoverageMappingC/src/main/cpp/CoverageMappingC.cpp +++ b/kotlin-native/llvmCoverageMappingC/src/main/cpp/CoverageMappingC.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -262,4 +263,8 @@ void LLVMKotlinInitializeTargets() { #endif #undef INIT_LLVM_TARGET -} \ No newline at end of file +} + +void LLVMSetNoTailCall(LLVMValueRef Call) { + unwrap(Call)->setTailCallKind(CallInst::TCK_NoTail); +} diff --git a/kotlin-native/llvmCoverageMappingC/src/main/include/CoverageMappingC.h b/kotlin-native/llvmCoverageMappingC/src/main/include/CoverageMappingC.h index 56f9765660f..dfc21b780f7 100644 --- a/kotlin-native/llvmCoverageMappingC/src/main/include/CoverageMappingC.h +++ b/kotlin-native/llvmCoverageMappingC/src/main/include/CoverageMappingC.h @@ -78,6 +78,8 @@ void LLVMAddObjCARCContractPass(LLVMPassManagerRef passManagerRef); void LLVMKotlinInitializeTargets(); +void LLVMSetNoTailCall(LLVMValueRef Call); + # ifdef __cplusplus } # endif