diff --git a/mlir/include/mlir/IR/Builders.h b/mlir/include/mlir/IR/Builders.h index 04a8bddc3cd59..6fb71ccefda15 100644 --- a/mlir/include/mlir/IR/Builders.h +++ b/mlir/include/mlir/IR/Builders.h @@ -225,7 +225,7 @@ class OpBuilder : public Builder { explicit OpBuilder(Region *region, Listener *listener = nullptr) : OpBuilder(region->getContext(), listener) { if (!region->empty()) - setInsertionPoint(®ion->front(), region->front().begin()); + setInsertionPointToStart(®ion->front()); } explicit OpBuilder(Region ®ion, Listener *listener = nullptr) : OpBuilder(®ion, listener) {} diff --git a/mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp b/mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp index 53e73ec0d81bf..08b451f7d5b32 100644 --- a/mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp +++ b/mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRVPass.cpp @@ -76,8 +76,7 @@ void GPUToSPIRVPass::runOnOperation() { // module inside the original GPU module, as that's the expectaion of the // normal GPU compilation pipeline. if (targetEnvSupportsKernelCapability(moduleOp)) { - builder.setInsertionPoint(moduleOp.getBody(), - moduleOp.getBody()->begin()); + builder.setInsertionPointToStart(moduleOp.getBody()); } else { builder.setInsertionPoint(moduleOp.getOperation()); } diff --git a/mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp b/mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp index 87c0936cee229..ba31936af5510 100644 --- a/mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp +++ b/mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp @@ -706,7 +706,7 @@ class ExecutionModePattern Block *block = rewriter.createBlock(®ion); // Initialize the struct and set the execution mode value. - rewriter.setInsertionPoint(block, block->begin()); + rewriter.setInsertionPointToStart(block); Value structValue = rewriter.create(loc, structType); Value executionMode = rewriter.create( loc, llvmI32Type, diff --git a/mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp b/mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp index fe002359c2022..dd20412ee7080 100644 --- a/mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp +++ b/mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp @@ -115,7 +115,7 @@ handleInlinedAllocas(Operation *call, stackPtr = builder.create( call->getLoc(), LLVM::LLVMPointerType::get(call->getContext())); } - builder.setInsertionPoint(callerEntryBlock, callerEntryBlock->begin()); + builder.setInsertionPointToStart(callerEntryBlock); for (auto &[allocaOp, arraySize, shouldInsertLifetime] : allocasToMove) { auto newConstant = builder.create( allocaOp->getLoc(), allocaOp.getArraySize().getType(), arraySize); diff --git a/mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp b/mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp index 71eb59d40836c..f0215742f2cf8 100644 --- a/mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp @@ -451,7 +451,7 @@ static std::optional allocateSubviewGPUMemoryInAddressSpace( shape.push_back(value.getSExtValue()); } - builder.setInsertionPoint(&funcOp.front(), funcOp.front().begin()); + builder.setInsertionPointToStart(&funcOp.front()); auto type = MemRefType::get( shape, subview.getType().getElementType(), MemRefLayoutAttrInterface{}, gpu::AddressSpaceAttr::get(builder.getContext(), addressSpace)); diff --git a/mlir/lib/Dialect/SCF/IR/SCF.cpp b/mlir/lib/Dialect/SCF/IR/SCF.cpp index a07593be2fc5e..eded1c394f126 100644 --- a/mlir/lib/Dialect/SCF/IR/SCF.cpp +++ b/mlir/lib/Dialect/SCF/IR/SCF.cpp @@ -805,7 +805,7 @@ mlir::scf::replaceAndCastForOpIterArg(RewriterBase &rewriter, scf::ForOp forOp, // 3. Inject an incoming cast op at the beginning of the block for the bbArg // corresponding to the `replacement` value. OpBuilder::InsertionGuard g(rewriter); - rewriter.setInsertionPoint(&newBlock, newBlock.begin()); + rewriter.setInsertionPointToStart(&newBlock); BlockArgument newRegionIterArg = newForOp.getTiedLoopRegionIterArg( &newForOp->getOpOperand(operand.getOperandNumber())); Value castIn = castFn(rewriter, newForOp.getLoc(), oldType, newRegionIterArg); diff --git a/mlir/lib/Dialect/SCF/Utils/Utils.cpp b/mlir/lib/Dialect/SCF/Utils/Utils.cpp index 247311d66ff94..e341c3744f1d8 100644 --- a/mlir/lib/Dialect/SCF/Utils/Utils.cpp +++ b/mlir/lib/Dialect/SCF/Utils/Utils.cpp @@ -456,8 +456,7 @@ FailureOr mlir::loopUnrollByFactor( // Create epilogue clean up loop starting at 'upperBoundUnrolled'. if (generateEpilogueLoop) { OpBuilder epilogueBuilder(forOp->getContext()); - epilogueBuilder.setInsertionPoint(forOp->getBlock(), - std::next(Block::iterator(forOp))); + epilogueBuilder.setInsertionPointAfter(forOp); auto epilogueForOp = cast(epilogueBuilder.clone(*forOp)); epilogueForOp.setLowerBound(upperBoundUnrolled); diff --git a/mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp b/mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp index 3297740a5f3ae..655555f883544 100644 --- a/mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp +++ b/mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp @@ -71,7 +71,7 @@ createFuncFromCluster(OpBuilder &b, const SmallVector &cluster, : b.getFunctionType(ValueRange(inputs).getTypes(), shape.getType()); shape::FuncOp fnOp = b.create(loc, fnName, fnType); Block *block = fnOp.addEntryBlock(); - b.setInsertionPoint(block, block->end()); + b.setInsertionPointToEnd(block); IRMapping bvm; if (cluster.empty()) { bvm.map(shape, fnOp.getArgument(0)); diff --git a/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp b/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp index 2289fd1ff1364..682eb82ac5840 100644 --- a/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp +++ b/mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp @@ -1720,7 +1720,7 @@ struct WarpOpScfForOp : public OpRewritePattern { auto newForOp = rewriter.create( forOp.getLoc(), forOp.getLowerBound(), forOp.getUpperBound(), forOp.getStep(), newOperands); - rewriter.setInsertionPoint(newForOp.getBody(), newForOp.getBody()->begin()); + rewriter.setInsertionPointToStart(newForOp.getBody()); SmallVector warpInput(newForOp.getRegionIterArgs().begin(), newForOp.getRegionIterArgs().end()); @@ -1747,7 +1747,7 @@ struct WarpOpScfForOp : public OpRewritePattern { yieldOperands.push_back(operand); rewriter.eraseOp(forOp.getBody()->getTerminator()); rewriter.mergeBlocks(forOp.getBody(), innerWarp.getBody(), argMapping); - rewriter.setInsertionPoint(innerWarp.getBody(), innerWarp.getBody()->end()); + rewriter.setInsertionPointToEnd(innerWarp.getBody()); rewriter.create(innerWarp.getLoc(), yieldOperands); rewriter.setInsertionPointAfter(innerWarp); if (!innerWarp.getResults().empty()) diff --git a/mlir/lib/Target/LLVMIR/ModuleImport.cpp b/mlir/lib/Target/LLVMIR/ModuleImport.cpp index 1f63519373eca..3a61a373ecaeb 100644 --- a/mlir/lib/Target/LLVMIR/ModuleImport.cpp +++ b/mlir/lib/Target/LLVMIR/ModuleImport.cpp @@ -2041,7 +2041,7 @@ LogicalResult ModuleImport::processFunction(llvm::Function *func) { // Insert the function at the end of the module. OpBuilder::InsertionGuard guard(builder); - builder.setInsertionPoint(mlirModule.getBody(), mlirModule.getBody()->end()); + builder.setInsertionPointToEnd(mlirModule.getBody()); Location loc = debugImporter->translateFuncLocation(func); LLVMFuncOp funcOp = builder.create( diff --git a/mlir/lib/Transforms/Utils/FoldUtils.cpp b/mlir/lib/Transforms/Utils/FoldUtils.cpp index e5f78abf7fca5..c43f439525526 100644 --- a/mlir/lib/Transforms/Utils/FoldUtils.cpp +++ b/mlir/lib/Transforms/Utils/FoldUtils.cpp @@ -204,7 +204,7 @@ Value OperationFolder::getOrCreateConstant(Block *block, Dialect *dialect, // Find an insertion point for the constant. auto *insertRegion = getInsertionRegion(interfaces, block); auto &entry = insertRegion->front(); - rewriter.setInsertionPoint(&entry, entry.begin()); + rewriter.setInsertionPointToStart(&entry); // Get the constant map for the insertion region of this operation. // Use erased location since the op is being built at the front of block. @@ -242,7 +242,7 @@ OperationFolder::processFoldResults(Operation *op, // insertion region. auto *insertRegion = getInsertionRegion(interfaces, op->getBlock()); auto &entry = insertRegion->front(); - rewriter.setInsertionPoint(&entry, entry.begin()); + rewriter.setInsertionPointToStart(&entry); // Get the constant map for the insertion region of this operation. auto &uniquedConstants = foldScopes[insertRegion];