aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/FileCheck/FileCheck.cpp
diff options
context:
space:
mode:
authorGuilherme Valarini <guilherme.a.valarini@gmail.com>2022-12-14 13:46:23 -0300
committerGuilherme Valarini <guilherme.a.valarini@gmail.com>2022-12-14 14:03:32 -0300
commit89c82c83949b2bea26ea574c88c1ceada399d7d8 (patch)
treee9433eb8136c978175ad48352202fd47d410ebf0 /llvm/lib/FileCheck/FileCheck.cpp
parent2afc90a2de37d4d6eefedf813ac0e26a492f58ad (diff)
downloadllvm-89c82c83949b2bea26ea574c88c1ceada399d7d8.zip
llvm-89c82c83949b2bea26ea574c88c1ceada399d7d8.tar.gz
llvm-89c82c83949b2bea26ea574c88c1ceada399d7d8.tar.bz2
[OpenMP] Add non-blocking support for target nowait regions
This patch better integrates the target nowait functions with the tasking runtime. It splits the nowait execution into two stages: a dispatch stage, which triggers all the necessary asynchronous device operations and stores a set of post-processing procedures that must be executed after said ops; and a synchronization stage, responsible for synchronizing the previous operations in a non-blocking manner and running the appropriate post-processing functions. Suppose during the synchronization stage the operations are not completed. In that case, the attached hidden helper task is re-enqueued to any hidden helper thread to be later synchronized, allowing other target nowait regions to be concurrently dispatched. Reviewed By: jdoerfert, tianshilei1992 Differential Revision: https://reviews.llvm.org/D132005
Diffstat (limited to 'llvm/lib/FileCheck/FileCheck.cpp')
0 files changed, 0 insertions, 0 deletions