[all-commits] [llvm/llvm-project] 00de63: [MLIR][OpenMP] Introduce overlapped record type ma...
agozillon via All-commits
all-commits at lists.llvm.org
Mon Nov 24 07:24:02 PST 2025
Branch: refs/heads/users/agozillo/declare-target-to-2
Home: https://github.com/llvm/llvm-project
Commit: 00de635d7889b35c7436fb5edfdabe11f21bd02d
https://github.com/llvm/llvm-project/commit/00de635d7889b35c7436fb5edfdabe11f21bd02d
Author: agozillon <Andrew.Gozillon at amd.com>
Date: 2025-11-24 (Mon, 24 Nov 2025)
Changed paths:
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-data-use-dev-ordering.mlir
A mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait.mlir
A mlir/test/Target/LLVMIR/omptarget-overlapping-record-member-map.mlir
M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
A offload/test/offloading/fortran/dtype-member-overlap-map.f90
Log Message:
-----------
[MLIR][OpenMP] Introduce overlapped record type map support
This PR introduces a new additional type of map lowering for record types that Clang currently supports, in which a user can map a top-level record type and then individual members with different mapping, effectively creating a sort of "overlapping" mapping that we attempt to cut around.
This is currently most predominantly used in Fortran, when mapping descriptors and there data, we map the descriptor and its data with separate map modifiers and "cut around" the pointer data, so that wedo not overwrite it unless the runtime deems it a neccesary action based on its reference counting mechanism. However, it is a mechanism that will come in handy/trigger when a user explitily maps a record type (derived type or structure) and then explicitly maps a member with a different map type.
These additions were predominantly in the OpenMPToLLVMIRTranslation.cpp file and phase, however, one Flang test that checks end-to-end IR compilation (as far as we care for now at least) was altered.
2/3 required PRs to enable declare target to mapping, should look at PR 3/3 to check for full green passes (this one will fail a number due to some dependencies).
Co-authored-by: Raghu Maddhipatla raghu.maddhipatla 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