ARGOBOTS
dce6e727ffc4ca5b3ffc04cb9517c6689be51ec5
|
Go to the documentation of this file.
6 #ifndef ABTI_UNIT_H_INCLUDED
7 #define ABTI_UNIT_H_INCLUDED
10 #define ABTI_UNIT_BUILTIN_POOL_BIT ((uintptr_t)0x1)
64 *pp_thread = p_thread;
79 p_thread->
unit = new_unit;
81 *pp_thread = p_thread;
96 *pp_thread = p_thread;
98 }
else if (p_thread->
p_pool == p_pool) {
100 *pp_thread = p_thread;
118 p_thread->
unit = new_unit;
119 p_thread->
p_pool = p_pool;
120 *pp_thread = p_thread;
134 p_thread->
p_pool = p_pool;
148 p_thread->
unit = new_unit;
149 p_thread->
p_pool = p_pool;
162 p_thread->
p_pool = p_pool;
177 p_thread->
unit = new_unit;
178 p_thread->
p_pool = p_pool;
187 p_thread->
p_pool = p_pool;
189 }
else if (p_thread->
p_pool == p_pool) {
208 p_thread->
unit = new_unit;
209 p_thread->
p_pool = p_pool;
223 #if ABTI_IS_ERROR_CHECK_ENABLED
static ABT_bool ABTI_unit_is_builtin(ABT_unit unit)
int ABT_bool
Boolean type.
static ABTU_ret_err int ABTI_unit_set_associated_pool(ABTI_global *p_global, ABT_unit unit, ABTI_pool *p_pool, ABTI_thread **pp_thread)
static ABT_unit ABTI_unit_get_builtin_unit(ABTI_thread *p_thread)
static ABTI_thread * ABTI_unit_get_thread_from_builtin_unit(ABT_unit unit)
static ABT_thread ABTI_thread_get_handle(ABTI_thread *p_thread)
static ABTU_ret_err int ABTI_thread_set_associated_pool(ABTI_global *p_global, ABTI_thread *p_thread, ABTI_pool *p_pool)
void ABTI_unit_unmap_thread(ABTI_global *p_global, ABT_unit unit)
#define ABTI_UNIT_BUILTIN_POOL_BIT
ABT_pool_user_free_unit_fn p_free_unit
struct ABT_pool_opaque * ABT_pool
Pool handle type.
#define ABTU_likely(cond)
static void ABTI_unit_init_builtin(ABTI_thread *p_thread)
static void ABTD_atomic_relaxed_store_int(ABTD_atomic_int *ptr, int val)
struct ABT_unit_opaque * ABT_unit
Work unit handle type for scheduling.
#define ABTI_ASSERT(cond)
ABTD_atomic_int is_in_pool
ABTI_thread * ABTI_unit_get_thread_from_user_defined_unit(ABTI_global *p_global, ABT_unit unit)
#define ABT_SUCCESS
Error code: the routine returns successfully.
ABTI_pool_required_def required_def
#define ABTU_unlikely(cond)
#define ABT_TRUE
True constant for ABT_bool.
#define ABT_FALSE
False constant for ABT_bool.
static ABTI_thread * ABTI_unit_get_thread(ABTI_global *p_global, ABT_unit unit)
#define ABT_ERR_OTHER
Error code: other error.
static void ABTI_thread_unset_associated_pool(ABTI_global *p_global, ABTI_thread *p_thread)
ABTU_ret_err int ABTI_unit_map_thread(ABTI_global *p_global, ABT_unit unit, ABTI_thread *p_thread)
static ABTU_ret_err int ABTI_thread_init_pool(ABTI_global *p_global, ABTI_thread *p_thread, ABTI_pool *p_pool)
static ABT_pool ABTI_pool_get_handle(ABTI_pool *p_pool)
ABT_pool_user_create_unit_fn p_create_unit