[all-commits] [llvm/llvm-project] b9a279: [OpenMP][OMPD] Implementation of OMPD debugging li...
vigbalu via All-commits
all-commits at lists.llvm.org
Wed Sep 1 02:20:56 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b9a27908f9b3d90ef306dfb9296316943c203726
https://github.com/llvm/llvm-project/commit/b9a27908f9b3d90ef306dfb9296316943c203726
Author: Vignesh Balasubramanian <Vignesh.Balasubrmanian at amd.com>
Date: 2021-09-01 (Wed, 01 Sep 2021)
Changed paths:
M openmp/CMakeLists.txt
A openmp/libompd/.clang-tidy
A openmp/libompd/CMakeLists.txt
A openmp/libompd/src/CMakeLists.txt
A openmp/libompd/src/Debug.h
A openmp/libompd/src/TargetValue.cpp
A openmp/libompd/src/TargetValue.h
A openmp/libompd/src/ompd-private.h
A openmp/libompd/src/ompd-types.h
Log Message:
-----------
[OpenMP][OMPD] Implementation of OMPD debugging library - libompd.
This is a continuation of the review: https://reviews.llvm.org/D100181
Creates a new directory "libompd" under openmp.
"TargetValue" provides operational access to the OpenMP runtime memory
for OMPD APIs.
With TargetValue, using "pointer" a user can do multiple operations
from casting, dereferencing to accessing an element for structure.
The member functions are designed to concatenate the operations that
are needed to access values from structures.
e.g., _a[6]->_b._c would read like :
TValue(ctx, "_a").cast("A",2)
.getArrayElement(6).access("_b").cast("B").access("_c")
For example:
If you have a pointer "ThreadHandle" of a running program then you can
access/retrieve "threadID" from the memory using TargetValue as below.
TValue(context, thread_handle->th) /*__kmp_threads[t]->th*/
.cast("kmp_base_info_t")
.access("th_info") /*__kmp_threads[t]->th.th_info*/
.cast("kmp_desc_t")
.access("ds") /*__kmp_threads[t]->th.th_info.ds*/
.cast("kmp_desc_base_t")
.access("ds_thread") /*__kmp_threads[t]->th.th_info.ds.ds_thread*/
.cast("kmp_thread_t")
.getRawValue(thread_id, 1);
Reviewed By: @hbae
Differential Revision: https://reviews.llvm.org/D100182
More information about the All-commits
mailing list