diff options
| author | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2019-02-28 20:55:39 +0000 |
|---|---|---|
| committer | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2019-02-28 20:55:39 +0000 |
| commit | ad1ad7ae8be3807202669619dc2d9aa3dc650215 (patch) | |
| tree | 5cc4278e3057d941359e0a8b096c61248bf9a6f1 /openmp/runtime/test/ompt | |
| parent | 12b75594ed86d67b909bf1e6b0429ecdde6a4547 (diff) | |
| download | bcm5719-llvm-ad1ad7ae8be3807202669619dc2d9aa3dc650215.tar.gz bcm5719-llvm-ad1ad7ae8be3807202669619dc2d9aa3dc650215.zip | |
[OpenMP][OMPT] Distinguish different barrier kinds
This change makes the runtime decide the intended use of each barrier
invocation, for the OMPT synchronization tool callbacks. The OpenMP 5.0
specification defines four possible barrier kinds -- implicit, explicit,
implementation, and just normal barrier.
Patch by Hansang Bae
Differential Revision: https://reviews.llvm.org/D58247
llvm-svn: 355140
Diffstat (limited to 'openmp/runtime/test/ompt')
| -rw-r--r-- | openmp/runtime/test/ompt/synchronization/barrier/implicit_task_data.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/openmp/runtime/test/ompt/synchronization/barrier/implicit_task_data.c b/openmp/runtime/test/ompt/synchronization/barrier/implicit_task_data.c index c933e8925d5..71c2b154065 100644 --- a/openmp/runtime/test/ompt/synchronization/barrier/implicit_task_data.c +++ b/openmp/runtime/test/ompt/synchronization/barrier/implicit_task_data.c @@ -80,11 +80,11 @@ on_ompt_callback_sync_region( { case ompt_scope_begin: task_data->value = ompt_get_unique_id(); - if(kind == ompt_sync_region_barrier) + if (kind == ompt_sync_region_barrier_implicit) printf("%" PRIu64 ": ompt_event_barrier_begin: parallel_id=%" PRIu64 ", task_id=%" PRIu64 ", codeptr_ra=%p\n", ompt_get_thread_data()->value, parallel_data->value, task_data->value, codeptr_ra); break; case ompt_scope_end: - if(kind == ompt_sync_region_barrier) + if (kind == ompt_sync_region_barrier_implicit) printf("%" PRIu64 ": ompt_event_barrier_end: parallel_id=%" PRIu64 ", task_id=%" PRIu64 ", codeptr_ra=%p\n", ompt_get_thread_data()->value, (parallel_data)?parallel_data->value:0, task_data->value, codeptr_ra); break; } @@ -101,11 +101,15 @@ on_ompt_callback_sync_region_wait( switch(endpoint) { case ompt_scope_begin: - if(kind == ompt_sync_region_barrier) - printf("%" PRIu64 ": ompt_event_wait_barrier_begin: parallel_id=%" PRIu64 ", task_id=%" PRIu64 ", codeptr_ra=%p\n", ompt_get_thread_data()->value, parallel_data->value, task_data->value, codeptr_ra); + if (kind == ompt_sync_region_barrier_implicit) + printf("%" PRIu64 + ": ompt_event_wait_barrier_begin: parallel_id=%" PRIu64 + ", task_id=%" PRIu64 ", codeptr_ra=%p\n", + ompt_get_thread_data()->value, parallel_data->value, + task_data->value, codeptr_ra); break; case ompt_scope_end: - if(kind == ompt_sync_region_barrier) + if (kind == ompt_sync_region_barrier_implicit) printf("%" PRIu64 ": ompt_event_wait_barrier_end: parallel_id=%" PRIu64 ", task_id=%" PRIu64 ", codeptr_ra=%p\n", ompt_get_thread_data()->value, (parallel_data)?parallel_data->value:0, task_data->value, codeptr_ra); break; } |

