1 // RUN: %libomp-compile-and-run | %sort-threads | FileCheck %s 2 // REQUIRES: ompt 3 #include "callback.h" 4 #include <omp.h> 5 6 int main() { 7 8 int condition = 0; 9 int x = 0; 10 omp_set_nested(1); 11 #pragma omp parallel num_threads(2) 12 { 13 #pragma omp parallel num_threads(2) 14 { 15 OMPT_SIGNAL(condition); 16 OMPT_WAIT(condition, 4); 17 } 18 } 19 20 // CHECK: 0: NULL_POINTER=[[NULL:.*$]] 21 22 // CHECK: {{^}}[[MASTER_ID:[0-9]+]]: ompt_event_thread_begin: 23 // CHECK-SAME: thread_type=ompt_thread_initial=1, thread_id=[[MASTER_ID]] 24 // CHECK: {{^}}[[MASTER_ID]]: ompt_event_thread_end: 25 // CHECK-SAME: thread_id=[[MASTER_ID]] 26 // CHECK: {{^}}[[WORKER_ID1:[0-9]+]]: ompt_event_thread_begin: 27 // CHECK-SAME: thread_type=ompt_thread_worker=2, thread_id=[[WORKER_ID1]] 28 // CHECK: {{^}}[[WORKER_ID1]]: ompt_event_thread_end: 29 // CHECK-SAME: thread_id=[[WORKER_ID1]] 30 // CHECK: {{^}}[[WORKER_ID2:[0-9]+]]: ompt_event_thread_begin: 31 // CHECK-SAME: thread_type=ompt_thread_worker=2, thread_id=[[WORKER_ID2]] 32 // CHECK: {{^}}[[WORKER_ID2]]: ompt_event_thread_end: 33 // CHECK-SAME: thread_id=[[WORKER_ID2]] 34 // CHECK: {{^}}[[WORKER_ID3:[0-9]+]]: ompt_event_thread_begin: 35 // CHECK-SAME: thread_type=ompt_thread_worker=2, thread_id=[[WORKER_ID3]] 36 // CHECK: {{^}}[[WORKER_ID3]]: ompt_event_thread_end: 37 // CHECK-SAME: thread_id=[[WORKER_ID3]] 38 39 return 0; 40 } 41