[flang-commits] [flang] [flang][OpenMP] Reuse canonical default mapper names for nested mappings - fix issue #210402 (PR #212251)
via flang-commits
flang-commits at lists.llvm.org
Mon Aug 17 06:23:19 PDT 2026
laoshd wrote:
> Thanks for adding the previous test.
>
> I think there is still one adjacent direct-PDT case: direct reuse of an explicit PDT default mapper. With this test, the explicit mapper is declared as the kindless `pdt_omp_default_mapper`, but the direct `target data map(h4)` does not attach that mapper:
>
> ```fortran
> module direct_explicit_pdt_case
> type :: pdt(k)
> integer, kind :: k
> real(k) :: x
> end type
> !$omp declare mapper(default: pdt(4) :: v) map(tofrom: v%x)
> contains
> subroutine trigger
> type(pdt(4)) :: h4
> !$omp target data map(h4)
> !$omp end target data
> end subroutine
> end module
>
> ! CHECK-DAG: omp.declare_mapper @{{.*}}pdt_omp_default_mapper : !fir.type<{{.*}}TpdtK4
> ! CHECK-DAG: mapper(@{{.*}}pdt_omp_default_mapper)
> ```
Test case added. Also fixed problems that caused the test to fail.
https://github.com/llvm/llvm-project/pull/212251
More information about the flang-commits
mailing list