Files
clang-p2996/openmp/tools/archer/tests/task/task_early_fulfill.c
Joachim Protze e99207feb4 [OpenMP][Tool] Handle detached tasks in Archer
Since detached tasks are supported by clang and the OpenMP runtime, Archer
must expect to receive the corresponding callbacks.

This patch adds support to interpret the synchronization semantics of
omp_fulfill_event and cleans up the handling of task switches.
2020-11-03 13:15:32 +01:00

27 lines
676 B
C

// RUN: %libarcher-compile -fopenmp-version=50 && env OMP_NUM_THREADS='3' \
// RUN: %libarcher-run
//| FileCheck %s
// Checked gcc 9.2 still does not support detach clause on task construct.
// UNSUPPORTED: gcc-4, gcc-5, gcc-6, gcc-7, gcc-8, gcc-9
// clang supports detach clause since version 11.
// UNSUPPORTED: clang-10, clang-9, clang-8, clang-7
// icc compiler does not support detach clause.
// UNSUPPORTED: icc
// REQUIRES: tsan
#include <omp.h>
#include <stdio.h>
int main() {
#pragma omp parallel
#pragma omp master
{
omp_event_handle_t event;
#pragma omp task detach(event) if (0)
{ omp_fulfill_event(event); }
#pragma omp taskwait
}
return 0;
}