[flang-commits] [flang] [flang][cuda][NFC] Update to the new create APIs (PR #152050)
Valentin Clement バレンタイン クレメン via flang-commits
flang-commits at lists.llvm.org
Mon Aug 4 15:49:34 PDT 2025
https://github.com/clementval created https://github.com/llvm/llvm-project/pull/152050
Some operation creations were updated in flang directory but not all. Migrate the CUF ops to the new create APIs introduce in #147168
>From dc18b45a00bd776091be619a8d86cca70de4dc15 Mon Sep 17 00:00:00 2001
From: Valentin Clement <clementval at gmail.com>
Date: Mon, 4 Aug 2025 15:28:47 -0700
Subject: [PATCH] [flang][cuda][NFC] Update to the new create APIs
---
flang/lib/Lower/Allocatable.cpp | 16 ++++++++--------
flang/lib/Lower/Bridge.cpp | 4 ++--
flang/lib/Lower/ConvertVariable.cpp | 2 +-
flang/lib/Optimizer/Builder/FIRBuilder.cpp | 5 +++--
.../lib/Optimizer/Transforms/CUFOpConversion.cpp | 7 +++----
5 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/flang/lib/Lower/Allocatable.cpp b/flang/lib/Lower/Allocatable.cpp
index 15cd9770b35ba..ef16b0cd4c0f2 100644
--- a/flang/lib/Lower/Allocatable.cpp
+++ b/flang/lib/Lower/Allocatable.cpp
@@ -771,10 +771,11 @@ class AllocateStmtHelper {
// Keep return type the same as a standard AllocatableAllocate call.
mlir::Type retTy = fir::runtime::getModel<int>()(builder.getContext());
- return builder
- .create<cuf::AllocateOp>(
- loc, retTy, box.getAddr(), errmsg, stream, pinned, source, cudaAttr,
- errorManager.hasStatSpec() ? builder.getUnitAttr() : nullptr)
+
+ return cuf::AllocateOp::create(
+ builder, loc, retTy, box.getAddr(), errmsg, stream, pinned,
+ source, cudaAttr,
+ errorManager.hasStatSpec() ? builder.getUnitAttr() : nullptr)
.getResult();
}
@@ -840,10 +841,9 @@ static mlir::Value genCudaDeallocate(fir::FirOpBuilder &builder,
// Keep return type the same as a standard AllocatableAllocate call.
mlir::Type retTy = fir::runtime::getModel<int>()(builder.getContext());
- return builder
- .create<cuf::DeallocateOp>(
- loc, retTy, box.getAddr(), errmsg, cudaAttr,
- errorManager.hasStatSpec() ? builder.getUnitAttr() : nullptr)
+ return cuf::DeallocateOp::create(
+ builder, loc, retTy, box.getAddr(), errmsg, cudaAttr,
+ errorManager.hasStatSpec() ? builder.getUnitAttr() : nullptr)
.getResult();
}
diff --git a/flang/lib/Lower/Bridge.cpp b/flang/lib/Lower/Bridge.cpp
index 059b467655358..1e88431b0eb1f 100644
--- a/flang/lib/Lower/Bridge.cpp
+++ b/flang/lib/Lower/Bridge.cpp
@@ -3436,8 +3436,8 @@ class FirConverter : public Fortran::lower::AbstractConverter {
}
}
- auto op = builder->create<cuf::KernelOp>(
- loc, gridValues, blockValues, streamAddr, lbs, ubs, steps, n,
+ auto op = cuf::KernelOp::create(
+ *builder, loc, gridValues, blockValues, streamAddr, lbs, ubs, steps, n,
mlir::ValueRange(reduceOperands), builder->getArrayAttr(reduceAttrs));
builder->createBlock(&op.getRegion(), op.getRegion().end(), ivTypes,
ivLocs);
diff --git a/flang/lib/Lower/ConvertVariable.cpp b/flang/lib/Lower/ConvertVariable.cpp
index 647bd0d079985..88d17ac1ac785 100644
--- a/flang/lib/Lower/ConvertVariable.cpp
+++ b/flang/lib/Lower/ConvertVariable.cpp
@@ -1239,7 +1239,7 @@ static void instantiateLocal(Fortran::lower::AbstractConverter &converter,
cuf::DataAttributeAttr dataAttr =
Fortran::lower::translateSymbolCUFDataAttribute(
builder->getContext(), *sym);
- builder->create<cuf::FreeOp>(loc, fir::getBase(exv), dataAttr);
+ cuf::FreeOp::create(*builder, loc, fir::getBase(exv), dataAttr);
});
}
}
diff --git a/flang/lib/Optimizer/Builder/FIRBuilder.cpp b/flang/lib/Optimizer/Builder/FIRBuilder.cpp
index eaad54eb9eec2..9867d2efecbf9 100644
--- a/flang/lib/Optimizer/Builder/FIRBuilder.cpp
+++ b/flang/lib/Optimizer/Builder/FIRBuilder.cpp
@@ -324,8 +324,9 @@ mlir::Value fir::FirOpBuilder::createTemporaryAlloc(
getRegion().getParentOfType<mlir::omp::OutlineableOpenMPOpInterface>();
if (cudaAttr) {
cuf::DataAttributeAttr attr = cuf::getDataAttribute(getContext(), cudaAttr);
- return create<cuf::AllocOp>(loc, type, /*unique_name=*/llvm::StringRef{},
- name, attr, lenParams, shape, attrs);
+ return cuf::AllocOp::create(*this, loc, type,
+ /*unique_name=*/llvm::StringRef{}, name, attr,
+ lenParams, shape, attrs);
} else {
return create<fir::AllocaOp>(loc, type, /*unique_name=*/llvm::StringRef{},
name, pinned, lenParams, shape, attrs);
diff --git a/flang/lib/Optimizer/Transforms/CUFOpConversion.cpp b/flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
index cd7d33091f345..9834b0499b930 100644
--- a/flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
+++ b/flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
@@ -860,10 +860,9 @@ struct CUFLaunchOpConversion
if (auto global = symTab.lookup<fir::GlobalOp>(
addrOfOp.getSymbol().getRootReference().getValue())) {
if (cuf::isRegisteredDeviceGlobal(global)) {
- arg = rewriter
- .create<cuf::DeviceAddressOp>(op.getLoc(),
- addrOfOp.getType(),
- addrOfOp.getSymbol())
+ arg = cuf::DeviceAddressOp::create(rewriter, op.getLoc(),
+ addrOfOp.getType(),
+ addrOfOp.getSymbol())
.getResult();
}
}
More information about the flang-commits
mailing list