1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/include/llvm/Frontend/OpenMP
Johannes Doerfert df82045809 [OpenMP] Detect SPMD compatible kernels and execute them as such
In the spirit of TRegions [0], this patch analyzes a kernel and tracks
if it can be executed in SPMD-mode. If so, we flip the arguments of
the __kmpc_target_init and deinit call to enable the mode. We also
update the `<kernel>_exec_mode` flag to indicate to the runtime we
changed the mode to SPMD.

The code analysis is done interprocedurally by extending the
AAKernelInfo abstract attribute to track SPMD compatibility as well.

[0] https://link.springer.com/chapter/10.1007/978-3-030-28596-8_11

Differential Revision: https://reviews.llvm.org/D102307
2021-07-10 12:32:51 -05:00
..
CMakeLists.txt
OMP.td [OpenMP] Implement '#pragma omp unroll'. 2021-06-10 14:30:17 -05:00
OMPConstants.h [OpenMP] Detect SPMD compatible kernels and execute them as such 2021-07-10 12:32:51 -05:00
OMPContext.h
OMPGridValues.h
OMPIRBuilder.h [OpenMP] Unified entry point for SPMD & generic kernels in the device RTL 2021-07-10 12:32:50 -05:00
OMPKinds.def [OpenMP] Unified entry point for SPMD & generic kernels in the device RTL 2021-07-10 12:32:50 -05:00