1// RUN: %libomp-compile-and-run | FileCheck %s
2// REQUIRES: ompt
3#include "callback.h"
4#include "omp_testsuite.h"
5#include <omp.h>
6
7int main()
8{
9 go_parallel_nthreads(1);
10 ompt_set_callback(ompt_callback_parallel_begin, NULL);
11 go_parallel_nthreads(1);
12
13 // Check if libomp supports the callbacks for this test.
14 // CHECK-NOT: {{^}}0: Could not register callback 'ompt_callback_idle'
15
16 // CHECK: 0: NULL_POINTER=[[NULL:.*$]]
17
18 // CHECK: {{^}}[[THREAD_ID:[0-9]+]]: ompt_event_parallel_begin:
19 // CHECK: {{^}}[[THREAD_ID]]: ompt_event_parallel_end:
20 // CHECK-NOT: {{^}}[[THREAD_ID]]: ompt_event_parallel_begin:
21 // CHECK: {{^}}[[THREAD_ID]]: ompt_event_parallel_end:
22
23 return get_exit_value();
24}
25

source code of openmp/runtime/test/ompt/misc/unset_callback.c