[all-commits] [llvm/llvm-project] db0901: [flang][OpenMP] Implicitly map allocatable record ...

Kareem Ergawy via All-commits all-commits at lists.llvm.org
Tue Dec 17 20:38:19 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: db09014a0747931026e31f40c4f541d110a5298c
      https://github.com/llvm/llvm-project/commit/db09014a0747931026e31f40c4f541d110a5298c
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-12-18 (Wed, 18 Dec 2024)

  Changed paths:
    A flang/include/flang/Lower/DirectivesCommon.h
    M flang/lib/Lower/Bridge.cpp
    R flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    A flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    A offload/test/offloading/fortran/explicit-and-implicit-record-field-mapping.f90
    A offload/test/offloading/fortran/implicit-record-field-mapping.f90

  Log Message:
  -----------
  [flang][OpenMP] Implicitly map allocatable record fields (#117867)

This is a starting PR to implicitly map allocatable record fields.

This PR contains the following changes:
1. Re-purposes some of the utils used in `Lower/OpenMP.cpp` so that
   these utils work on the `mlir::Value` level rather than the
   `semantics::Symbol` level. This takes one step towards to enabling
   MLIR passes to more easily do some lowering themselves (e.g. creating
   `omp.map.bounds` ops for implicitely caputured data like this PR
   does).
2. Adds support for implicitely capturing and mapping allocatable fields
   in record types.

There is quite some distant to still cover to have full support for
this. I added a number of todos to guide further development.

Co-authored-by: Andrew Gozillon <andrew.gozillon at amd.com>

Co-authored-by: Andrew Gozillon <andrew.gozillon at amd.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list