From aaab19cbe90ce06a91ebe6b6461441860c86a206 Mon Sep 17 00:00:00 2001 From: max Date: Fri, 25 Jul 2025 17:44:01 -0400 Subject: [PATCH] [mlir][NFC] update `mlir/lib` create APIs (35/n) See https://github.com/llvm/llvm-project/pull/147168 for more info. --- mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp | 4 ++-- mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp | 3 ++- mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp | 8 +++++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp b/mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp index 63eb6c58e87a7..3cfbd898e49e2 100644 --- a/mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp +++ b/mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp @@ -579,8 +579,8 @@ LLVM::CallOp FunctionCallBuilder::create(Location loc, OpBuilder &builder, auto function = [&] { if (auto function = module.lookupSymbol(functionName)) return function; - return OpBuilder::atBlockEnd(module.getBody()) - .create(loc, functionName, functionType); + auto builder = OpBuilder::atBlockEnd(module.getBody()); + return LLVM::LLVMFuncOp::create(builder, loc, functionName, functionType); }(); return LLVM::CallOp::create(builder, loc, function, arguments); } diff --git a/mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp b/mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp index b09afd9460fc6..855c582a5c363 100644 --- a/mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp +++ b/mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp @@ -698,7 +698,8 @@ static func::FuncOp createCtlzFunc(ModuleOp *module, Type elementType) { scf::IfOp ifOp = scf::IfOp::create(builder, elementType, inputEqZero, /*addThenBlock=*/true, /*addElseBlock=*/true); - ifOp.getThenBodyBuilder().create(loc, bitWidthValue); + auto thenBuilder = ifOp.getThenBodyBuilder(); + scf::YieldOp::create(thenBuilder, loc, bitWidthValue); auto elseBuilder = ImplicitLocOpBuilder::atBlockEnd(loc, &ifOp.getElseRegion().front()); diff --git a/mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp b/mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp index f2f7f7057a7f6..9bee200953098 100644 --- a/mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp +++ b/mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp @@ -92,11 +92,13 @@ struct SPIRVInlinerInterface : public DialectInlinerInterface { /// as necessary. void handleTerminator(Operation *op, Block *newDest) const final { if (auto returnOp = dyn_cast(op)) { - OpBuilder(op).create(op->getLoc(), newDest); + auto builder = OpBuilder(op); + spirv::BranchOp::create(builder, op->getLoc(), newDest); op->erase(); } else if (auto retValOp = dyn_cast(op)) { - OpBuilder(op).create(retValOp->getLoc(), newDest, - retValOp->getOperands()); + auto builder = OpBuilder(op); + spirv::BranchOp::create(builder, retValOp->getLoc(), newDest, + retValOp->getOperands()); op->erase(); } }