[clang] 67910b2 - [IRBuilder] Use SetInsertPoint without redundant BasicBlock argument (#228476)
via cfe-commits
cfe-commits at lists.llvm.org
Sat Oct 3 04:08:22 PDT 2026
Author: Nikita Popov
Date: 2026-10-03T11:08:13Z
New Revision: 67910b29d26511c68b6d2df956fd9e6a00b9db6b
URL: https://github.com/llvm/llvm-project/commit/67910b29d26511c68b6d2df956fd9e6a00b9db6b
DIFF: https://github.com/llvm/llvm-project/commit/67910b29d26511c68b6d2df956fd9e6a00b9db6b.diff
LOG: [IRBuilder] Use SetInsertPoint without redundant BasicBlock argument (#228476)
Replace calls of `SetInsertPoint(BB, It)` with just
`SetInsertPoint(It)`. In preparation for deprecating that overload.
Added:
Modified:
clang/lib/CodeGen/CGBlocks.cpp
clang/lib/CodeGen/CGGPUBuiltin.cpp
clang/lib/CodeGen/CGObjC.cpp
clang/lib/CodeGen/CGObjCMac.cpp
clang/lib/CodeGen/CGStmt.cpp
clang/lib/CodeGen/CodeGenABITypes.cpp
clang/lib/CodeGen/CodeGenFunction.cpp
llvm/include/llvm/IR/IRBuilder.h
llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
llvm/lib/Analysis/MemoryBuiltins.cpp
llvm/lib/CodeGen/AtomicExpandPass.cpp
llvm/lib/CodeGen/CodeGenPrepare.cpp
llvm/lib/CodeGen/ExpandIRInsts.cpp
llvm/lib/CodeGen/ShadowStackGCLowering.cpp
llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
llvm/lib/IR/Core.cpp
llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
llvm/lib/Target/ARM/MVETailPredication.cpp
llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
llvm/lib/Transforms/Coroutines/CoroFrame.cpp
llvm/lib/Transforms/IPO/Instrumentor.cpp
llvm/lib/Transforms/IPO/OpenMPOpt.cpp
llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp
llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
llvm/lib/Transforms/Scalar/LoopPredication.cpp
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
llvm/lib/Transforms/Scalar/SROA.cpp
llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
llvm/lib/Transforms/Scalar/Scalarizer.cpp
llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
llvm/lib/Transforms/Utils/FlattenCFG.cpp
llvm/lib/Transforms/Utils/IntegerDivision.cpp
llvm/lib/Transforms/Utils/LoopUtils.cpp
llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
llvm/unittests/Analysis/MemorySSATest.cpp
llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
llvm/unittests/IR/DebugInfoTest.cpp
llvm/unittests/IR/IRBuilderTest.cpp
llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
polly/lib/CodeGen/BlockGenerators.cpp
polly/lib/CodeGen/CodeGeneration.cpp
polly/lib/CodeGen/IslExprBuilder.cpp
polly/lib/CodeGen/IslNodeBuilder.cpp
Removed:
################################################################################
diff --git a/clang/lib/CodeGen/CGBlocks.cpp b/clang/lib/CodeGen/CGBlocks.cpp
index d653df2b6c8b9e..26c34925b7a651 100644
--- a/clang/lib/CodeGen/CGBlocks.cpp
+++ b/clang/lib/CodeGen/CGBlocks.cpp
@@ -1588,7 +1588,7 @@ llvm::Function *CodeGenFunction::GenerateBlockFunction(
entry_ptr = entry_ptr->getNextNode()->getIterator();
else
entry_ptr = entry->end();
- Builder.SetInsertPoint(entry, entry_ptr);
+ Builder.SetInsertPoint(entry_ptr);
// Emit debug information for all the DeclRefExprs.
// FIXME: also for 'this'
diff --git a/clang/lib/CodeGen/CGGPUBuiltin.cpp b/clang/lib/CodeGen/CGGPUBuiltin.cpp
index 47cac03b645325..5d397b5a0d9d92 100644
--- a/clang/lib/CodeGen/CGGPUBuiltin.cpp
+++ b/clang/lib/CodeGen/CGGPUBuiltin.cpp
@@ -187,6 +187,6 @@ RValue CodeGenFunction::EmitAMDGPUDevicePrintfCallExpr(const CallExpr *E) {
bool isBuffered = (CGM.getTarget().getTargetOpts().AMDGPUPrintfKindVal ==
clang::TargetOptions::AMDGPUPrintfKind::Buffered);
auto Printf = llvm::emitAMDGPUPrintfCall(IRB, Args, isBuffered);
- Builder.SetInsertPoint(IRB.GetInsertBlock(), IRB.GetInsertPoint());
+ Builder.SetInsertPoint(IRB.GetInsertPoint());
return RValue::get(Printf);
}
diff --git a/clang/lib/CodeGen/CGObjC.cpp b/clang/lib/CodeGen/CGObjC.cpp
index b9cbf593fb1c4b..94a204612dcde1 100644
--- a/clang/lib/CodeGen/CGObjC.cpp
+++ b/clang/lib/CodeGen/CGObjC.cpp
@@ -3035,13 +3035,12 @@ static llvm::Value *emitARCOperationAfterCall(CodeGenFunction &CGF,
value = doFallback(CGF, value);
} else if (llvm::CallInst *call = dyn_cast<llvm::CallInst>(value)) {
// Place the retain immediately following the call.
- CGF.Builder.SetInsertPoint(call->getParent(),
- ++llvm::BasicBlock::iterator(call));
+ CGF.Builder.SetInsertPoint(++llvm::BasicBlock::iterator(call));
value = doAfterCall(CGF, value);
} else if (llvm::InvokeInst *invoke = dyn_cast<llvm::InvokeInst>(value)) {
// Place the retain at the beginning of the normal destination block.
llvm::BasicBlock *BB = invoke->getNormalDest();
- CGF.Builder.SetInsertPoint(BB, BB->begin());
+ CGF.Builder.SetInsertPoint(BB->begin());
value = doAfterCall(CGF, value);
// Bitcasts can arise because of related-result returns. Rewrite
@@ -3049,7 +3048,7 @@ static llvm::Value *emitARCOperationAfterCall(CodeGenFunction &CGF,
} else if (llvm::BitCastInst *bitcast = dyn_cast<llvm::BitCastInst>(value)) {
// Change the insert point to avoid emitting the fall-back call after the
// bitcast.
- CGF.Builder.SetInsertPoint(bitcast->getParent(), bitcast->getIterator());
+ CGF.Builder.SetInsertPoint(bitcast->getIterator());
llvm::Value *operand = bitcast->getOperand(0);
operand = emitARCOperationAfterCall(CGF, operand, doAfterCall, doFallback);
bitcast->setOperand(0, operand);
diff --git a/clang/lib/CodeGen/CGObjCMac.cpp b/clang/lib/CodeGen/CGObjCMac.cpp
index ae0d4ad1869af2..6129a11ac5952c 100644
--- a/clang/lib/CodeGen/CGObjCMac.cpp
+++ b/clang/lib/CodeGen/CGObjCMac.cpp
@@ -5329,7 +5329,7 @@ void FragileHazards::emitHazardsInNewBlocks() {
// call. If the call throws, then this is sufficient to
// guarantee correctness as long as it doesn't also write to any
// locals.
- Builder.SetInsertPoint(&BB, BI);
+ Builder.SetInsertPoint(BI);
emitReadHazard(Builder);
}
}
diff --git a/clang/lib/CodeGen/CGStmt.cpp b/clang/lib/CodeGen/CGStmt.cpp
index 03b6e84a1c136c..05b3693138b0aa 100644
--- a/clang/lib/CodeGen/CGStmt.cpp
+++ b/clang/lib/CodeGen/CGStmt.cpp
@@ -2856,7 +2856,7 @@ void AsmConstraintsInfo::EmitAsmStmt() {
if (IsGCCAsmGoto && !CBRRegResults.empty()) {
for (llvm::BasicBlock *Succ : CBR->getIndirectDests()) {
llvm::IRBuilderBase::InsertPointGuard IPG(Builder);
- Builder.SetInsertPoint(Succ, --(Succ->end()));
+ Builder.SetInsertPoint(--(Succ->end()));
EmitAsmStores(CBRRegResults[Succ]);
}
}
diff --git a/clang/lib/CodeGen/CodeGenABITypes.cpp b/clang/lib/CodeGen/CodeGenABITypes.cpp
index a2f4c6fd9a26a5..7ae842a78a53df 100644
--- a/clang/lib/CodeGen/CodeGenABITypes.cpp
+++ b/clang/lib/CodeGen/CodeGenABITypes.cpp
@@ -130,7 +130,7 @@ llvm::Value *CodeGen::getCXXDestructorImplicitParam(
CGF.CurCodeDecl = D;
CGF.CurFuncDecl = D;
CGF.CurFn = InsertBlock->getParent();
- CGF.Builder.SetInsertPoint(InsertBlock, InsertPoint);
+ CGF.Builder.SetInsertPoint(InsertPoint);
return CGM.getCXXABI().getCXXDestructorImplicitParam(
CGF, D, Type, ForVirtualBase, Delegating);
}
diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp
index 79bcae4c5f7a0d..26d8d73e1eb2f6 100644
--- a/clang/lib/CodeGen/CodeGenFunction.cpp
+++ b/clang/lib/CodeGen/CodeGenFunction.cpp
@@ -3240,7 +3240,7 @@ void CodeGenFunction::EmitAArch64MultiVersionResolver(
}
if (!AArch64CpuInitialized) {
- Builder.SetInsertPoint(CurBlock, CurBlock->begin());
+ Builder.SetInsertPoint(CurBlock->begin());
EmitAArch64CpuInit();
AArch64CpuInitialized = true;
Builder.SetInsertPoint(CurBlock);
diff --git a/llvm/include/llvm/IR/IRBuilder.h b/llvm/include/llvm/IR/IRBuilder.h
index 1860526d257c1d..97658a2c7a8cfb 100644
--- a/llvm/include/llvm/IR/IRBuilder.h
+++ b/llvm/include/llvm/IR/IRBuilder.h
@@ -117,6 +117,8 @@ class IRBuilderBase {
DebugLoc StoredDL;
protected:
+ // TODO: Remove this in favor of InsertPt.getNodeParent(), so they cannot
+ // go out of sync.
BasicBlock *BB;
BasicBlock::iterator InsertPt;
LLVMContext &Context;
@@ -192,11 +194,9 @@ class IRBuilderBase {
/// This specifies that created instructions should be inserted at the
/// specified point.
+ // TODO: Deprecate this method.
void SetInsertPoint(BasicBlock *TheBB, BasicBlock::iterator IP) {
- BB = TheBB;
- InsertPt = IP;
- if (IP != TheBB->end())
- SetCurrentDebugLocation(IP->getStableDebugLoc());
+ SetInsertPoint(IP);
}
/// This specifies that created instructions should be inserted at
@@ -2930,15 +2930,17 @@ class IRBuilder : public IRBuilderBase {
SetInsertPoint(IP);
}
+ // TODO: Remove BasicBlock argument.
IRBuilder(BasicBlock *TheBB, BasicBlock::iterator IP, FolderTy Folder)
: IRBuilderBase(TheBB->getContext(), this->Folder, this->Inserter),
Folder(Folder) {
- SetInsertPoint(TheBB, IP);
+ SetInsertPoint(IP);
}
+ // TODO: Remove BasicBlock argument.
IRBuilder(BasicBlock *TheBB, BasicBlock::iterator IP)
: IRBuilderBase(TheBB->getContext(), this->Folder, this->Inserter) {
- SetInsertPoint(TheBB, IP);
+ SetInsertPoint(IP);
}
/// Avoid copying the full IRBuilder. Prefer using InsertPointGuard
diff --git a/llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h b/llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
index ae2f0f998d85d4..e72235fbf6d42c 100644
--- a/llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
+++ b/llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
@@ -411,9 +411,7 @@ class SCEVExpander : public SCEVUseVisitor<SCEVExpander, Value *> {
Builder.SetInsertPoint(IP);
}
- void setInsertPoint(BasicBlock::iterator IP) {
- Builder.SetInsertPoint(IP->getParent(), IP);
- }
+ void setInsertPoint(BasicBlock::iterator IP) { Builder.SetInsertPoint(IP); }
/// Clear the current insertion point. This is useful if the instruction
/// that had been serving as the insertion point may have been deleted.
diff --git a/llvm/lib/Analysis/MemoryBuiltins.cpp b/llvm/lib/Analysis/MemoryBuiltins.cpp
index 05316cc805bd10..b5ecc05cc33ddb 100644
--- a/llvm/lib/Analysis/MemoryBuiltins.cpp
+++ b/llvm/lib/Analysis/MemoryBuiltins.cpp
@@ -1404,7 +1404,7 @@ SizeOffsetValue ObjectSizeOffsetEvaluator::visitPHINode(PHINode &PHI) {
// Compute offset/size for each PHI incoming pointer.
for (unsigned i = 0, e = PHI.getNumIncomingValues(); i != e; ++i) {
BasicBlock *IncomingBlock = PHI.getIncomingBlock(i);
- Builder.SetInsertPoint(IncomingBlock, IncomingBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(IncomingBlock->getFirstInsertionPt());
SizeOffsetValue EdgeData = compute_(PHI.getIncomingValue(i));
if (!EdgeData.bothKnown()) {
diff --git a/llvm/lib/CodeGen/AtomicExpandPass.cpp b/llvm/lib/CodeGen/AtomicExpandPass.cpp
index a07fb82a88fd15..37144a2cecadc7 100644
--- a/llvm/lib/CodeGen/AtomicExpandPass.cpp
+++ b/llvm/lib/CodeGen/AtomicExpandPass.cpp
@@ -1497,7 +1497,7 @@ Value *AtomicExpandImpl::insertRMWLLSCLoop(
// (50/50) to prevent misleading optimizations.
setExplicitlyUnknownBranchWeightsIfProfiled(*CondBr, DEBUG_TYPE);
- Builder.SetInsertPoint(ExitBB, ExitBB->begin());
+ Builder.SetInsertPoint(ExitBB->begin());
return Loaded;
}
@@ -1737,7 +1737,7 @@ bool AtomicExpandImpl::expandAtomicCmpXchg(AtomicCmpXchgInst *CI) {
// succeeded or not. We expose this to later passes by converting any
// subsequent "icmp eq/ne %loaded, %oldval" into a use of an appropriate
// PHI.
- Builder.SetInsertPoint(ExitBB, ExitBB->begin());
+ Builder.SetInsertPoint(ExitBB->begin());
PHINode *LoadedExit =
Builder.CreatePHI(UnreleasedLoad->getType(), 2, "loaded.exit");
LoadedExit->addIncoming(LoadedTryStore, SuccessBB);
@@ -1750,7 +1750,7 @@ bool AtomicExpandImpl::expandAtomicCmpXchg(AtomicCmpXchgInst *CI) {
// a type wider than the one in the cmpxchg instruction.
Value *LoadedFull = LoadedExit;
- Builder.SetInsertPoint(ExitBB, std::next(Success->getIterator()));
+ Builder.SetInsertPoint(std::next(Success->getIterator()));
Value *Loaded = extractMaskedValue(Builder, LoadedFull, PMV);
// Look for any users of the cmpxchg that are just comparing the loaded value
@@ -1903,7 +1903,7 @@ Value *AtomicExpandImpl::insertRMWCmpXchgLoop(
// to prevent misleading optimizations.
setExplicitlyUnknownBranchWeightsIfProfiled(*CondBr, DEBUG_TYPE);
- Builder.SetInsertPoint(ExitBB, ExitBB->begin());
+ Builder.SetInsertPoint(ExitBB->begin());
return NewLoaded;
}
diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp
index 8ad61486eb8695..0b96c77ff33eaf 100644
--- a/llvm/lib/CodeGen/CodeGenPrepare.cpp
+++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp
@@ -2686,7 +2686,7 @@ static bool despeculateCountZeros(IntrinsicInst *CountZeros,
// Create a PHI in the end block to select either the output of the intrinsic
// or the bit width of the operand.
- Builder.SetInsertPoint(EndBlock, EndBlock->begin());
+ Builder.SetInsertPoint(EndBlock->begin());
PHINode *PN = Builder.CreatePHI(Ty, 2, "ctz");
replaceAllUsesWith(CountZeros, PN, FreshBBs, IsHugeFunc);
Value *BitWidth = Builder.getInt(APInt(SizeInBits, SizeInBits));
@@ -6575,7 +6575,7 @@ bool CodeGenPrepare::optimizeMulWithOverflow(Instruction *I, bool IsSigned,
OldTerminator->eraseFromParent();
// BB overflow.res:
- Builder.SetInsertPoint(OverflowResBB, OverflowResBB->getFirstInsertionPt());
+ Builder.SetInsertPoint(OverflowResBB->getFirstInsertionPt());
// Create PHI nodes to merge results from no.overflow BB and overflow BB to
// replace the extract instructions.
PHINode *OverflowResPHI = Builder.CreatePHI(Ty, 2),
@@ -6602,7 +6602,7 @@ bool CodeGenPrepare::optimizeMulWithOverflow(Instruction *I, bool IsSigned,
I->removeFromParent();
// BB overflow:
I->insertInto(OverflowBB, OverflowBB->end());
- Builder.SetInsertPoint(OverflowBB, OverflowBB->end());
+ Builder.SetInsertPoint(OverflowBB->end());
Value *MulOverflow = Builder.CreateExtractValue(I, {0}, "mul.overflow");
Value *OverflowFlag = Builder.CreateExtractValue(I, {1}, "overflow.flag");
Builder.CreateBr(OverflowResBB);
diff --git a/llvm/lib/CodeGen/ExpandIRInsts.cpp b/llvm/lib/CodeGen/ExpandIRInsts.cpp
index 5ed6b10081c738..9f14696873bd83 100644
--- a/llvm/lib/CodeGen/ExpandIRInsts.cpp
+++ b/llvm/lib/CodeGen/ExpandIRInsts.cpp
@@ -792,7 +792,7 @@ static void expandFPToI(Instruction *FPToI, bool IsSaturating, bool IsSigned) {
Builder.CreateBr(End);
// cleanup:
- Builder.SetInsertPoint(End, End->begin());
+ Builder.SetInsertPoint(End->begin());
PHINode *Retval0 = Builder.CreatePHI(FPToI->getType(), 3 + IsSaturating);
if (IsSaturating)
@@ -1217,7 +1217,7 @@ static void expandIToFP(Instruction *IToFP) {
Builder.CreateBr(End);
// return:
- Builder.SetInsertPoint(End, End->begin());
+ Builder.SetInsertPoint(End->begin());
PHINode *Retval0 = Builder.CreatePHI(IToFP->getType(), 2);
Retval0->addIncoming(A4, IfEnd26);
Retval0->addIncoming(ConstantFP::getZero(IToFP->getType(), false), Entry);
diff --git a/llvm/lib/CodeGen/ShadowStackGCLowering.cpp b/llvm/lib/CodeGen/ShadowStackGCLowering.cpp
index f687902d6d06c8..993b18ce5bcc19 100644
--- a/llvm/lib/CodeGen/ShadowStackGCLowering.cpp
+++ b/llvm/lib/CodeGen/ShadowStackGCLowering.cpp
@@ -389,7 +389,7 @@ bool ShadowStackGCLoweringImpl::runOnFunction(Function &F,
// shadow stack.
while (isa<StoreInst>(IP))
++IP;
- AtEntry.SetInsertPoint(IP->getParent(), IP);
+ AtEntry.SetInsertPoint(IP);
// Push the entry onto the shadow stack.
// Next pointer is at offset 0, so it's just the frame pointer
diff --git a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
index 2c60bf3d67a9cd..4e7f22434c95df 100644
--- a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+++ b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
@@ -1674,7 +1674,7 @@ Error OpenMPIRBuilder::emitCancelationCheckImpl(
Builder.CreateBr(*FiniBBOrErr);
// The continuation block is where code generation continues.
- Builder.SetInsertPoint(NonCancellationBlock, NonCancellationBlock->begin());
+ Builder.SetInsertPoint(NonCancellationBlock->begin());
return Error::success();
}
@@ -1788,7 +1788,7 @@ static void targetParallelCallback(
// Add alloca for kernel args
OpenMPIRBuilder ::InsertPointTy CurrentIP = Builder.saveIP();
- Builder.SetInsertPoint(OuterAllocaBB, OuterAllocaBB->getFirstInsertionPt());
+ Builder.SetInsertPoint(OuterAllocaBB->getFirstInsertionPt());
AllocaInst *ArgsAlloca =
Builder.CreateAlloca(ArrayType::get(PtrTy, NumCapturedVars));
Value *Args = ArgsAlloca;
@@ -2202,8 +2202,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createParallel(
// Store to stack at end of the block that currently branches to the entry
// block of the to-be-outlined region.
- Builder.SetInsertPoint(InsertBB,
- InsertBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(InsertBB->getTerminator()->getIterator());
Builder.CreateStore(&V, Ptr);
// Load back next to allocations in the to-be-outlined region.
@@ -2457,7 +2456,7 @@ void OpenMPIRBuilder::createTaskwait(const LocationDescription &Loc,
IRBuilderBase::InsertPointGuard IPGuard(Builder);
BasicBlock &entryBB =
Builder.GetInsertBlock()->getParent()->getEntryBlock();
- Builder.SetInsertPoint(&entryBB, entryBB.getFirstInsertionPt());
+ Builder.SetInsertPoint(entryBB.getFirstInsertionPt());
DepArray = Builder.CreateAlloca(DepArrayTy, nullptr, ".dep.arr.addr");
}
@@ -2764,7 +2763,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createTaskloop(
StaleCI->eraseFromParent();
- Builder.SetInsertPoint(TaskloopAllocaBB, TaskloopAllocaBB->begin());
+ Builder.SetInsertPoint(TaskloopAllocaBB->begin());
LoadInst *SharedsOutlined =
Builder.CreateLoad(VoidPtr, OutlinedFn.getArg(1));
@@ -2829,8 +2828,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createTaskloop(
// set the trip count in the CLI
CLI->setTripCount(CastedTripCount);
- Builder.SetInsertPoint(CLI->getBody(),
- CLI->getBody()->getFirstInsertionPt());
+ Builder.SetInsertPoint(CLI->getBody()->getFirstInsertionPt());
if (NumOfCollapseLoops > 1) {
llvm::SmallVector<User *> UsersToReplace;
@@ -2895,7 +2893,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createTaskloop(
};
addOutlineInfo(std::move(OI));
- Builder.SetInsertPoint(TaskloopExitBB, TaskloopExitBB->begin());
+ Builder.SetInsertPoint(TaskloopExitBB->begin());
return Builder.saveIP();
}
@@ -3181,7 +3179,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createTask(
StaleCI->eraseFromParent();
- Builder.SetInsertPoint(TaskAllocaBB, TaskAllocaBB->begin());
+ Builder.SetInsertPoint(TaskAllocaBB->begin());
if (HasShareds) {
LoadInst *Shareds = Builder.CreateLoad(VoidPtr, OutlinedFn.getArg(1));
OutlinedFn.getArg(1)->replaceUsesWithIf(
@@ -3197,7 +3195,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createTask(
};
addOutlineInfo(std::move(OI));
- Builder.SetInsertPoint(TaskExitBB, TaskExitBB->begin());
+ Builder.SetInsertPoint(TaskExitBB->begin());
return Builder.saveIP();
}
@@ -4828,7 +4826,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createReductionsGPU(
BasicBlock *InsertBlock = Loc.IP.getNodeParent();
ContinuationBlock = InsertBlock->splitBasicBlock(Loc.IP, "reduce.finalize");
InsertBlock->getTerminator()->eraseFromParent();
- Builder.SetInsertPoint(InsertBlock, InsertBlock->end());
+ Builder.SetInsertPoint(InsertBlock->end());
}
Function *CurFunc = Builder.GetInsertBlock()->getParent();
@@ -5279,7 +5277,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createReductions(
Builder.SetInsertPoint(AllocaIP.getNodeParent()->getTerminator());
Value *RedArray = Builder.CreateAlloca(RedArrayTy, nullptr, "red.array");
- Builder.SetInsertPoint(InsertBlock, InsertBlock->end());
+ Builder.SetInsertPoint(InsertBlock->end());
// Emitting the alloca moved the insertion point into the alloca block and
// can clear the debug loc. Restore back to Loc.DL.
Builder.SetCurrentDebugLocation(Loc.DL);
@@ -6206,16 +6204,14 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::applyStaticWorkshareLoop(
// the latch block.
CLI->mapIndVar([&](Instruction *OldIV) -> Value * {
- Builder.SetInsertPoint(CLI->getBody(),
- CLI->getBody()->getFirstInsertionPt());
+ Builder.SetInsertPoint(CLI->getBody()->getFirstInsertionPt());
Builder.SetCurrentDebugLocation(DL);
return Builder.CreateAdd(OldIV, LowerBound, "", /*HasNUW=*/false,
/*HasNSW=*/Config.hasNoSignedWrap());
});
// In the "exit" block, call the "fini" function.
- Builder.SetInsertPoint(CLI->getExit(),
- CLI->getExit()->getTerminator()->getIterator());
+ Builder.SetInsertPoint(CLI->getExit()->getTerminator()->getIterator());
createRuntimeFunctionCall(StaticFini, {SrcLoc, ThreadNum});
// Add the barrier if requested.
@@ -6448,7 +6444,7 @@ OpenMPIRBuilder::applyStaticChunkedWorkshareLoop(
});
// In the "exit" block, call the "fini" function.
- Builder.SetInsertPoint(DispatchExit, DispatchExit->getFirstInsertionPt());
+ Builder.SetInsertPoint(DispatchExit->getFirstInsertionPt());
createRuntimeFunctionCall(StaticFini, {SrcLoc, ThreadNum});
// Add the barrier if requested.
@@ -6922,7 +6918,7 @@ OpenMPIRBuilder::applyDynamicWorkshareLoop(DebugLoc DL, CanonicalLoopInfo *CLI,
PreHeader->getContext(), Twine(PreHeader->getName()) + ".outer.cond",
PreHeader->getParent());
// This needs to be 32-bit always, so can't use the IVTy Zero above.
- Builder.SetInsertPoint(OuterCond, OuterCond->getFirstInsertionPt());
+ Builder.SetInsertPoint(OuterCond->getFirstInsertionPt());
Value *Res = createRuntimeFunctionCall(
DynamicNext,
{SrcLoc, ThreadNum, PLastIter, PLowerBound, PUpperBound, PStride});
@@ -6947,7 +6943,7 @@ OpenMPIRBuilder::applyDynamicWorkshareLoop(DebugLoc DL, CanonicalLoopInfo *CLI,
// Modify the inner condition:
// * Use the UpperBound returned from the DynamicNext call.
// * jump to the loop outer loop when done with one of the inner loops.
- Builder.SetInsertPoint(Cond, Cond->getFirstInsertionPt());
+ Builder.SetInsertPoint(Cond->getFirstInsertionPt());
UpperBound = Builder.CreateLoad(IVTy, PUpperBound, "ub");
Instruction *Comp = &*Builder.GetInsertPoint();
auto *CI = cast<CmpInst>(Comp);
@@ -11857,7 +11853,7 @@ OpenMPIRBuilder::InsertPointTy OpenMPIRBuilder::createAtomicCompare(
Builder.CreateBr(ExitBB);
// ExitBB: merge results from NaN, Zero, and Normal paths.
- Builder.SetInsertPoint(ExitBB, ExitBB->begin());
+ Builder.SetInsertPoint(ExitBB->begin());
PHINode *OldIntPHI =
Builder.CreatePHI(IntCastTy, 3, X.Var->getName() + ".atomic.old");
OldIntPHI->addIncoming(XCurr, NaNBB);
@@ -12101,7 +12097,7 @@ OpenMPIRBuilder::createTeams(const LocationDescription &Loc,
BasicBlock &OuterAllocaBB = CurrentFunction->getEntryBlock();
if (&OuterAllocaBB == Builder.GetInsertBlock()) {
BasicBlock *BodyBB = splitBB(Builder, /*CreateBranch=*/true, "teams.entry");
- Builder.SetInsertPoint(BodyBB, BodyBB->begin());
+ Builder.SetInsertPoint(BodyBB->begin());
}
// The current basic block is split into four basic blocks. After outlining,
@@ -12253,7 +12249,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createDistribute(
if (OuterAllocaBB == Builder.GetInsertBlock()) {
BasicBlock *BodyBB =
splitBB(Builder, /*CreateBranch=*/true, "distribute.entry");
- Builder.SetInsertPoint(BodyBB, BodyBB->begin());
+ Builder.SetInsertPoint(BodyBB->begin());
}
BasicBlock *ExitBB =
splitBB(Builder, /*CreateBranch=*/true, "distribute.exit");
@@ -12912,7 +12908,7 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createIteratorLoop(
}
// Link After -> ContBB
- Builder.SetInsertPoint(CLI->getAfter(), CLI->getAfter()->begin());
+ Builder.SetInsertPoint(CLI->getAfter()->begin());
if (!CLI->getAfter()->hasTerminator())
Builder.CreateBr(ContBB);
diff --git a/llvm/lib/IR/Core.cpp b/llvm/lib/IR/Core.cpp
index 93b03bf107516b..0025b7b78ccc7b 100644
--- a/llvm/lib/IR/Core.cpp
+++ b/llvm/lib/IR/Core.cpp
@@ -3448,7 +3448,7 @@ static void LLVMPositionBuilderImpl(IRBuilder<> *Builder, BasicBlock *Block,
Instruction *Instr, bool BeforeDbgRecords) {
BasicBlock::iterator I = Instr ? Instr->getIterator() : Block->end();
I.setHeadBit(BeforeDbgRecords);
- Builder->SetInsertPoint(Block, I);
+ Builder->SetInsertPoint(I);
}
void LLVMPositionBuilder(LLVMBuilderRef Builder, LLVMBasicBlockRef Block,
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp b/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
index aa822c13dd8fe1..4e1c8da419fd27 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
@@ -985,7 +985,7 @@ void AMDGPUAtomicOptimizerImpl::optimizeAtomic(Instruction &I,
if (IsPixelShader) {
// Need a final PHI to reconverge to above the helper lane branch mask.
- B.SetInsertPoint(PixelExitBB, PixelExitBB->getFirstNonPHIIt());
+ B.SetInsertPoint(PixelExitBB->getFirstNonPHIIt());
PHINode *const PHI = B.CreatePHI(Ty, 2);
PHI->addIncoming(PoisonValue::get(Ty), PixelEntryBB);
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp b/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
index 823612d5d75059..0c882c704560a2 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
@@ -836,7 +836,7 @@ void AMDGPUSwLowerLDS::lowerKernelLDSAccesses(Function *Func,
if (isa<ConstantInt>(AI->getArraySize()))
AI->moveBefore(*WIdBlock, WIdBlock->end());
- IRB.SetInsertPoint(WIdBlock, WIdBlock->end());
+ IRB.SetInsertPoint(WIdBlock->end());
DebugLoc FirstDL =
getOrCreateDebugLoc(&*PrevEntryBlock->begin(), Func->getSubprogram());
IRB.SetCurrentDebugLocation(FirstDL);
@@ -852,7 +852,7 @@ void AMDGPUSwLowerLDS::lowerKernelLDSAccesses(Function *Func,
IRB.CreateCondBr(WIdzCond, MallocBlock, PrevEntryBlock);
// Malloc block
- IRB.SetInsertPoint(MallocBlock, MallocBlock->begin());
+ IRB.SetInsertPoint(MallocBlock->begin());
// If Dynamic LDS globals are accessed by the kernel,
// Get the size of dyn lds from hidden dyn_lds_size kernel arg.
@@ -941,7 +941,7 @@ void AMDGPUSwLowerLDS::lowerKernelLDSAccesses(Function *Func,
// Create wave-group barrier at the starting of Previous entry block
Type *Int1Ty = IRB.getInt1Ty();
- IRB.SetInsertPoint(PrevEntryBlock, PrevEntryBlock->begin());
+ IRB.SetInsertPoint(PrevEntryBlock->begin());
auto *XYZCondPhi = IRB.CreatePHI(Int1Ty, 2, "xyzCond");
XYZCondPhi->addIncoming(IRB.getInt1(0), WIdBlock);
XYZCondPhi->addIncoming(IRB.getInt1(1), MallocBlock);
@@ -967,19 +967,19 @@ void AMDGPUSwLowerLDS::lowerKernelLDSAccesses(Function *Func,
if (!BB.empty()) {
if (ReturnInst *RI = dyn_cast<ReturnInst>(&BB.back())) {
RI->eraseFromParent();
- IRB.SetInsertPoint(&BB, BB.end());
+ IRB.SetInsertPoint(BB.end());
IRB.CreateBr(CondFreeBlock);
}
}
}
// Cond Free Block
- IRB.SetInsertPoint(CondFreeBlock, CondFreeBlock->begin());
+ IRB.SetInsertPoint(CondFreeBlock->begin());
IRB.CreateIntrinsic(Intrinsic::amdgcn_s_barrier, {});
IRB.CreateCondBr(XYZCondPhi, FreeBlock, EndBlock);
// Free Block
- IRB.SetInsertPoint(FreeBlock, FreeBlock->begin());
+ IRB.SetInsertPoint(FreeBlock->begin());
// Free the previously allocate device global memory.
FunctionCallee AsanFreeFunc = M.getOrInsertFunction(
@@ -995,7 +995,7 @@ void AMDGPUSwLowerLDS::lowerKernelLDSAccesses(Function *Func,
IRB.CreateBr(EndBlock);
// End Block
- IRB.SetInsertPoint(EndBlock, EndBlock->begin());
+ IRB.SetInsertPoint(EndBlock->begin());
IRB.CreateRetVoid();
// Update the DomTree with corresponding links to basic blocks.
DTU.applyUpdates({{DominatorTree::Insert, WIdBlock, MallocBlock},
diff --git a/llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp b/llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
index 751ab86853be36..251cee3438e193 100644
--- a/llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
+++ b/llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
@@ -376,7 +376,7 @@ static bool tryInterleave(Instruction *Start,
for (Instruction *I : Truncs) {
LLVM_DEBUG(dbgs() << "Replacing trunc " << *I << "\n");
- Builder.SetInsertPoint(I->getParent(), ++I->getIterator());
+ Builder.SetInsertPoint(++I->getIterator());
Value *Shuf = Builder.CreateShuffleVector(I, TruncMask);
I->replaceAllUsesWith(Shuf);
cast<Instruction>(Shuf)->setOperand(0, I);
diff --git a/llvm/lib/Target/ARM/MVETailPredication.cpp b/llvm/lib/Target/ARM/MVETailPredication.cpp
index 9e3346efbaeb56..ca9134b746dbb3 100644
--- a/llvm/lib/Target/ARM/MVETailPredication.cpp
+++ b/llvm/lib/Target/ARM/MVETailPredication.cpp
@@ -379,7 +379,7 @@ void MVETailPredication::InsertVCTPIntrinsic(IntrinsicInst *ActiveLaneMask,
cast<FixedVectorType>(ActiveLaneMask->getType())->getNumElements();
// Insert a phi to count the number of elements processed by the loop.
- Builder.SetInsertPoint(L->getHeader(), L->getHeader()->getFirstNonPHIIt());
+ Builder.SetInsertPoint(L->getHeader()->getFirstNonPHIIt());
PHINode *Processed = Builder.CreatePHI(Ty, 2);
Processed->addIncoming(Start, L->getLoopPreheader());
diff --git a/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp b/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
index 7e02e532392646..15a7eedafc8050 100644
--- a/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
@@ -1442,7 +1442,7 @@ bool PolynomialMultiplyRecognize::convertShiftsToLeft(BasicBlock *LoopB,
// them right after the loop exit.
// Take advantage of the loop-closed SSA form, which has all the post-
// loop values in phi nodes.
- IRB.SetInsertPoint(ExitB, ExitB->getFirstInsertionPt());
+ IRB.SetInsertPoint(ExitB->getFirstInsertionPt());
for (auto P = ExitB->begin(), Q = ExitB->end(); P != Q; ++P) {
if (!isa<PHINode>(P))
break;
diff --git a/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp b/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
index c4cb3a7bf50c17..72b11f35c43001 100644
--- a/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
@@ -567,7 +567,7 @@ void HexagonVectorLoopCarriedReuse::reuseValue() {
}
BasicBlock *BB = BEInst->getParent();
IRBuilder<> IRB(BB);
- IRB.SetInsertPoint(BB, BB->getFirstNonPHIIt());
+ IRB.SetInsertPoint(BB->getFirstNonPHIIt());
Value *BEVal = BEInst;
PHINode *NewPhi;
for (int i = Iterations-1; i >=0 ; --i) {
diff --git a/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp b/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
index 6fe7688224d390..1652fa42ec89d9 100644
--- a/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
+++ b/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
@@ -108,7 +108,7 @@ class PPCBoolRetToInt : public FunctionPass {
if (auto *I = dyn_cast<Instruction>(V))
IRB.SetInsertPoint(I->getNextNode());
else
- IRB.SetInsertPoint(&Func->getEntryBlock(), Func->getEntryBlock().begin());
+ IRB.SetInsertPoint(Func->getEntryBlock().begin());
return IRB.CreateZExt(V, IntTy);
}
diff --git a/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp b/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
index 987ec7bedaa1f4..193503b8a30dc9 100644
--- a/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
+++ b/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
@@ -3795,7 +3795,7 @@ bool SPIRVEmitIntrinsicsImpl::runOnFunction(Function &Func) {
I->eraseFromParent();
}
- B.SetInsertPoint(&Func.getEntryBlock(), Func.getEntryBlock().begin());
+ B.SetInsertPoint(Func.getEntryBlock().begin());
for (auto &GV : Func.getParent()->globals())
processGlobalValue(GV, B);
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
index 42918e39fae910..c885f3ecc443b1 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
@@ -1377,7 +1377,7 @@ bool WebAssemblyLowerEmscriptenEHSjLjImpl::runSjLjOnFunction(Function &F) {
// Add a phi to the tail, which will be the output of setjmp, which
// indicates if this is the first call or a longjmp back. The phi directly
// uses the right value based on where we arrive from
- IRB.SetInsertPoint(Tail, Tail->getFirstNonPHIIt());
+ IRB.SetInsertPoint(Tail->getFirstNonPHIIt());
PHINode *SetjmpRet = IRB.CreatePHI(IRB.getInt32Ty(), 2, "setjmp.ret");
// setjmp initial call returns 0
diff --git a/llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp b/llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
index 5e1a30a37f1a8a..24df2293160c1c 100644
--- a/llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
+++ b/llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
@@ -511,7 +511,7 @@ X86LowerAMXIntrinsics::lowerTileDP(Instruction *TileDP) {
KDWord, C, A, B);
// we cannot assume there always be bitcast after tiledpbssd. So we need to
// insert one bitcast as required
- Builder.SetInsertPoint(End, End->getFirstNonPHIIt());
+ Builder.SetInsertPoint(End->getFirstNonPHIIt());
Value *ResAMX =
Builder.CreateBitCast(ResVec, Type::getX86_AMXTy(Builder.getContext()));
// Delete TileDP intrinsic and do some clean-up.
@@ -555,7 +555,7 @@ bool X86LowerAMXIntrinsics::lowerTileLoadStore(Instruction *TileLoadStore) {
if (IsTileLoad) {
// we cannot assume there always be bitcast after tileload. So we need to
// insert one bitcast as required
- Builder.SetInsertPoint(End, End->getFirstNonPHIIt());
+ Builder.SetInsertPoint(End->getFirstNonPHIIt());
Value *ResAMX =
Builder.CreateBitCast(ResVec, Type::getX86_AMXTy(Builder.getContext()));
// Delete tileloadd6 intrinsic and do some clean-up
diff --git a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
index ec65af3449cae5..e162be1dba42da 100644
--- a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
+++ b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
@@ -1098,8 +1098,7 @@ static void insertSpills(const FrameDataInfo &FrameData, coro::Shape &Shape) {
// reference provided with the frame GEP.
if (CurrentBlock != U->getParent()) {
CurrentBlock = U->getParent();
- Builder.SetInsertPoint(CurrentBlock,
- CurrentBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(CurrentBlock->getFirstInsertionPt());
auto *GEP = createGEPToFramePointer(FrameData, Builder, Shape, E.first);
GEP->setName(E.first->getName() + Twine(".reload.addr"));
@@ -1194,7 +1193,7 @@ static void insertSpills(const FrameDataInfo &FrameData, coro::Shape &Shape) {
if (Shape.ABI == coro::ABI::Retcon || Shape.ABI == coro::ABI::RetconOnce ||
Shape.ABI == coro::ABI::Async) {
// If we found any allocas, replace all of their remaining uses with Geps.
- Builder.SetInsertPoint(SpillBlock, SpillBlock->begin());
+ Builder.SetInsertPoint(SpillBlock->begin());
for (const auto &P : FrameData.Allocas) {
AllocaInst *Alloca = P.Alloca;
auto *G = createGEPToFramePointer(FrameData, Builder, Shape, Alloca);
@@ -1220,8 +1219,7 @@ static void insertSpills(const FrameDataInfo &FrameData, coro::Shape &Shape) {
// dbg.declares and dbg.values with the reload from the frame.
// Note: We cannot replace the alloca with GEP instructions indiscriminately,
// as some of the uses may not be dominated by CoroBegin.
- Builder.SetInsertPoint(Shape.AllocaSpillBlock,
- Shape.AllocaSpillBlock->begin());
+ Builder.SetInsertPoint(Shape.AllocaSpillBlock->begin());
SmallVector<Instruction *, 4> UsersToUpdate;
for (const auto &A : FrameData.Allocas) {
AllocaInst *Alloca = A.Alloca;
@@ -1837,7 +1835,7 @@ salvageDebugInfoImpl(SmallDenseMap<Argument *, AllocaInst *, 4> &ArgToAllocaMap,
auto InsertPt = F->getEntryBlock().getFirstInsertionPt();
while (isa<IntrinsicInst>(InsertPt))
++InsertPt;
- Builder.SetInsertPoint(&F->getEntryBlock(), InsertPt);
+ Builder.SetInsertPoint(InsertPt);
while (auto *Inst = dyn_cast_or_null<Instruction>(Storage)) {
if (auto *LdInst = dyn_cast<LoadInst>(Inst)) {
diff --git a/llvm/lib/Transforms/IPO/Instrumentor.cpp b/llvm/lib/Transforms/IPO/Instrumentor.cpp
index afbfcdb196afb2..59909ee2aac1a0 100644
--- a/llvm/lib/Transforms/IPO/Instrumentor.cpp
+++ b/llvm/lib/Transforms/IPO/Instrumentor.cpp
@@ -432,7 +432,7 @@ bool InstrumentorImpl::instrumentModule() {
IConf.getRTName(Ctor ? "ctor" : "dtor", ""), M);
auto *EntryBB = BasicBlock::Create(IIRB.Ctx, "entry", YtorFn);
- IIRB.IRB.SetInsertPoint(EntryBB, EntryBB->begin());
+ IIRB.IRB.SetInsertPoint(EntryBB->begin());
ensureDbgLoc(IIRB.IRB);
IIRB.IRB.CreateRetVoid();
diff --git a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp
index 6f270eb27fc0b3..8b5a91a033bb33 100644
--- a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp
+++ b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp
@@ -1794,8 +1794,7 @@ struct OpenMPOpt {
auto &IRBuilder = OMPInfoCache.OMPBuilder;
Function *F = RuntimeCall.getCaller();
BasicBlock &Entry = F->getEntryBlock();
- IRBuilder.Builder.SetInsertPoint(&Entry,
- Entry.getFirstNonPHIOrDbgOrAlloca());
+ IRBuilder.Builder.SetInsertPoint(Entry.getFirstNonPHIOrDbgOrAlloca());
Value *Handle = IRBuilder.Builder.CreateAlloca(
IRBuilder.AsyncInfo, /*ArraySize=*/nullptr, "handle");
Handle =
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
index 60412f867fb69f..6242119aa5c3ba 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
@@ -4980,7 +4980,7 @@ Value *InstCombinerImpl::foldXorOfICmps(ICmpInst *LHS, ICmpInst *RHS,
// users are freely-invertible, so that 'not' *will* get folded away.
BuilderTy::InsertPointGuard Guard(Builder);
// Set insertion point to right after the Y.
- Builder.SetInsertPoint(Y->getParent(), ++(Y->getIterator()));
+ Builder.SetInsertPoint(++(Y->getIterator()));
Value *NotY = Builder.CreateNot(Y, Y->getName() + ".not");
// Replace all uses of Y (excluding the one in NotY!) with NotY.
Worklist.pushUsersToWorkList(*Y);
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
index 071946ea13f985..cab9b9f65b10ff 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -1950,7 +1950,7 @@ static Value *foldSinAndCosToSinCos(IntrinsicInst *II, IRBuilderBase &B,
B.SetInsertPoint(*InsertPt);
} else {
BasicBlock &EntryBB = II->getFunction()->getEntryBlock();
- B.SetInsertPoint(&EntryBB, EntryBB.begin());
+ B.SetInsertPoint(EntryBB.begin());
}
Function *SinCosFunc = Intrinsic::getOrInsertDeclaration(
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
index 9cc0bef2fb06a0..289e074d289c90 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
@@ -488,7 +488,7 @@ static void setInsertionPoint(IRBuilder<> &Builder, Value *V,
bool Before = true) {
if (auto *PHI = dyn_cast<PHINode>(V)) {
BasicBlock *Parent = PHI->getParent();
- Builder.SetInsertPoint(Parent, Parent->getFirstInsertionPt());
+ Builder.SetInsertPoint(Parent->getFirstInsertionPt());
return;
}
if (auto *I = dyn_cast<Instruction>(V)) {
@@ -500,7 +500,7 @@ static void setInsertionPoint(IRBuilder<> &Builder, Value *V,
if (auto *A = dyn_cast<Argument>(V)) {
// Set the insertion point in the entry block.
BasicBlock &Entry = A->getParent()->getEntryBlock();
- Builder.SetInsertPoint(&Entry, Entry.getFirstInsertionPt());
+ Builder.SetInsertPoint(Entry.getFirstInsertionPt());
return;
}
// Otherwise, this is a constant and we don't need to set a new
diff --git a/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp b/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
index f61defa969b189..a6aa688ca5843f 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
@@ -1335,7 +1335,7 @@ static Value *simplifyUsingControlFlow(InstCombiner &Self, PHINode &PN,
// sinking.
auto InsertPt = BB->getFirstInsertionPt();
if (InsertPt != BB->end()) {
- Self.Builder.SetInsertPoint(&*BB, InsertPt);
+ Self.Builder.SetInsertPoint(InsertPt);
return Self.Builder.CreateNot(Cond);
}
@@ -1381,7 +1381,7 @@ static Value *foldDependentIVs(PHINode &PN, IRBuilderBase &Builder) {
if (Iv2Start != Identity)
return nullptr;
- Builder.SetInsertPoint(&*BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
if (!BO) {
auto *GEP = cast<GEPOperator>(IvNext);
return Builder.CreateGEP(GEP->getSourceElementType(), Start, Iv2, "",
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp b/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
index 4a9c66b1bad439..e86a51ee15b16a 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
@@ -3210,7 +3210,7 @@ static Instruction *foldSelectToPhiImpl(SelectInst &Sel, BasicBlock *BB,
return nullptr;
}
- Builder.SetInsertPoint(BB, BB->begin());
+ Builder.SetInsertPoint(BB->begin());
auto *PN = Builder.CreatePHI(Sel.getType(), Inputs.size());
for (auto *Pred : predecessors(BB))
PN->addIncoming(Inputs[Pred], Pred);
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp b/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
index 133aa4253d50d0..3f3a27397250a7 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
@@ -1312,7 +1312,7 @@ Instruction *InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse(
// Note that the same block can be a predecessor more than once,
// and we need to preserve that invariant for the PHI node.
BuilderTy::InsertPointGuard Guard(Builder);
- Builder.SetInsertPoint(UseBB, UseBB->getFirstNonPHIIt());
+ Builder.SetInsertPoint(UseBB->getFirstNonPHIIt());
auto *PHI =
Builder.CreatePHI(AggTy, Preds.size(), OrigIVI.getName() + ".merged");
for (BasicBlock *Pred : Preds)
diff --git a/llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp b/llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp
index e05a5d2e9e5855..2a3f5267e409b5 100644
--- a/llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp
+++ b/llvm/lib/Transforms/Scalar/ExpandMemCmp.cpp
@@ -710,7 +710,7 @@ void MemCmpExpansion::emitMemCmpResultBlock() {
// need to be calculated and can simply return 1.
if (IsUsedForZeroCmp) {
BasicBlock::iterator InsertPt = ResBlock.BB->getFirstInsertionPt();
- Builder.SetInsertPoint(ResBlock.BB, InsertPt);
+ Builder.SetInsertPoint(InsertPt);
Value *Res = ConstantInt::get(Type::getInt32Ty(CI->getContext()), 1);
PhiRes->addIncoming(Res, ResBlock.BB);
Builder.CreateBr(EndBlock);
@@ -719,7 +719,7 @@ void MemCmpExpansion::emitMemCmpResultBlock() {
return;
}
BasicBlock::iterator InsertPt = ResBlock.BB->getFirstInsertionPt();
- Builder.SetInsertPoint(ResBlock.BB, InsertPt);
+ Builder.SetInsertPoint(InsertPt);
Value *Cmp = Builder.CreateICmp(ICmpInst::ICMP_ULT, ResBlock.PhiSrc1,
ResBlock.PhiSrc2);
@@ -744,7 +744,7 @@ void MemCmpExpansion::setupResultBlockPHINodes() {
}
void MemCmpExpansion::setupEndBlockPHINodes() {
- Builder.SetInsertPoint(EndBlock, EndBlock->begin());
+ Builder.SetInsertPoint(EndBlock->begin());
PhiRes = Builder.CreatePHI(Type::getInt32Ty(CI->getContext()), 2, "phi.res");
}
diff --git a/llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp b/llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
index 6c5f6951a662e0..2f40cbd2d8be32 100644
--- a/llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
@@ -438,7 +438,7 @@ static bool splitLoopBound(Loop &L, DominatorTree &DT, LoopInfo &LI,
ClonedSplitCandidateBI->setCondition(ConstantInt::getFalse(Context));
// Update phi node in exit block of post-loop.
- Builder.SetInsertPoint(PostLoopPreHeader, PostLoopPreHeader->begin());
+ Builder.SetInsertPoint(PostLoopPreHeader->begin());
for (PHINode &PN : PostLoop->getExitBlock()->phis()) {
for (auto i : seq<int>(0, PN.getNumOperands())) {
// Check incoming block is pre-loop's exiting block.
diff --git a/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp b/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
index b3f095f5ba80d6..7d3e10ffb667f7 100644
--- a/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
@@ -3492,7 +3492,7 @@ bool LoopIdiomRecognize::recognizeShiftUntilBitTest() {
// Step 4: Rewrite the loop into a countable form, with canonical IV.
// The new canonical induction variable.
- Builder.SetInsertPoint(LoopHeaderBB, LoopHeaderBB->begin());
+ Builder.SetInsertPoint(LoopHeaderBB->begin());
auto *IV = Builder.CreatePHI(Ty, 2, CurLoop->getName() + ".iv");
// The induction itself.
@@ -3827,11 +3827,11 @@ bool LoopIdiomRecognize::recognizeShiftUntilZero() {
// Step 3: Rewrite the loop into a countable form, with canonical IV.
// The new canonical induction variable.
- Builder.SetInsertPoint(LoopHeaderBB, LoopHeaderBB->begin());
+ Builder.SetInsertPoint(LoopHeaderBB->begin());
auto *CIV = Builder.CreatePHI(Ty, 2, CurLoop->getName() + ".iv");
// The induction itself.
- Builder.SetInsertPoint(LoopHeaderBB, LoopHeaderBB->getFirstNonPHIIt());
+ Builder.SetInsertPoint(LoopHeaderBB->getFirstNonPHIIt());
auto *CIVNext =
Builder.CreateAdd(CIV, ConstantInt::get(Ty, 1), CIV->getName() + ".next",
/*HasNUW=*/true, /*HasNSW=*/Bitwidth != 2);
diff --git a/llvm/lib/Transforms/Scalar/LoopPredication.cpp b/llvm/lib/Transforms/Scalar/LoopPredication.cpp
index 2deaeeb0792e6c..65f2c708871fae 100644
--- a/llvm/lib/Transforms/Scalar/LoopPredication.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopPredication.cpp
@@ -782,7 +782,7 @@ bool LoopPredication::widenWidenableBranchGuardConditions(
BI->setCondition(AllChecks);
if (InsertAssumesOfPredicatedGuardsConditions) {
BasicBlock *IfTrueBB = BI->getSuccessor(0);
- Builder.SetInsertPoint(IfTrueBB, IfTrueBB->getFirstInsertionPt());
+ Builder.SetInsertPoint(IfTrueBB->getFirstInsertionPt());
// If this block has other predecessors, we might not be able to use Cond.
// In this case, create a Phi where every other input is `true` and input
// from guard block is Cond.
diff --git a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
index ea635af81e44e4..4f3b9b748057ba 100644
--- a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
@@ -1956,7 +1956,7 @@ class LowerMatrixIntrinsics {
// condition holds, they alias, otherwise they are guaranteed to not
// overlap.
Check1->getTerminator()->eraseFromParent();
- Builder.SetInsertPoint(Check1, Check1->begin());
+ Builder.SetInsertPoint(Check1->begin());
auto *VT = cast<FixedVectorType>(Load->getType());
// Use an array type for the alloca, to avoid potentially huge alignment
@@ -1975,10 +1975,10 @@ class LowerMatrixIntrinsics {
setExplicitlyUnknownBranchWeightsIfProfiled(*BR2, DEBUG_TYPE);
// Copy load operand to new alloca.
- Builder.SetInsertPoint(Copy, Copy->begin());
+ Builder.SetInsertPoint(Copy->begin());
Builder.CreateMemCpy(Alloca, Alloca->getAlign(), Load->getPointerOperand(),
Load->getAlign(), LoadLoc.Size.getValue());
- Builder.SetInsertPoint(Fusion, Fusion->begin());
+ Builder.SetInsertPoint(Fusion->begin());
PHINode *PHI = Builder.CreatePHI(Load->getPointerOperandType(), 3);
PHI->addIncoming(Load->getPointerOperand(), Check0);
PHI->addIncoming(Load->getPointerOperand(), Check1);
diff --git a/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp b/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
index 6a1b992c42d733..8c89e2d25a35e4 100644
--- a/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
+++ b/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
@@ -73,7 +73,7 @@ static bool optimizeSQRT(CallInst *Call, Function *CalledFunc,
// Create phi that will merge results of either sqrt and replace all uses.
BasicBlock *JoinBB = LibCallTerm->getSuccessor(0);
JoinBB->setName(CurrBB.getName() + ".split");
- Builder.SetInsertPoint(JoinBB, JoinBB->begin());
+ Builder.SetInsertPoint(JoinBB->begin());
PHINode *Phi = Builder.CreatePHI(Ty, 2);
Call->replaceAllUsesWith(Phi);
diff --git a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
index 6ac5637e0c9bdd..8d7160456822d4 100644
--- a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
+++ b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
@@ -1875,7 +1875,7 @@ makeStatepointExplicitImpl(CallBase *Call, /* to replace */
UnwindBlock->getUniquePredecessor() &&
"can't safely insert in this block!");
- Builder.SetInsertPoint(UnwindBlock, UnwindBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(UnwindBlock->getFirstInsertionPt());
Builder.SetCurrentDebugLocation(II->getDebugLoc());
// Attach exceptional gc relocates to the landingpad.
@@ -1890,7 +1890,7 @@ makeStatepointExplicitImpl(CallBase *Call, /* to replace */
NormalDest->getUniquePredecessor() &&
"can't safely insert in this block!");
- Builder.SetInsertPoint(NormalDest, NormalDest->getFirstInsertionPt());
+ Builder.SetInsertPoint(NormalDest->getFirstInsertionPt());
// gc relocates will be generated later as if it were regular call
// statepoint
diff --git a/llvm/lib/Transforms/Scalar/SROA.cpp b/llvm/lib/Transforms/Scalar/SROA.cpp
index 3d90a06667a92f..d1b1a0a2116456 100644
--- a/llvm/lib/Transforms/Scalar/SROA.cpp
+++ b/llvm/lib/Transforms/Scalar/SROA.cpp
@@ -3578,7 +3578,7 @@ class AllocaSliceRewriter : public InstVisitor<AllocaSliceRewriter, bool> {
// after the load, so that variable values referring to the load are
// dominated by it.
LIIt.setHeadBit(true);
- IRB.SetInsertPoint(LI.getParent(), LIIt);
+ IRB.SetInsertPoint(LIIt);
// Create a placeholder value with the same type as LI to use as the
// basis for the new value. This allows us to replace the uses of LI with
// the computed value, and then replace the placeholder with LI, leaving
@@ -4215,8 +4215,7 @@ class AllocaSliceRewriter : public InstVisitor<AllocaSliceRewriter, bool> {
// dominate the PHI.
IRBuilderBase::InsertPointGuard Guard(IRB);
if (isa<PHINode>(OldPtr))
- IRB.SetInsertPoint(OldPtr->getParent(),
- OldPtr->getParent()->getFirstInsertionPt());
+ IRB.SetInsertPoint(OldPtr->getParent()->getFirstInsertionPt());
else
IRB.SetInsertPoint(OldPtr);
IRB.SetCurrentDebugLocation(OldPtr->getDebugLoc());
diff --git a/llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp b/llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
index 664031a581ed08..bfbfb4b7572c35 100644
--- a/llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
+++ b/llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
@@ -291,7 +291,7 @@ static void scalarizeMaskedLoad(const DataLayout &DL, bool HasBranchDivergence,
std::nullopt);
BasicBlock *PostLoad = ThenTerm->getSuccessor(0);
- Builder.SetInsertPoint(PostLoad, PostLoad->begin());
+ Builder.SetInsertPoint(PostLoad->begin());
PHINode *Phi = Builder.CreatePHI(VecType, /*NumReservedValues=*/2);
Phi->addIncoming(Load, CondBlock);
Phi->addIncoming(Src0, IfBlock);
@@ -363,7 +363,7 @@ static void scalarizeMaskedLoad(const DataLayout &DL, bool HasBranchDivergence,
IfBlock = NewIfBlock;
// Create the phi to join the new and previous value.
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
PHINode *Phi = Builder.CreatePHI(VecType, 2, "res.phi.else");
Phi->addIncoming(NewVResult, CondBlock);
Phi->addIncoming(VResult, PrevIfBlock);
@@ -538,7 +538,7 @@ static void scalarizeMaskedStore(const DataLayout &DL, bool HasBranchDivergence,
BasicBlock *NewIfBlock = ThenTerm->getSuccessor(0);
NewIfBlock->setName("else");
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
}
CI->eraseFromParent();
@@ -674,7 +674,7 @@ static void scalarizeMaskedGather(const DataLayout &DL,
IfBlock = NewIfBlock;
// Create the phi to join the new and previous value.
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
PHINode *Phi = Builder.CreatePHI(VecType, 2, "res.phi.else");
Phi->addIncoming(NewVResult, CondBlock);
Phi->addIncoming(VResult, PrevIfBlock);
@@ -807,7 +807,7 @@ static void scalarizeMaskedScatter(const DataLayout &DL,
BasicBlock *NewIfBlock = ThenTerm->getSuccessor(0);
NewIfBlock->setName("else");
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
}
CI->eraseFromParent();
@@ -937,7 +937,7 @@ static void scalarizeMaskedExpandLoad(const DataLayout &DL,
IfBlock = NewIfBlock;
// Create the phi to join the new and previous value.
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
PHINode *ResultPhi = Builder.CreatePHI(VecType, 2, "res.phi.else");
ResultPhi->addIncoming(NewVResult, CondBlock);
ResultPhi->addIncoming(VResult, PrevIfBlock);
@@ -1064,7 +1064,7 @@ static void scalarizeMaskedCompressStore(const DataLayout &DL,
BasicBlock *PrevIfBlock = IfBlock;
IfBlock = NewIfBlock;
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
// Add a PHI for the pointer if this isn't the last iteration.
if ((Idx + 1) != VectorWidth) {
@@ -1171,7 +1171,7 @@ static void scalarizeMaskedVectorHistogram(const DataLayout &DL, CallInst *CI,
// Create "else" block, fill it in the next iteration
BasicBlock *NewIfBlock = ThenTerm->getSuccessor(0);
NewIfBlock->setName("else");
- Builder.SetInsertPoint(NewIfBlock, NewIfBlock->begin());
+ Builder.SetInsertPoint(NewIfBlock->begin());
}
CI->eraseFromParent();
diff --git a/llvm/lib/Transforms/Scalar/Scalarizer.cpp b/llvm/lib/Transforms/Scalar/Scalarizer.cpp
index d930d3e5dd33d6..9ab7f2b3315467 100644
--- a/llvm/lib/Transforms/Scalar/Scalarizer.cpp
+++ b/llvm/lib/Transforms/Scalar/Scalarizer.cpp
@@ -1336,7 +1336,7 @@ bool ScalarizerVisitor::finish() {
BasicBlock *BB = Op->getParent();
IRBuilder<> Builder(Op);
if (isa<PHINode>(Op))
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
VectorSplit VS = *getVectorSplit(Ty);
assert(VS.NumFragments == CV.size());
@@ -1348,7 +1348,7 @@ bool ScalarizerVisitor::finish() {
BasicBlock *BB = Op->getParent();
IRBuilder<> Builder(Op);
if (isa<PHINode>(Op))
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
// Iterate over each element in the struct
unsigned NumOfStructElements = Ty->getNumElements();
diff --git a/llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp b/llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
index 93fc21714ecdf6..8fa120f94e1df5 100644
--- a/llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
+++ b/llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
@@ -135,14 +135,14 @@ static Value *getStrlenWithNull(IRBuilder<> &Builder, Value *Str) {
Builder.CreateCondBr(Cmp, WhileDone, While);
// Add one to the computed length.
- Builder.SetInsertPoint(WhileDone, WhileDone->begin());
+ Builder.SetInsertPoint(WhileDone->begin());
auto Len = Builder.CreatePtrDiff(PtrPhi, Str);
Len = Builder.CreateZExt(Len, Int64Ty);
Len = Builder.CreateAdd(Len, One);
// Final join.
UncondBrInst::Create(Join, WhileDone);
- Builder.SetInsertPoint(Join, Join->begin());
+ Builder.SetInsertPoint(Join->begin());
auto LenPhi = Builder.CreatePHI(Len->getType(), 2);
LenPhi->addIncoming(Len, WhileDone);
LenPhi->addIncoming(Zero, Prev);
diff --git a/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp b/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
index a49f0c73ad3e36..a56900ac654bb7 100644
--- a/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
+++ b/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
@@ -116,7 +116,7 @@ static void createRetPHINode(Instruction *OrigInst, Instruction *NewInst,
if (OrigInst->getType()->isVoidTy() || OrigInst->use_empty())
return;
- Builder.SetInsertPoint(MergeBlock, MergeBlock->begin());
+ Builder.SetInsertPoint(MergeBlock->begin());
PHINode *Phi = Builder.CreatePHI(OrigInst->getType(), 0);
SmallVector<User *, 16> UsersToUpdate(OrigInst->users());
for (User *U : UsersToUpdate)
diff --git a/llvm/lib/Transforms/Utils/FlattenCFG.cpp b/llvm/lib/Transforms/Utils/FlattenCFG.cpp
index 48c16c062a39f5..5dbf763ed0c2d7 100644
--- a/llvm/lib/Transforms/Utils/FlattenCFG.cpp
+++ b/llvm/lib/Transforms/Utils/FlattenCFG.cpp
@@ -481,7 +481,6 @@ bool FlattenCFGOpt::MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder) {
FirstEntryBlock->splice(FirstEntryBlock->end(), SecondEntryBlock);
CondBrInst *PBI = cast<CondBrInst>(FirstEntryBlock->getTerminator());
assert(PBI->getCondition() == CInst2);
- BasicBlock *SaveInsertBB = Builder.GetInsertBlock();
BasicBlock::iterator SaveInsertPt = Builder.GetInsertPoint();
Builder.SetInsertPoint(PBI);
if (InvertCond2) {
@@ -489,7 +488,7 @@ bool FlattenCFGOpt::MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder) {
}
Value *NC = Builder.CreateBinOp(CombineOp, CInst1, PBI->getCondition());
PBI->replaceUsesOfWith(PBI->getCondition(), NC);
- Builder.SetInsertPoint(SaveInsertBB, SaveInsertPt);
+ Builder.SetInsertPoint(SaveInsertPt);
// Remove IfTrue1
if (IfTrue1 != FirstEntryBlock) {
diff --git a/llvm/lib/Transforms/Utils/IntegerDivision.cpp b/llvm/lib/Transforms/Utils/IntegerDivision.cpp
index 549c8e32c60792..9180c98cb45ebe 100644
--- a/llvm/lib/Transforms/Utils/IntegerDivision.cpp
+++ b/llvm/lib/Transforms/Utils/IntegerDivision.cpp
@@ -359,7 +359,7 @@ static Value *generateUnsignedDivisionCode(Value *Dividend, Value *Divisor,
// ; end: ; preds = %loop-exit, %special-cases
// ; %q_5 = phi i32 [ %q_4, %loop-exit ], [ %retVal, %special-cases ]
// ; ret i32 %q_5
- Builder.SetInsertPoint(End, End->begin());
+ Builder.SetInsertPoint(End->begin());
PHINode *Q_5 = Builder.CreatePHI(DivTy, 2);
// Populate the Phis, since all values have now been created. Our Phis were:
diff --git a/llvm/lib/Transforms/Utils/LoopUtils.cpp b/llvm/lib/Transforms/Utils/LoopUtils.cpp
index 0599f045c4f840..0932f9ae27681b 100644
--- a/llvm/lib/Transforms/Utils/LoopUtils.cpp
+++ b/llvm/lib/Transforms/Utils/LoopUtils.cpp
@@ -1434,7 +1434,7 @@ Value *llvm::expandReductionViaLoop(IRBuilderBase &Builder, Value *Vec,
NewLoop->addBasicBlockToLoop(LoopBB, *LI);
}
- Builder.SetInsertPoint(ExitBB, ExitBB->begin());
+ Builder.SetInsertPoint(ExitBB->begin());
return Res;
}
diff --git a/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp b/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
index 84131f6592e500..1e501e26a8005e 100644
--- a/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
+++ b/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
@@ -1024,8 +1024,7 @@ static void createMemMoveLoopKnownSize(Instruction *InsertBefore,
PartDstAlign);
for (auto *OpTy : RemainingOps) {
// reverse the order of the emitted operations
- BwdResBuilder.SetInsertPoint(CopyBackwardsBB,
- CopyBackwardsBB->getFirstNonPHIIt());
+ BwdResBuilder.SetInsertPoint(CopyBackwardsBB->getFirstNonPHIIt());
GenerateResidualLdStPair(OpTy, BwdResBuilder, BytesCopied);
}
}
diff --git a/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp b/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
index d8ad13994ca2af..d56958be37b947 100644
--- a/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
+++ b/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
@@ -1145,7 +1145,7 @@ SCEVExpander::getAddRecExprPHILiterally(const SCEVAddRecExpr *Normalized,
// Create the PHI.
BasicBlock *Header = L->getHeader();
- Builder.SetInsertPoint(Header, Header->begin());
+ Builder.SetInsertPoint(Header->begin());
PHINode *PN =
Builder.CreatePHI(ExpandTy, pred_size(Header), Twine(IVName) + ".iv");
@@ -1744,7 +1744,7 @@ Value *SCEVExpander::expand(SCEVUse S) {
return I->second;
SCEVInsertPointGuard Guard(Builder, this);
- Builder.SetInsertPoint(InsertPt->getParent(), InsertPt);
+ Builder.SetInsertPoint(InsertPt);
// Expand the expression into instructions.
Value *V = findExistingExpansionAndDropPoisonFlags(S, &*InsertPt);
diff --git a/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp b/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
index 38b9a5b09d32bf..7ae357601d7c27 100644
--- a/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
+++ b/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
@@ -1821,8 +1821,7 @@ bool WidenIV::widenWithVariantUse(WidenIV::NarrowIVDefUse DU) {
assert(LoopExitingBlock && L->contains(LoopExitingBlock) &&
"Not a LCSSA Phi?");
WidePN->addIncoming(WideBO, LoopExitingBlock);
- Builder.SetInsertPoint(User->getParent(),
- User->getParent()->getFirstInsertionPt());
+ Builder.SetInsertPoint(User->getParent()->getFirstInsertionPt());
auto *TruncPN = Builder.CreateTrunc(WidePN, User->getType());
User->replaceAllUsesWith(TruncPN);
DeadInsts.emplace_back(User);
diff --git a/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp b/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
index 2ca27db66d490b..6679a0fc4348be 100644
--- a/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
+++ b/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
@@ -3106,12 +3106,12 @@ static bool insertSinCosCall(IRBuilderBase &B, Function *OrigCallee, Value *Arg,
if (Instruction *ArgInst = dyn_cast<Instruction>(Arg)) {
// If the argument is an instruction, it must dominate all uses so put our
// sincos call there.
- B.SetInsertPoint(ArgInst->getParent(), ++ArgInst->getIterator());
+ B.SetInsertPoint(++ArgInst->getIterator());
} else {
// Otherwise (e.g. for a constant) the beginning of the function is as
// good a place as any.
BasicBlock &EntryBB = B.GetInsertBlock()->getParent()->getEntryBlock();
- B.SetInsertPoint(&EntryBB, EntryBB.begin());
+ B.SetInsertPoint(EntryBB.begin());
}
SinCos = B.CreateCall(Callee, Arg, "sincospi");
diff --git a/llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
index 8316341d830ad3..be613a18432ce9 100644
--- a/llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
+++ b/llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
@@ -903,7 +903,7 @@ Value *LoopIdiomVectorize::expandFindMismatch(
// 3. We didn't find a mismatch in the vector loop, so we return MaxLen.
// 4. We exitted the vector loop early due to a mismatch and need to return
// the index that we found.
- Builder.SetInsertPoint(EndBlock, EndBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(EndBlock->getFirstInsertionPt());
PHINode *ResPhi = Builder.CreatePHI(ResType, 4, "mismatch_result");
ResPhi->addIncoming(MaxLen, LoopIncBlock);
ResPhi->addIncoming(IndexPhi, LoopStartBlock);
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
index 516b4af4c4a528..fcc14be3104bd2 100644
--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
@@ -22302,20 +22302,18 @@ void BoUpSLP::setInsertPointAfterBundle(const TreeEntry *E) {
(GatheredLoadsEntriesFirst.has_value() &&
E->Idx >= *GatheredLoadsEntriesFirst && !E->isGather() &&
E->getOpcode() == Instruction::Load)) {
- Builder.SetInsertPoint(LastInst->getParent(), LastInstIt);
+ Builder.SetInsertPoint(LastInstIt);
} else {
// Set the insertion point after the last instruction in the bundle. Set the
// debug location to Front.
- Builder.SetInsertPoint(
- LastInst->getParent(),
- LastInst->getNextNode()->getIterator());
+ Builder.SetInsertPoint(LastInst->getNextNode()->getIterator());
if (Instruction *Res = LastInstructionToPos.lookup(LastInst)) {
- Builder.SetInsertPoint(LastInst->getParent(), Res->getIterator());
+ Builder.SetInsertPoint(Res->getIterator());
} else {
Res = Builder.CreateAlignedLoad(Builder.getPtrTy(),
PoisonValue::get(Builder.getPtrTy()),
MaybeAlign());
- Builder.SetInsertPoint(LastInst->getParent(), Res->getIterator());
+ Builder.SetInsertPoint(Res->getIterator());
eraseInstruction(Res);
if (E->State != TreeEntry::SplitVectorize)
LastInstructionToPos.try_emplace(LastInst, Res);
@@ -24103,15 +24101,13 @@ Value *BoUpSLP::vectorizeTree(TreeEntry *E) {
E != &getRootNode() || E->UserTreeIndex) &&
"PHI reordering is free.");
auto *PH = cast<PHINode>(VL0);
- Builder.SetInsertPoint(PH->getParent(),
- PH->getParent()->getFirstNonPHIIt());
+ Builder.SetInsertPoint(PH->getParent()->getFirstNonPHIIt());
Builder.SetCurrentDebugLocation(getDebugLocFromPHI(*PH));
PHINode *NewPhi = Builder.CreatePHI(VecTy, PH->getNumIncomingValues());
Value *V = NewPhi;
// Adjust insertion point once all PHI's have been generated.
- Builder.SetInsertPoint(PH->getParent(),
- PH->getParent()->getFirstInsertionPt());
+ Builder.SetInsertPoint(PH->getParent()->getFirstInsertionPt());
Builder.SetCurrentDebugLocation(getDebugLocFromPHI(*PH));
V = FinalShuffle(V, E);
@@ -26077,10 +26073,9 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
versionBlocksForRuntimeChecks();
if (ReductionRoot)
- Builder.SetInsertPoint(ReductionRoot->getParent(),
- ReductionRoot->getIterator());
+ Builder.SetInsertPoint(ReductionRoot->getIterator());
else
- Builder.SetInsertPoint(&F->getEntryBlock(), F->getEntryBlock().begin());
+ Builder.SetInsertPoint(F->getEntryBlock().begin());
// Vectorize gather operands of the nodes with the external uses only.
SmallVector<std::pair<TreeEntry *, Instruction *>> GatherEntries;
@@ -26490,19 +26485,15 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
if (auto *VecI = dyn_cast<Instruction>(Vec)) {
if (auto *PHI = dyn_cast<PHINode>(VecI)) {
if (PHI->getParent()->isLandingPad())
- Builder.SetInsertPoint(
- PHI->getParent(),
- std::next(
- PHI->getParent()->getLandingPadInst()->getIterator()));
+ Builder.SetInsertPoint(std::next(
+ PHI->getParent()->getLandingPadInst()->getIterator()));
else
- Builder.SetInsertPoint(PHI->getParent(),
- PHI->getParent()->getFirstNonPHIIt());
+ Builder.SetInsertPoint(PHI->getParent()->getFirstNonPHIIt());
} else {
- Builder.SetInsertPoint(VecI->getParent(),
- std::next(VecI->getIterator()));
+ Builder.SetInsertPoint(std::next(VecI->getIterator()));
}
} else {
- Builder.SetInsertPoint(&F->getEntryBlock(), F->getEntryBlock().begin());
+ Builder.SetInsertPoint(F->getEntryBlock().begin());
}
Value *NewInst = ExtractAndExtendIfNeeded(Vec);
// Required to update internally referenced instructions.
@@ -26542,10 +26533,8 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
IRBuilderBase::InsertPointGuard Guard(Builder);
if (auto *IVec = dyn_cast<PHINode>(Vec)) {
if (IVec->getParent()->isLandingPad())
- Builder.SetInsertPoint(IVec->getParent(),
- std::next(IVec->getParent()
- ->getLandingPadInst()
- ->getIterator()));
+ Builder.SetInsertPoint(std::next(
+ IVec->getParent()->getLandingPadInst()->getIterator()));
else
Builder.SetInsertPoint(
IVec->getParent()->getFirstNonPHIOrDbgOrLifetime());
@@ -26600,8 +26589,7 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
Instruction *IncomingTerminator =
PH->getIncomingBlock(I)->getTerminator();
if (isa<CatchSwitchInst>(IncomingTerminator)) {
- Builder.SetInsertPoint(VecI->getParent(),
- std::next(VecI->getIterator()));
+ Builder.SetInsertPoint(std::next(VecI->getIterator()));
} else {
Builder.SetInsertPoint(PH->getIncomingBlock(I)->getTerminator());
}
@@ -26622,7 +26610,7 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
}
}
} else {
- Builder.SetInsertPoint(&F->getEntryBlock(), F->getEntryBlock().begin());
+ Builder.SetInsertPoint(F->getEntryBlock().begin());
Value *NewInst = ExtractAndExtendIfNeeded(Vec);
User->replaceUsesOfWith(Scalar, NewInst);
}
@@ -26953,8 +26941,7 @@ BoUpSLP::vectorizeTree(const ExtraValueToDebugLocsMap &ExternallyUsedValues,
It != MinBWs.end() &&
ReductionBitWidth != It->second.first) {
IRBuilder<>::InsertPointGuard Guard(Builder);
- Builder.SetInsertPoint(ReductionRoot->getParent(),
- ReductionRoot->getIterator());
+ Builder.SetInsertPoint(ReductionRoot->getIterator());
if (isReducedBitcastRoot() || isReducedCmpBitcastRoot()) {
Vec = Builder.CreateIntCast(Vec, Builder.getIntNTy(ReductionBitWidth),
It->second.second);
diff --git a/llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp b/llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
index ae9001dc8c67fa..833564dba579c9 100644
--- a/llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+++ b/llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
@@ -2029,7 +2029,7 @@ void VPIRInstruction::execute(VPTransformState &State) {
"PHINodes must be handled by VPIRPhi");
// Advance the insert point after the wrapped IR instruction. This allows
// interleaving VPIRInstructions and other recipes.
- State.Builder.SetInsertPoint(I.getParent(), std::next(I.getIterator()));
+ State.Builder.SetInsertPoint(std::next(I.getIterator()));
}
InstructionCost VPIRInstruction::computeCost(ElementCount VF,
@@ -2070,7 +2070,7 @@ void VPIRPhi::execute(VPTransformState &State) {
// Advance the insert point after the wrapped IR instruction. This allows
// interleaving VPIRInstructions and other recipes.
- State.Builder.SetInsertPoint(Phi->getParent(), std::next(Phi->getIterator()));
+ State.Builder.SetInsertPoint(std::next(Phi->getIterator()));
}
void VPPhiAccessors::removeIncomingValueFor(VPBlockBase *IncomingBlock) const {
diff --git a/llvm/unittests/Analysis/MemorySSATest.cpp b/llvm/unittests/Analysis/MemorySSATest.cpp
index 7780c575014659..450241963af538 100644
--- a/llvm/unittests/Analysis/MemorySSATest.cpp
+++ b/llvm/unittests/Analysis/MemorySSATest.cpp
@@ -124,7 +124,7 @@ TEST_F(MemorySSATest, CreateLoadsAndStoreUpdater) {
BasicBlock *Merge(BasicBlock::Create(C, "", F));
B.SetInsertPoint(Entry);
B.CreateCondBr(B.getTrue(), Left, Right);
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
Argument *PointerArg = &*F->arg_begin();
B.SetInsertPoint(Left);
B.CreateBr(Merge);
@@ -136,14 +136,14 @@ TEST_F(MemorySSATest, CreateLoadsAndStoreUpdater) {
MemorySSA &MSSA = *Analyses->MSSA;
MemorySSAUpdater Updater(&MSSA);
// Add the store
- B.SetInsertPoint(Entry, Entry->begin());
+ B.SetInsertPoint(Entry->begin());
StoreInst *EntryStore = B.CreateStore(B.getInt8(16), PointerArg);
MemoryAccess *EntryStoreAccess = Updater.createMemoryAccessInBB(
EntryStore, nullptr, Entry, MemorySSA::Beginning);
Updater.insertDef(cast<MemoryDef>(EntryStoreAccess));
// Add the load
- B.SetInsertPoint(Merge, Merge->begin());
+ B.SetInsertPoint(Merge->begin());
LoadInst *FirstLoad = B.CreateLoad(B.getInt8Ty(), PointerArg);
// MemoryPHI should not already exist.
@@ -160,7 +160,7 @@ TEST_F(MemorySSATest, CreateLoadsAndStoreUpdater) {
// Create a store on the left
// Add the store
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
StoreInst *LeftStore = B.CreateStore(B.getInt8(16), PointerArg);
MemoryAccess *LeftStoreAccess = Updater.createMemoryAccessInBB(
LeftStore, nullptr, Left, MemorySSA::Beginning);
@@ -171,7 +171,7 @@ TEST_F(MemorySSATest, CreateLoadsAndStoreUpdater) {
EXPECT_NE(MP, nullptr);
// Add the second load
- B.SetInsertPoint(Merge, Merge->begin());
+ B.SetInsertPoint(Merge->begin());
LoadInst *SecondLoad = B.CreateLoad(B.getInt8Ty(), PointerArg);
// Create the load memory access
@@ -185,7 +185,7 @@ TEST_F(MemorySSATest, CreateLoadsAndStoreUpdater) {
EXPECT_EQ(MergePhi->getIncomingValue(0), EntryStoreAccess);
EXPECT_EQ(MergePhi->getIncomingValue(1), LeftStoreAccess);
// Now create a store below the existing one in the entry
- B.SetInsertPoint(Entry, --Entry->end());
+ B.SetInsertPoint(--Entry->end());
StoreInst *SecondEntryStore = B.CreateStore(B.getInt8(16), PointerArg);
MemoryAccess *SecondEntryStoreAccess = Updater.createMemoryAccessInBB(
SecondEntryStore, nullptr, Entry, MemorySSA::End);
@@ -214,7 +214,7 @@ TEST_F(MemorySSATest, CreateALoadUpdater) {
BasicBlock *Merge(BasicBlock::Create(C, "", F));
B.SetInsertPoint(Entry);
B.CreateCondBr(B.getTrue(), Left, Right);
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
Argument *PointerArg = &*F->arg_begin();
B.SetInsertPoint(Left);
B.CreateBr(Merge);
@@ -225,7 +225,7 @@ TEST_F(MemorySSATest, CreateALoadUpdater) {
setupAnalyses();
MemorySSA &MSSA = *Analyses->MSSA;
MemorySSAUpdater Updater(&MSSA);
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
// Add the store
StoreInst *SI = B.CreateStore(B.getInt8(16), PointerArg);
MemoryAccess *StoreAccess =
@@ -237,7 +237,7 @@ TEST_F(MemorySSATest, CreateALoadUpdater) {
EXPECT_NE(MP, nullptr);
// Add the load
- B.SetInsertPoint(Merge, Merge->begin());
+ B.SetInsertPoint(Merge->begin());
LoadInst *LoadInst = B.CreateLoad(B.getInt8Ty(), PointerArg);
// Create the load memory acccess
@@ -258,7 +258,7 @@ TEST_F(MemorySSATest, SinkLoad) {
BasicBlock *Merge(BasicBlock::Create(C, "", F));
B.SetInsertPoint(Entry);
B.CreateCondBr(B.getTrue(), Left, Right);
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
Argument *PointerArg = &*F->arg_begin();
B.SetInsertPoint(Left);
B.CreateBr(Merge);
@@ -267,10 +267,10 @@ TEST_F(MemorySSATest, SinkLoad) {
ReturnInst::Create(C, Merge);
// Load in left block
- B.SetInsertPoint(Left, Left->begin());
+ B.SetInsertPoint(Left->begin());
LoadInst *LoadInst1 = B.CreateLoad(B.getInt8Ty(), PointerArg);
// Store in merge block
- B.SetInsertPoint(Merge, Merge->begin());
+ B.SetInsertPoint(Merge->begin());
B.CreateStore(B.getInt8(16), PointerArg);
setupAnalyses();
diff --git a/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp b/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
index 2010533b7e6db4..553ca558d6f2d4 100644
--- a/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
+++ b/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
@@ -2411,7 +2411,7 @@ TEST_P(OpenMPIRBuilderTestWithNeedsBarrier, StaticWorkshareLoopTarget) {
BasicBlock *Exit = CLI->getExit();
Value *TripCount = CLI->getTripCount();
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
ASSERT_EXPECTED_INIT(OpenMPIRBuilder::InsertPointTy, AfterIP,
OMPBuilder.applyWorkshareLoop(
@@ -2495,7 +2495,7 @@ TEST_F(OpenMPIRBuilderTest, StaticWorkShareLoop) {
Value *IV = CLI->getIndVar();
BasicBlock *ExitBlock = CLI->getExit();
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
InsertPointTy AllocaIP = Builder.saveIP();
ASSERT_THAT_EXPECTED(OMPBuilder.applyWorkshareLoop(DL, CLI, AllocaIP,
@@ -2693,7 +2693,7 @@ TEST_P(OpenMPIRBuilderTestWithParams, DynamicWorkShareLoop) {
Loc, LoopBodyGen, StartVal, StopVal, StepVal,
/*IsSigned=*/false, /*InclusiveStop=*/false));
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
InsertPointTy AllocaIP = Builder.saveIP();
// Collect all the info from CLI, as it isn't usable after the call to
@@ -2839,7 +2839,7 @@ TEST_F(OpenMPIRBuilderTest, DynamicWorkShareLoopOrdered) {
Loc, LoopBodyGen, StartVal, StopVal, StepVal,
/*IsSigned=*/false, /*InclusiveStop=*/false));
- Builder.SetInsertPoint(BB, BB->getFirstInsertionPt());
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
InsertPointTy AllocaIP = Builder.saveIP();
// Collect all the info from CLI, as it isn't usable after the call to
diff --git a/llvm/unittests/IR/DebugInfoTest.cpp b/llvm/unittests/IR/DebugInfoTest.cpp
index 5b68354119e3ad..f2e7389e0da329 100644
--- a/llvm/unittests/IR/DebugInfoTest.cpp
+++ b/llvm/unittests/IR/DebugInfoTest.cpp
@@ -777,8 +777,7 @@ TEST(IRBuilder, GetSetInsertionPointWithEmptyBasicBlock) {
Value *DIV = MetadataAsValue::get(C, (Metadata *)nullptr);
SmallVector<Value *, 3> Args = {DIV, DIV, DIV};
Builder.CreateCall(DbgDeclare, Args);
- auto IP = BB->getFirstInsertionPt();
- Builder.SetInsertPoint(BB.get(), IP);
+ Builder.SetInsertPoint(BB->getFirstInsertionPt());
}
TEST(AssignmentTrackingTest, InstrMethods) {
diff --git a/llvm/unittests/IR/IRBuilderTest.cpp b/llvm/unittests/IR/IRBuilderTest.cpp
index bea757cb0b1a22..2bb24dcb5a5b24 100644
--- a/llvm/unittests/IR/IRBuilderTest.cpp
+++ b/llvm/unittests/IR/IRBuilderTest.cpp
@@ -1292,7 +1292,7 @@ TEST_F(IRBuilderTest, DebugLoc) {
EXPECT_EQ(DL1, Call1->getDebugLoc());
Call1->setDebugLoc(DL2);
- Builder.SetInsertPoint(Call1->getParent(), Call1->getIterator());
+ Builder.SetInsertPoint(Call1->getIterator());
EXPECT_EQ(DL2, Builder.getCurrentDebugLocation());
auto Call2 = Builder.CreateCall(Callee, {});
EXPECT_EQ(DL2, Call2->getDebugLoc());
diff --git a/llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp b/llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
index 0c7720e9c4f1f6..835e5930ed009c 100644
--- a/llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
+++ b/llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
@@ -64,7 +64,7 @@ TEST(SSAUpdaterBulk, SimpleMerge) {
Value *SubOp2 = B.CreateSub(FirstArg, ConstantInt::get(I32Ty, 4));
B.CreateBr(MergeBB);
- B.SetInsertPoint(MergeBB, MergeBB->begin());
+ B.SetInsertPoint(MergeBB->begin());
auto *I1 = cast<Instruction>(B.CreateAdd(AddOp1, ConstantInt::get(I32Ty, 5)));
auto *I2 = cast<Instruction>(B.CreateAdd(AddOp2, ConstantInt::get(I32Ty, 6)));
auto *I3 = cast<Instruction>(B.CreateAdd(SubOp1, SubOp2));
diff --git a/mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp b/mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
index 9859008ebe08c1..ba9b30e69aacef 100644
--- a/mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+++ b/mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
@@ -800,7 +800,7 @@ static llvm::Expected<llvm::BasicBlock *> convertOmpOpRegions(
if (continuationBlockPHIs) {
llvm::IRBuilderBase::InsertPointGuard guard(builder);
continuationBlockPHIs->reserve(continuationBlockPHITypes.size());
- builder.SetInsertPoint(continuationBlock, continuationBlock->begin());
+ builder.SetInsertPoint(continuationBlock->begin());
for (llvm::Type *ty : continuationBlockPHITypes)
continuationBlockPHIs->push_back(builder.CreatePHI(ty, numYields));
}
@@ -1186,8 +1186,7 @@ static LogicalResult inlineConvertOmpRegions(
if (continuationBlockArgs)
llvm::append_range(*continuationBlockArgs, phis);
- builder.SetInsertPoint(*continuationBlock,
- (*continuationBlock)->getFirstInsertionPt());
+ builder.SetInsertPoint((*continuationBlock)->getFirstInsertionPt());
return success();
}
@@ -4882,7 +4881,7 @@ convertOmpWsloop(Operation &opInst, llvm::IRBuilderBase &builder,
linearClauseProcessor.splitLinearFiniBB(builder, loopInfo->getExit());
}
- builder.SetInsertPoint(*regionBlock, (*regionBlock)->begin());
+ builder.SetInsertPoint((*regionBlock)->begin());
// Check if we can generate no-loop kernel
bool noLoopMode = false;
@@ -5314,7 +5313,7 @@ convertOmpSimd(Operation &opInst, llvm::IRBuilderBase &builder,
linearClauseProcessor.updateLinearVar(builder, loopInfo->getBody(),
loopInfo->getIndVar());
}
- builder.SetInsertPoint(*regionBlock, (*regionBlock)->begin());
+ builder.SetInsertPoint((*regionBlock)->begin());
for (size_t index = 0; index < simdOp.getLinearVars().size(); index++)
linearClauseProcessor.rewriteInPlace(builder, loopInfo->getBody(),
@@ -5414,7 +5413,7 @@ convertOmpLoopNest(Operation &opInst, llvm::IRBuilderBase &builder,
if (!regionBlock)
return regionBlock.takeError();
- builder.SetInsertPoint(*regionBlock, (*regionBlock)->begin());
+ builder.SetInsertPoint((*regionBlock)->begin());
return llvm::Error::success();
};
@@ -8835,7 +8834,7 @@ convertOmpDistribute(Operation &opInst, llvm::IRBuilderBase &builder,
builder, moduleTranslation);
if (!regionBlock)
return regionBlock.takeError();
- builder.SetInsertPoint(*regionBlock, (*regionBlock)->begin());
+ builder.SetInsertPoint((*regionBlock)->begin());
// Skip applying a workshare loop below when translating 'distribute
// parallel do' (it's been already handled by this point while translating
diff --git a/polly/lib/CodeGen/BlockGenerators.cpp b/polly/lib/CodeGen/BlockGenerators.cpp
index 877bb48ad650a1..bc5b4a6227754e 100644
--- a/polly/lib/CodeGen/BlockGenerators.cpp
+++ b/polly/lib/CodeGen/BlockGenerators.cpp
@@ -418,7 +418,7 @@ BasicBlock *BlockGenerator::copyBB(ScopStmt &Stmt, BasicBlock *BB,
ValueMapT &BBMap, LoopToScevMapT <S,
isl_id_to_ast_expr *NewAccesses) {
BasicBlock *CopyBB = splitBB(BB);
- Builder.SetInsertPoint(CopyBB, CopyBB->begin());
+ Builder.SetInsertPoint(CopyBB->begin());
generateScalarLoads(Stmt, LTS, BBMap, NewAccesses);
generateBeginStmtTrace(Stmt, LTS, BBMap);
@@ -639,9 +639,9 @@ void BlockGenerator::generateConditionalExecution(
// Put the client code into the conditional block and continue in the merge
// block afterwards.
- Builder.SetInsertPoint(ThenBlock, ThenBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(ThenBlock->getFirstInsertionPt());
GenThenFunc();
- Builder.SetInsertPoint(TailBlock, TailBlock->getFirstInsertionPt());
+ Builder.SetInsertPoint(TailBlock->getFirstInsertionPt());
}
static std::string getInstName(Value *Val) {
@@ -798,7 +798,7 @@ void BlockGenerator::createScalarInitialization(Scop &S) {
BasicBlock *ExitBB = S.getExit();
BasicBlock *PreEntryBB = S.getEnteringBlock();
- Builder.SetInsertPoint(StartBlock, StartBlock->begin());
+ Builder.SetInsertPoint(StartBlock->begin());
for (auto &Array : S.arrays()) {
if (Array->getNumberOfDimensions() != 0)
@@ -853,7 +853,7 @@ void BlockGenerator::createScalarFinalization(Scop &S) {
if (OptExitBB == ExitBB)
OptExitBB = *(++pred_begin(MergeBB));
- Builder.SetInsertPoint(OptExitBB, OptExitBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(OptExitBB->getTerminator()->getIterator());
for (const auto &EscapeMapping : EscapeMap) {
// Extract the escaping instruction and the escaping users as well as the
// alloca the instruction was demoted to.
@@ -924,7 +924,7 @@ void BlockGenerator::createExitPHINodeMerges(Scop &S) {
if (OptExitBB == ExitBB)
OptExitBB = *(++pred_begin(MergeBB));
- Builder.SetInsertPoint(OptExitBB, OptExitBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(OptExitBB->getTerminator()->getIterator());
for (auto &SAI : S.arrays()) {
auto *Val = SAI->getBasePtr();
@@ -1075,7 +1075,7 @@ void RegionGenerator::copyStmt(ScopStmt &Stmt, LoopToScevMapT <S,
BasicBlock *EntryBBCopy = SplitBlock(Builder.GetInsertBlock(),
Builder.GetInsertPoint(), GenDT, GenLI);
EntryBBCopy->setName("polly.stmt." + EntryBB->getName() + ".entry");
- Builder.SetInsertPoint(EntryBBCopy, EntryBBCopy->begin());
+ Builder.SetInsertPoint(EntryBBCopy->begin());
ValueMapT &EntryBBMap = RegionMaps[EntryBBCopy];
generateScalarLoads(Stmt, LTS, EntryBBMap, IdToAstExp);
@@ -1115,7 +1115,7 @@ void RegionGenerator::copyStmt(ScopStmt &Stmt, LoopToScevMapT <S,
ValueMapT &RegionMap = Inserted.first->second;
// Copy the block with the BlockGenerator.
- Builder.SetInsertPoint(BBCopy, BBCopy->begin());
+ Builder.SetInsertPoint(BBCopy->begin());
copyBB(Stmt, BB, BBCopy, RegionMap, LTS, IdToAstExp);
// In order to remap PHI nodes we store also basic block mappings.
@@ -1169,7 +1169,7 @@ void RegionGenerator::copyStmt(ScopStmt &Stmt, LoopToScevMapT <S,
ValueMapT &RegionMap = RegionMaps[BBCopyStart];
RegionMap.insert_range(StartBlockMap);
- Builder.SetInsertPoint(BBCopyEnd, BICopy->getIterator());
+ Builder.SetInsertPoint(BICopy->getIterator());
copyInstScalar(Stmt, TI, RegionMap, LTS);
BICopy->eraseFromParent();
}
@@ -1207,7 +1207,7 @@ void RegionGenerator::copyStmt(ScopStmt &Stmt, LoopToScevMapT <S,
}
// Continue generating code in the exit block.
- Builder.SetInsertPoint(ExitBBCopy, ExitBBCopy->getFirstInsertionPt());
+ Builder.SetInsertPoint(ExitBBCopy->getFirstInsertionPt());
// Write values visible to other statements.
generateScalarStores(Stmt, LTS, ValueMap, IdToAstExp);
@@ -1244,8 +1244,7 @@ PHINode *RegionGenerator::buildExitPHI(MemoryAccess *MA, LoopToScevMapT <S,
BasicBlock *OrigIncomingBlock = Pair.first;
BasicBlock *NewIncomingBlockStart = StartBlockMap.lookup(OrigIncomingBlock);
BasicBlock *NewIncomingBlockEnd = EndBlockMap.lookup(OrigIncomingBlock);
- Builder.SetInsertPoint(NewIncomingBlockEnd,
- NewIncomingBlockEnd->getTerminator()->getIterator());
+ Builder.SetInsertPoint(NewIncomingBlockEnd->getTerminator()->getIterator());
assert(RegionMaps.count(NewIncomingBlockStart));
assert(RegionMaps.count(NewIncomingBlockEnd));
ValueMapT *LocalBBMap = &RegionMaps[NewIncomingBlockStart];
@@ -1362,8 +1361,7 @@ void RegionGenerator::addOperandToPHI(ScopStmt &Stmt, PHINode *PHI,
// change it, otherwise do not.
auto IP = Builder.GetInsertPoint();
if (IP->getParent() != BBCopyEnd)
- Builder.SetInsertPoint(BBCopyEnd,
- BBCopyEnd->getTerminator()->getIterator());
+ Builder.SetInsertPoint(BBCopyEnd->getTerminator()->getIterator());
OpCopy = getNewValue(Stmt, Op, BBCopyMap, LTS, getLoopForStmt(Stmt));
if (IP->getParent() != BBCopyEnd)
Builder.SetInsertPoint(IP);
diff --git a/polly/lib/CodeGen/CodeGeneration.cpp b/polly/lib/CodeGen/CodeGeneration.cpp
index d02a1979bed6d2..5bbcc7255e9ddd 100644
--- a/polly/lib/CodeGen/CodeGeneration.cpp
+++ b/polly/lib/CodeGen/CodeGeneration.cpp
@@ -75,7 +75,7 @@ namespace polly {
/// UnreachableInst.
void markBlockUnreachable(BasicBlock &Block, PollyIRBuilder &Builder) {
auto OrigTerminator = Block.getTerminator()->getIterator();
- Builder.SetInsertPoint(&Block, OrigTerminator);
+ Builder.SetInsertPoint(OrigTerminator);
Builder.CreateUnreachable();
OrigTerminator->eraseFromParent();
}
@@ -208,8 +208,7 @@ static bool generateCode(Scop &S, IslAstInfo &AI, LoopInfo &LI,
assert(EnteringBB);
PollyIRBuilder Builder(EnteringBB->getContext(), ConstantFolder(),
IRInserter(Annotator));
- Builder.SetInsertPoint(EnteringBB,
- EnteringBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(EnteringBB->getTerminator()->getIterator());
// Only build the run-time condition and parameters _after_ having
// introduced the conditional branch. This is important as the conditional
@@ -246,8 +245,7 @@ static bool generateCode(Scop &S, IslAstInfo &AI, LoopInfo &LI,
// might reference the hoisted loads. Finally, build the runtime check
// that might reference both hoisted loads as well as parameters.
// If the hoisting fails we have to bail and execute the original code.
- Builder.SetInsertPoint(SplitBlock,
- SplitBlock->getTerminator()->getIterator());
+ Builder.SetInsertPoint(SplitBlock->getTerminator()->getIterator());
if (!NodeBuilder.preloadInvariantLoads()) {
// Patch the introduced branch condition to ensure that we always execute
// the original SCoP.
@@ -294,8 +292,7 @@ static bool generateCode(Scop &S, IslAstInfo &AI, LoopInfo &LI,
// Ideally we would just split the block during allocation of the new
// arrays, but this would break the assumption that there are no blocks
// between polly.start and polly.exiting (at this point).
- Builder.SetInsertPoint(StartBlock,
- StartBlock->getTerminator()->getIterator());
+ Builder.SetInsertPoint(StartBlock->getTerminator()->getIterator());
NodeBuilder.generateBeginScopTrace();
diff --git a/polly/lib/CodeGen/IslExprBuilder.cpp b/polly/lib/CodeGen/IslExprBuilder.cpp
index ca5a82fd5fa8ec..41cca3fcedd23f 100644
--- a/polly/lib/CodeGen/IslExprBuilder.cpp
+++ b/polly/lib/CodeGen/IslExprBuilder.cpp
@@ -625,7 +625,7 @@ IslExprBuilder::createOpBooleanConditional(__isl_take isl_ast_expr *Expr) {
Builder.SetInsertPoint(CondBB);
Builder.CreateBr(NextBB);
- Builder.SetInsertPoint(InsertBB, InsertBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(InsertBB->getTerminator()->getIterator());
LHS = create(isl_ast_expr_get_op_arg(Expr, 0));
if (!LHS->getType()->isIntegerTy(1))
@@ -637,13 +637,13 @@ IslExprBuilder::createOpBooleanConditional(__isl_take isl_ast_expr *Expr) {
else
BR->setCondition(LHS);
- Builder.SetInsertPoint(CondBB, CondBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(CondBB->getTerminator()->getIterator());
RHS = create(isl_ast_expr_get_op_arg(Expr, 1));
if (!RHS->getType()->isIntegerTy(1))
RHS = Builder.CreateIsNotNull(RHS);
auto RightBB = Builder.GetInsertBlock();
- Builder.SetInsertPoint(NextBB, NextBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(NextBB->getTerminator()->getIterator());
auto PHI = Builder.CreatePHI(Builder.getInt1Ty(), 2);
PHI->addIncoming(OpType == isl_ast_op_and_then ? Builder.getFalse()
: Builder.getTrue(),
diff --git a/polly/lib/CodeGen/IslNodeBuilder.cpp b/polly/lib/CodeGen/IslNodeBuilder.cpp
index 126cb756a41448..bac10f5e3ad408 100644
--- a/polly/lib/CodeGen/IslNodeBuilder.cpp
+++ b/polly/lib/CodeGen/IslNodeBuilder.cpp
@@ -564,7 +564,7 @@ void IslNodeBuilder::createForSequential(isl::ast_node_for For,
IDToValue.erase(IDToValue.find(IteratorID.get()));
- Builder.SetInsertPoint(ExitBlock, ExitBlock->begin());
+ Builder.SetInsertPoint(ExitBlock->begin());
SequentialLoops++;
}
@@ -584,7 +584,7 @@ void IslNodeBuilder::createForParallel(__isl_take isl_ast_node *For) {
BasicBlock *ParBB =
SplitBlock(Builder.GetInsertBlock(), Builder.GetInsertPoint(), &DT, &LI);
ParBB->setName("polly.parallel.for");
- Builder.SetInsertPoint(ParBB, ParBB->begin());
+ Builder.SetInsertPoint(ParBB->begin());
Body = isl_ast_node_for_get_body(For);
Init = isl_ast_node_for_get_init(For);
@@ -832,16 +832,16 @@ void IslNodeBuilder::createIf(__isl_take isl_ast_node *If) {
Builder.CreateBr(MergeBB);
Builder.SetInsertPoint(ElseBB);
Builder.CreateBr(MergeBB);
- Builder.SetInsertPoint(ThenBB, ThenBB->begin());
+ Builder.SetInsertPoint(ThenBB->begin());
create(isl_ast_node_if_get_then(If));
- Builder.SetInsertPoint(ElseBB, ElseBB->begin());
+ Builder.SetInsertPoint(ElseBB->begin());
if (isl_ast_node_if_has_else(If))
create(isl_ast_node_if_get_else(If));
- Builder.SetInsertPoint(MergeBB, MergeBB->begin());
+ Builder.SetInsertPoint(MergeBB->begin());
isl_ast_node_free(If);
@@ -1231,16 +1231,16 @@ Value *IslNodeBuilder::preloadInvariantLoad(const MemoryAccess &MA,
L->addBasicBlockToLoop(ExecBB, *GenLI);
auto *CondBBTerminator = CondBB->getTerminator();
- Builder.SetInsertPoint(CondBB, CondBBTerminator->getIterator());
+ Builder.SetInsertPoint(CondBBTerminator->getIterator());
Builder.CreateCondBr(Cond, ExecBB, MergeBB);
CondBBTerminator->eraseFromParent();
Builder.SetInsertPoint(ExecBB);
Builder.CreateBr(MergeBB);
- Builder.SetInsertPoint(ExecBB, ExecBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(ExecBB->getTerminator()->getIterator());
Value *PreAccInst = preloadUnconditionally(AccessRange, Build, AccInst);
- Builder.SetInsertPoint(MergeBB, MergeBB->getTerminator()->getIterator());
+ Builder.SetInsertPoint(MergeBB->getTerminator()->getIterator());
auto *MergePHI = Builder.CreatePHI(
AccInstTy, 2, "polly.preload." + AccInst->getName() + ".merge");
Value *PreloadVal = MergePHI;
@@ -1420,8 +1420,7 @@ void IslNodeBuilder::allocateNewArrays(BBPair StartExitBlocks) {
// Insert the malloc call at polly.start
BasicBlock *StartBlock = std::get<0>(StartExitBlocks);
- Builder.SetInsertPoint(StartBlock,
- StartBlock->getTerminator()->getIterator());
+ Builder.SetInsertPoint(StartBlock->getTerminator()->getIterator());
auto *CreatedArray = Builder.CreateMalloc(
IntPtrTy, ConstantInt::get(Type::getInt64Ty(Ctx), Size),
ConstantInt::get(Type::getInt64Ty(Ctx), ArraySizeInt), nullptr,
@@ -1431,8 +1430,7 @@ void IslNodeBuilder::allocateNewArrays(BBPair StartExitBlocks) {
// Insert the free call at polly.exiting
BasicBlock *ExitingBlock = std::get<1>(StartExitBlocks);
- Builder.SetInsertPoint(ExitingBlock,
- ExitingBlock->getTerminator()->getIterator());
+ Builder.SetInsertPoint(ExitingBlock->getTerminator()->getIterator());
Builder.CreateFree(CreatedArray);
} else {
auto InstIt = Builder.GetInsertBlock()
@@ -1458,7 +1456,7 @@ bool IslNodeBuilder::preloadInvariantLoads() {
BasicBlock *PreLoadBB = SplitBlock(Builder.GetInsertBlock(),
Builder.GetInsertPoint(), GenDT, GenLI);
PreLoadBB->setName("polly.preload.begin");
- Builder.SetInsertPoint(PreLoadBB, PreLoadBB->begin());
+ Builder.SetInsertPoint(PreLoadBB->begin());
for (auto &IAClass : InvariantEquivClasses)
if (!preloadInvariantEquivClass(IAClass))
More information about the cfe-commits
mailing list