[Openmp-commits] [PATCH] D71989: [OpenMP][IRBuilder][WIP] Prototype `omp task` support
Johannes Doerfert via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Sun Dec 29 23:21:32 PST 2019
jdoerfert created this revision.
jdoerfert added reviewers: rogfer01, ABataev, JonChesterfield, kiranchandramohan, fghanim.
Herald added subscribers: guansong, bollu, hiraditya.
Herald added projects: OpenMP, LLVM.
NOTE: The patch is not complete and lacks testing but it should allow
people to see how the IRBuilder will evolve and give feedback.
This patch adds support for `omp task` to the OpenMPIRBuilder. To
simplify this *and* to make optimizations of tasks possible, we
introduce a new interface: `__kmpc_task`.
Similar to TRegions, the new interface exposes front-end information in
a direct way. More importantly, the task create and task issue step are
conceptually not separated anymore as it is, together with other
non-user related code, hidden inside `__kmpc_task`.
Most of the properties of a task are supported already, incl. dependences.
The outlining logic used for `omp parallel` was (slightly) generalized
and reused but better abstractions are needed.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D71989
Files:
llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
openmp/runtime/src/kmp.h
openmp/runtime/src/kmp_tasking.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71989.235555.patch
Type: text/x-patch
Size: 43830 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20191230/9c3d943e/attachment-0001.bin>
More information about the Openmp-commits
mailing list