[flang-commits] [flang] [flang][cuda] Lower launch_bounds values (PR #81537)
Valentin Clement バレンタイン クレメン via flang-commits
flang-commits at lists.llvm.org
Mon Feb 12 20:58:14 PST 2024
================
@@ -524,6 +524,43 @@ static void addSymbolAttribute(mlir::func::FuncOp func,
mlir::StringAttr::get(&mlirContext, name));
}
+static void
+setCUDAAttributes(mlir::func::FuncOp func,
+ const Fortran::semantics::Symbol *sym,
+ std::optional<Fortran::evaluate::characteristics::Procedure>
+ characteristic) {
+ if (characteristic && characteristic->cudaSubprogramAttrs) {
+ func.getOperation()->setAttr(
+ fir::getCUDAAttrName(),
+ fir::getCUDAProcAttribute(func.getContext(),
+ *characteristic->cudaSubprogramAttrs));
+ }
+
+ if (sym) {
+ if (auto details =
+ sym->GetUltimate()
+ .detailsIf<Fortran::semantics::SubprogramDetails>()) {
+ if (!details->cudaLaunchBounds().empty()) {
+ assert(details->cudaLaunchBounds().size() >= 2 &&
+ "expect at least 2 values");
+ mlir::Type i64Ty = mlir::IntegerType::get(func.getContext(), 64);
+ auto maxTBPAttr =
----------------
clementval wrote:
Thanks for catching this!
https://github.com/llvm/llvm-project/pull/81537
More information about the flang-commits
mailing list