[all-commits] [llvm/llvm-project] 45a960: [Flang][OpenMP][MLIR] Add early outlining pass for...
Jan Sjodin via All-commits
all-commits at lists.llvm.org
Thu Jul 13 06:18:18 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 45a9604417dbcb73d1b2fb3d7f8824a97d4b00c1
https://github.com/llvm/llvm-project/commit/45a9604417dbcb73d1b2fb3d7f8824a97d4b00c1
Author: Jan Sjodin <jan_sjodin at yahoo.com>
Date: 2023-07-13 (Thu, 13 Jul 2023)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
A flang/lib/Optimizer/Transforms/OMPEarlyOutlining.cpp
A flang/test/Driver/omp-cse-region-boundary.f90
M flang/test/Fir/external-mangling.fir
A flang/test/Lower/OpenMP/omp-target-early-outlining.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPInterfaces.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Dialect/OpenMP/attr.mlir
A mlir/test/Target/LLVMIR/omptarget-region-llvm-target-device.mlir
Log Message:
-----------
[Flang][OpenMP][MLIR] Add early outlining pass for omp.target operations to flang
This patch implements an early outlining transform of omp.target operations in
flang. The pass is needed because optimizations may cross target op region
boundaries, but with the outlining the resulting functions only contain a
single omp.target op plus a func.return, so there should not be any opportunity
to optimize across region boundaries.
The patch also adds an interface to be able to store and retrieve the parent
function name of the original target operation. This is needed to be able to
create correct kernel function names when lowering to LLVM-IR.
Reviewed By: kiranchandramohan, domada
Differential Revision: https://reviews.llvm.org/D154879
More information about the All-commits
mailing list