ARGOBOTS
dce6e727ffc4ca5b3ffc04cb9517c6689be51ec5
|
Go to the documentation of this file.
8 #ifndef ABT_CONFIG_DISABLE_TOOL_INTERFACE
84 uint64_t event_mask,
void *user_arg)
86 ABTI_UB_ASSERT(ABTI_initialized());
88 #ifdef ABT_CONFIG_DISABLE_TOOL_INTERFACE
91 ABTI_global *p_global;
92 ABTI_SETUP_GLOBAL(&p_global);
96 ABTI_tool_event_thread_update_callback(p_global, cb_func,
238 ABTI_UB_ASSERT(ABTI_initialized());
241 #ifdef ABT_CONFIG_DISABLE_TOOL_INTERFACE
244 ABTI_tool_context *p_tctx = ABTI_tool_context_get_ptr(context);
245 ABTI_CHECK_NULL_TOOL_CONTEXT_PTR(p_tctx);
247 int abt_errno =
tool_query(p_tctx, query_kind, val);
248 ABTI_CHECK_ERROR(abt_errno);
257 #ifndef ABT_CONFIG_DISABLE_TOOL_INTERFACE
261 switch (query_kind) {
263 *(
ABT_pool *)val = ABTI_pool_get_handle(p_tctx->p_pool);
266 if (!p_tctx->p_parent) {
270 ABTI_thread *p_cur = p_tctx->p_parent;
273 p_cur = p_cur->p_parent;
276 *(
int *)val = depth - 1;
280 if (!p_tctx->p_caller) {
287 if (!p_tctx->p_caller) {
288 *(
void **)val = NULL;
290 *(
ABT_thread *)val = ABTI_thread_get_handle(p_tctx->p_caller);
297 switch (p_tctx->sync_event_type) {
300 (ABTI_xstream *)p_tctx->p_sync_object);
304 (ABTI_thread *)p_tctx->p_sync_object);
307 *(
ABT_mutex *)val = ABTI_mutex_get_handle(
308 (ABTI_mutex *)p_tctx->p_sync_object);
311 *(
ABT_cond *)val = ABTI_cond_get_handle(
312 (ABTI_cond *)p_tctx->p_sync_object);
316 (ABTI_rwlock *)p_tctx->p_sync_object);
320 (ABTI_eventual *)p_tctx->p_sync_object);
324 (ABTI_future *)p_tctx->p_sync_object);
328 (ABTI_barrier *)p_tctx->p_sync_object);
331 *(
void **)val = NULL;
struct ABT_thread_opaque * ABT_thread
Work unit handle type.
struct ABT_mutex_opaque * ABT_mutex
Mutex handle type.
struct ABT_pool_opaque * ABT_pool
Pool handle type.
struct ABT_xstream_opaque * ABT_xstream
Execution stream handle type.
struct ABT_barrier_opaque * ABT_barrier
Barrier handle type.
struct ABT_future_opaque * ABT_future
Future handle type.
struct ABT_eventual_opaque * ABT_eventual
Eventual handle type.
#define ABT_SUCCESS
Error code: the routine returns successfully.
#define ABT_ERR_OTHER
Error code: other error.
struct ABT_cond_opaque * ABT_cond
Condition variable handle type.
#define ABT_ERR_FEATURE_NA
Error code: unsupported feature.
void(* ABT_tool_thread_callback_fn)(ABT_thread, ABT_xstream, uint64_t event, ABT_tool_context context, void *user_arg)
struct ABT_rwlock_opaque * ABT_rwlock
Readers-writer lock handle type.