aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/InlineFunction.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/InlineFunction.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/Utils/InlineFunction.cpp b/llvm/lib/Transforms/Utils/InlineFunction.cpp
index 55ad2b6d..13eb588 100644
--- a/llvm/lib/Transforms/Utils/InlineFunction.cpp
+++ b/llvm/lib/Transforms/Utils/InlineFunction.cpp
@@ -2057,7 +2057,6 @@ void llvm::updateProfileCallee(
static void
inlineRetainOrClaimRVCalls(CallBase &CB, objcarc::ARCInstKind RVCallKind,
const SmallVectorImpl<ReturnInst *> &Returns) {
- Module *Mod = CB.getModule();
assert(objcarc::isRetainOrClaimRV(RVCallKind) && "unexpected ARC function");
bool IsRetainRV = RVCallKind == objcarc::ARCInstKind::RetainRV,
IsUnsafeClaimRV = !IsRetainRV;
@@ -2089,9 +2088,7 @@ inlineRetainOrClaimRVCalls(CallBase &CB, objcarc::ARCInstKind RVCallKind,
// call.
if (IsUnsafeClaimRV) {
Builder.SetInsertPoint(II);
- Function *IFn =
- Intrinsic::getOrInsertDeclaration(Mod, Intrinsic::objc_release);
- Builder.CreateCall(IFn, RetOpnd, "");
+ Builder.CreateIntrinsic(Intrinsic::objc_release, {}, RetOpnd);
}
II->eraseFromParent();
InsertRetainCall = false;
@@ -2125,9 +2122,7 @@ inlineRetainOrClaimRVCalls(CallBase &CB, objcarc::ARCInstKind RVCallKind,
// matching autoreleaseRV or an annotated call in the callee. Emit a call
// to objc_retain.
Builder.SetInsertPoint(RI);
- Function *IFn =
- Intrinsic::getOrInsertDeclaration(Mod, Intrinsic::objc_retain);
- Builder.CreateCall(IFn, RetOpnd, "");
+ Builder.CreateIntrinsic(Intrinsic::objc_retain, {}, RetOpnd);
}
}
}