Introduce a conversion pass from SCF parallel loops to OpenMP dialect constructs - parallel region and workshare loop. Loops with reductions are not supported because the OpenMP dialect cannot model them yet. The conversion currently targets only one level of parallelism, i.e. only one top-level `omp.parallel` operation is produced even if there are nested `scf.parallel` operations that could be mapped to `omp.wsloop`. Nested parallelism support is left for future work. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D91982
18 lines
273 B
CMake
18 lines
273 B
CMake
add_mlir_conversion_library(MLIRSCFToOpenMP
|
|
SCFToOpenMP.cpp
|
|
|
|
ADDITIONAL_HEADER_DIRS
|
|
${MLIR_MAIN_INCLUDE_DIR}/mlir/Conversion/SCFToStandard
|
|
|
|
DEPENDS
|
|
MLIRConversionPassIncGen
|
|
|
|
LINK_COMPONENTS
|
|
Core
|
|
|
|
LINK_LIBS PUBLIC
|
|
MLIROpenMP
|
|
MLIRSCF
|
|
MLIRTransforms
|
|
)
|