LLVM OpenMP 22.0.0git
masked.c
Go to the documentation of this file.
1// clang-format off
2// RUN: %libomp-compile-and-run | FileCheck %s
3// REQUIRES: ompt
4// GCC generates code that does not call the runtime for the master construct
5// XFAIL: gcc
6// clang-format on
7
8#include "callback.h"
9#include <omp.h>
10
11int main() {
12 int x = 0;
13#pragma omp parallel num_threads(2)
14 {
15#pragma omp master
16 {
18 x++;
19 }
21 }
22
23 printf("%" PRIu64 ": x=%d\n", ompt_get_thread_data()->value, x);
24
25 return 0;
26}
27
28// clang-format off
29// Check if libomp supports the callbacks for this test.
30// CHECK-NOT: {{^}}0: Could not register callback 'ompt_callback_masked'
31
32// CHECK: 0: NULL_POINTER=[[NULL:.*$]]
33
34// CHECK: {{^}}[[MASTER_ID:[0-9]+]]: ompt_event_masked_begin:
35// CHECK-SAME: parallel_id=[[PARALLEL_ID:[0-f]+]], task_id=[[TASK_ID:[0-f]+]],
36// CHECK-SAME: codeptr_ra=[[RETURN_ADDRESS:(0x)?[0-f]+]]{{[0-f][0-f]}}
37// CHECK: {{^}}[[MASTER_ID]]: fuzzy_address={{.*}}[[RETURN_ADDRESS]]
38// CHECK: {{^}}[[MASTER_ID]]: ompt_event_masked_end:
39// CHECK-SAME: parallel_id=[[PARALLEL_ID]], task_id=[[TASK_ID]],
40// CHECK-SAME: codeptr_ra=[[RETURN_ADDRESS_END:(0x)?[0-f]+]]
41// CHECK: {{^}}[[MASTER_ID]]: current_address={{.*}}[[RETURN_ADDRESS_END]]
42// clang-format on
#define print_fuzzy_address(id)
Definition callback.h:360
#define print_current_address(id)
Definition callback.h:255
static ompt_get_thread_data_t ompt_get_thread_data
Definition callback.h:158
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long value
int main()
Definition masked.c:11