[all-commits] [llvm/llvm-project] 2a1f1b: [OpenMP][OpenMPIRBuilder] Move copyInput to a pass...
agozillon via All-commits
all-commits at lists.llvm.org
Fri Oct 6 07:47:43 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2a1f1b5fde0a2e03f94fa2cb5c7765d405fda0de
https://github.com/llvm/llvm-project/commit/2a1f1b5fde0a2e03f94fa2cb5c7765d405fda0de
Author: agozillon <Andrew.Gozillon at amd.com>
Date: 2023-10-06 (Fri, 06 Oct 2023)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
Log Message:
-----------
[OpenMP][OpenMPIRBuilder] Move copyInput to a passed in lambda function and re-order kernel argument load/stores (#68124)
This patch moves the existing copyInput function
into a lambda argument that can be defined
by a caller to the function.
This allows more flexibility in how the function
is defined, allowing Clang and MLIR to utilise
their own respective functions and types inside
of the lamba without affecting the OMPIRBuilder
itself.
The idea is to eventually replace/build on
the existing copyInput function that's used
and moved into OpenMPToLLVMIRTranslation.cpp
to a slightly more complex implementation
that uses MLIRs map information (primarily
ByRef and ByCapture information at the
moment).
The patch also moves kernel load stores to the top
of the kernel, prior to the first openmp runtime
invocation. Just makes the IR a little closer to Clang.
More information about the All-commits
mailing list