[all-commits] [llvm/llvm-project] fbaf2c: [OpenMP][Flang] Add "IsolatedFromAbove" trait to o...
Akash Banerjee via All-commits
all-commits at lists.llvm.org
Mon Nov 6 05:24:30 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: fbaf2c6cf7b207145dbda0d1cbadd0b446a21199
https://github.com/llvm/llvm-project/commit/fbaf2c6cf7b207145dbda0d1cbadd0b446a21199
Author: Akash Banerjee <Akash.Banerjee at amd.com>
Date: 2023-11-06 (Mon, 06 Nov 2023)
Changed paths:
M flang/lib/Lower/OpenMP.cpp
A flang/test/Driver/OpenMP/map-types-and-sizes.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenMP/FIR/array-bounds.f90
M flang/test/Lower/OpenMP/FIR/location.f90
M flang/test/Lower/OpenMP/FIR/target.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/location.f90
M flang/test/Lower/OpenMP/target.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[OpenMP][Flang] Add "IsolatedFromAbove" trait to omp.target
This patch adds the PFT lowering changes required for adding the IsolatedFromAbove trait to omp.target.
Key Changes:
- Add IsolatedFromAbove trait to target op in MLIR.
- Main reason for this change is to prevent CSE and other similar optimisations from crossing region boundaries for target operations. The link below has the discourse discussion surrounding this issue.
- Move implicit operand capturing to the PFT lowering stage.
- Implicit operands are first added as implicitly captured map_operands with their map_types set accordingly to indicate this. Later, all map_operands including implicit ones are added as block arguments.
- Remove `implicit` attribute from the `MapInfoOp`. This information is already captured by the `map_type`.
- The custom printer and parser for the map_types have been updated to show the `implicit` and `literal` map_types.
- Update related tests.
- This fixes #63555.
- This fixes #70488.
Commit: 72e2387c0528be72999beabf532e6929d3054e03
https://github.com/llvm/llvm-project/commit/72e2387c0528be72999beabf532e6929d3054e03
Author: Akash Banerjee <Akash.Banerjee at amd.com>
Date: 2023-11-06 (Mon, 06 Nov 2023)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Dialect/OpenMP/canonicalize.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-host.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device.mlir
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-llvm-target-device.mlir
M mlir/test/Target/LLVMIR/omptarget-region-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-parallel-llvm.mlir
Log Message:
-----------
[OpenMP][MLIR] Add "IsolatedFromAbove" trait to omp.target
This patch adds the MLIR translation changes required for add the IsolatedFromAbove and OutlineableOpenMPOpInterface traits to omp.target. It links the newly added block arguments to their corresponding llvm values.
Depends on #67164.
Commit: 63752399f8323460f685c8431aae7269ea3f27a2
https://github.com/llvm/llvm-project/commit/63752399f8323460f685c8431aae7269ea3f27a2
Author: Akash Banerjee <Akash.Banerjee at amd.com>
Date: 2023-11-06 (Mon, 06 Nov 2023)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/Transforms/CMakeLists.txt
R flang/lib/Optimizer/Transforms/OMPEarlyOutlining.cpp
R flang/test/Lower/OpenMP/FIR/omp-target-early-outlining.f90
M flang/test/Lower/OpenMP/function-filtering-2.f90
M flang/test/Lower/OpenMP/function-filtering.f90
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
Log Message:
-----------
[OpenMP][MLIR]OMPEarlyOutliningPass removal
This patch removes the OMPEarlyOutliningPass as it is no longer required. The implicit map operand capture has now been moved to the PFT lowering stage.
Depends on #67318.
Commit: be59fe5028b99c36c4bc9ccf6304216e50b337a8
https://github.com/llvm/llvm-project/commit/be59fe5028b99c36c4bc9ccf6304216e50b337a8
Author: Akash Banerjee <Akash.Banerjee at amd.com>
Date: 2023-11-06 (Mon, 06 Nov 2023)
Changed paths:
M openmp/libomptarget/test/offloading/fortran/basic-target-region-3D-array.f90
R openmp/libomptarget/test/offloading/fortran/failing/target_map_common_block2.f90
A openmp/libomptarget/test/offloading/fortran/target_map_common_block2.f90
Log Message:
-----------
[OpenMP][Flang]Fix some of the Fortan OpenMP Offloading tests
target_map_common_block2.f90
- Fix the extra space in the print message.
- #67164 fixes this. So moving it outside of failing and also removing XFAIL marker.
basic-target-region-3D-array.f90
- Corrected the check to account for the new lines printed.
Depends on #67319
Compare: https://github.com/llvm/llvm-project/compare/0a22a80c1b83...be59fe5028b9
More information about the All-commits
mailing list