[OpenMP] libomp: runtime part of omp_all_memory task dependence implementation.
authorAndreyChurbanov <andrey.churbanov@intel.com>
Wed, 8 Sep 2021 13:55:32 +0000 (16:55 +0300)
committerAndreyChurbanov <andrey.churbanov@intel.com>
Wed, 8 Sep 2021 13:55:32 +0000 (16:55 +0300)
commitd40108e0af08389a791c7b6783f416486068be96
tree64d2e33067e11c6a0826ffab8db8ffd18f80addb
parent2c6d90d7410b77798699ff2fff4182d83db79164
[OpenMP] libomp: runtime part of omp_all_memory task dependence implementation.

New omp_all_memory task dependence type is implemented.
Library recognizes the new type via either
(dependence_address == NULL && dependence_flag == 0x80)
or
(dependence_address == SIZE_MAX).
A task with new dependence type depends on each preceding task
with any dependence type (kind of a dependence barrier).

Differential Revision: https://reviews.llvm.org/D108574
openmp/runtime/src/kmp.h
openmp/runtime/src/kmp_taskdeps.cpp
openmp/runtime/src/kmp_taskdeps.h
openmp/runtime/test/tasking/kmp_task_depend_all.c [new file with mode: 0644]
openmp/runtime/test/tasking/kmp_taskwait_depend_all.c [new file with mode: 0644]