[Mlir-commits] [flang] [llvm] [mlir] [flang][mlir][OpenMP] Support iterator modifier in declare mapper map clause (PR #215485)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Fri Oct 23 00:14:56 PDT 2026
================
@@ -215,7 +215,7 @@ Parser/Semantics, MLIR, Lowering, or the OpenMPIRBuilder.
| ompx and omx sentinel for implementation extensions in free/fixed source | <span class="part">partial</span> | | Extension semantics coverage exists for `ompx` forms (`flang/test/Semantics/OpenMP/ompx-bare.f90`), while broader sentinel coverage (including fixed-form `omx`) remains limited. | [llvm/llvm-project#111106](https://github.com/llvm/llvm-project/pull/111106) |
| allow copyprivate and nowait clause on starting directive of construct | <span class="good">done</span> | | Semantics coverage includes valid starting-directive uses (`!$omp single nowait`, `!$omp single copyprivate(...)`) in `flang/test/Semantics/OpenMP/single04.f90`. | [llvm/llvm-project#204339](https://github.com/llvm/llvm-project/pull/204339), [llvm/llvm-project#205607](https://github.com/llvm/llvm-project/pull/205607) |
| step modifier | <span class="none">unclaimed</span> | | Add parser+semantics acceptance/diagnostics for OpenMP 5.2 step-modifier forms, then add lowering coverage showing emitted loop metadata/ops for accepted cases. | |
-| declare mapper iterator modifier | <span class="none">unclaimed</span> | | Parser and semantics should accept iterator-modified DECLARE MAPPER forms, then lowering must thread iterator bounds through map info generation (see related TODO test `flang/test/Lower/OpenMP/Todo/declare-mapper-iterator.f90`). | |
+| declare mapper iterator modifier | <span class="progress">in progress</span> | ravurvi20 | Lowering, MLIR handling, and OpenMP/LLVM codegen support the `iterator` modifier in a `map` clause inside `declare mapper` (`flang/test/Lower/OpenMP/map-iterator.f90`); array-section iterated components are diagnosed as unsupported for now. | [llvm/llvm-project#215485](https://github.com/llvm/llvm-project/pull/215485) |
----------------
MattPD wrote:
Besides array sections, Flang stops with a not-yet-implemented message for these forms: nested derived-type members, members or parents with the ALLOCATABLE or POINTER attribute, members with a non-default lower bound, and iterators with more than one dimension. For the last form, the message comes from translation to LLVM IR.
Could the `declare mapper iterator modifier` row list these forms? The PR description could also state the supported subset.
https://github.com/llvm/llvm-project/pull/215485
More information about the Mlir-commits
mailing list