summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/ObjCARC
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Transforms/ObjCARC')
-rw-r--r--llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp b/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
index 52a31a3c7fb..23e6811f79d 100644
--- a/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
+++ b/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
@@ -687,15 +687,12 @@ void ObjCARCOpt::OptimizeAutoreleaseRVCall(Function &F,
namespace {
Instruction *
-CloneCallInstForBB(Instruction &I, BasicBlock &BB,
+CloneCallInstForBB(CallInst &CI, BasicBlock &BB,
DenseMap<BasicBlock *, ColorVector> &BlockColors) {
- auto *CI = dyn_cast<CallInst>(&I);
- assert(CI && "CloneCallInst must receive a CallInst");
-
SmallVector<OperandBundleDef, 1> OpBundles;
- for (unsigned I = 0, E = CI->getNumOperandBundles(); I != E; ++I) {
- auto Bundle = CI->getOperandBundleAt(I);
- // funclets will be reassociated in the future
+ for (unsigned I = 0, E = CI.getNumOperandBundles(); I != E; ++I) {
+ auto Bundle = CI.getOperandBundleAt(I);
+ // Funclets will be reassociated in the future.
if (Bundle.getTagID() == LLVMContext::OB_funclet)
continue;
OpBundles.emplace_back(Bundle);
@@ -709,7 +706,7 @@ CloneCallInstForBB(Instruction &I, BasicBlock &BB,
OpBundles.emplace_back("funclet", EHPad);
}
- return CallInst::Create(CI, OpBundles);
+ return CallInst::Create(&CI, OpBundles);
}
}
OpenPOWER on IntegriCloud