[flang-commits] [flang] [Flang][OpenMP] MLIR lowering support for grainsize and num_tasks clause (PR #128490)

Tom Eccles via flang-commits flang-commits at lists.llvm.org
Wed May 7 03:46:53 PDT 2025


================
@@ -388,6 +409,27 @@ bool ClauseProcessor::processNowait(mlir::omp::NowaitClauseOps &result) const {
   return markClauseOccurrence<omp::clause::Nowait>(result.nowait);
 }
 
+bool ClauseProcessor::processNumTasks(
+    lower::StatementContext &stmtCtx,
+    mlir::omp::NumTasksClauseOps &result) const {
+  using numtasks = omp::clause::NumTasks;
+  if (auto *clause = findUniqueClause<numtasks>()) {
+    fir::FirOpBuilder &firOpBuilder = converter.getFirOpBuilder();
+    mlir::MLIRContext *context = firOpBuilder.getContext();
+    const auto &modifier =
+        std::get<std::optional<numtasks::Prescriptiveness>>(clause->t);
+    if (modifier) {
+      result.numTasksMod = mlir::omp::ClauseNumTasksTypeAttr::get(
+          context, mlir::omp::ClauseNumTasksType::Strict);
+    }
----------------
tblah wrote:

Same as for the grain size.

https://github.com/llvm/llvm-project/pull/128490


More information about the flang-commits mailing list