#if USE_DEBUGGER
* kmp_omp.h -- OpenMP definition for kmp_omp_struct_info_t.
* This is for information about runtime library structures.
*/
It should instead be modified in the OpenMP runtime and copied to the
interface library code. This way we can minimize the problems that this is
sure to cause having two copies of the same file.
Files live in libomp and libomp_db/src/include */
Before we release this to a customer, please don't change this value. After
it is released and stable, then any new updates to the structures or data
structure traversal algorithms need to change this value. */
#define KMP_OMP_VERSION 9
typedef struct {
kmp_int32 offset;
kmp_int32 size;
} offset_and_size_t;
typedef struct {
kmp_uint64 addr;
kmp_int32 size;
kmp_int32 padding;
} addr_and_size_t;
typedef struct {
kmp_uint64 flags;
kmp_uint64
file;
kmp_uint64 func;
kmp_int32 begin;
kmp_int32 end;
kmp_int32 num_threads;
} kmp_omp_nthr_item_t;
typedef struct {
kmp_int32 num;
kmp_uint64 array;
} kmp_omp_nthr_info_t;
typedef struct {
kmp_int32 lib_version;
* This is also used for backward compatibility to get the runtime
* structure size if it the runtime is older than the interface */
kmp_int32 sizeof_this_structure;
addr_and_size_t major;
addr_and_size_t minor;
addr_and_size_t build;
addr_and_size_t openmp_version;
addr_and_size_t banner;
addr_and_size_t threads;
addr_and_size_t roots;
addr_and_size_t capacity;
#if KMP_USE_MONITOR
addr_and_size_t monitor;
#endif
#if !KMP_USE_DYNAMIC_LOCK
addr_and_size_t lock_table;
#endif
addr_and_size_t func_microtask;
addr_and_size_t func_fork;
addr_and_size_t func_fork_teams;
addr_and_size_t team_counter;
addr_and_size_t task_counter;
addr_and_size_t nthr_info;
kmp_int32 address_width;
kmp_int32 indexed_locks;
kmp_int32 last_barrier;
kmp_int32 deque_size;
kmp_int32 th_sizeof_struct;
offset_and_size_t th_info;
offset_and_size_t th_team;
offset_and_size_t th_root;
offset_and_size_t th_serial_team;
offset_and_size_t th_ident;
offset_and_size_t th_spin_here;
offset_and_size_t
th_next_waiting;
offset_and_size_t th_task_team;
offset_and_size_t th_current_task;
offset_and_size_t
th_task_state;
offset_and_size_t th_bar;
offset_and_size_t th_b_worker_arrived;
offset_and_size_t th_teams_microtask;
offset_and_size_t th_teams_level;
offset_and_size_t th_teams_nteams;
offset_and_size_t
th_teams_nth;
kmp_int32 ds_sizeof_struct;
offset_and_size_t ds_tid;
offset_and_size_t ds_gtid;
offset_and_size_t ds_thread;
kmp_int32 t_sizeof_struct;
offset_and_size_t t_master_tid;
offset_and_size_t t_ident;
offset_and_size_t t_parent;
offset_and_size_t t_nproc;
offset_and_size_t t_threads;
offset_and_size_t t_serialized;
offset_and_size_t t_id;
offset_and_size_t t_pkfn;
offset_and_size_t t_task_team;
offset_and_size_t t_implicit_task;
offset_and_size_t t_cancel_request;
offset_and_size_t t_bar;
offset_and_size_t
t_b_master_arrived;
offset_and_size_t
t_b_team_arrived;
kmp_int32 r_sizeof_struct;
offset_and_size_t r_root_team;
offset_and_size_t r_hot_team;
offset_and_size_t r_uber_thread;
offset_and_size_t r_root_id;
kmp_int32 id_sizeof_struct;
offset_and_size_t
id_psource;
offset_and_size_t id_flags;
kmp_int32 lk_sizeof_struct;
offset_and_size_t lk_initialized;
offset_and_size_t lk_location;
offset_and_size_t lk_tail_id;
offset_and_size_t lk_head_id;
offset_and_size_t lk_next_ticket;
offset_and_size_t lk_now_serving;
offset_and_size_t lk_owner_id;
offset_and_size_t lk_depth_locked;
offset_and_size_t lk_lock_flags;
#if !KMP_USE_DYNAMIC_LOCK
kmp_int32 lt_size_of_struct;
offset_and_size_t lt_used;
offset_and_size_t lt_allocated;
offset_and_size_t lt_table;
#endif
kmp_int32 tt_sizeof_struct;
offset_and_size_t tt_threads_data;
offset_and_size_t tt_found_tasks;
offset_and_size_t tt_nproc;
offset_and_size_t tt_unfinished_threads;
offset_and_size_t tt_active;
kmp_int32 td_sizeof_struct;
offset_and_size_t td_task_id;
offset_and_size_t td_flags;
offset_and_size_t td_team;
offset_and_size_t td_parent;
offset_and_size_t td_level;
offset_and_size_t td_ident;
offset_and_size_t td_allocated_child_tasks;
offset_and_size_t td_incomplete_child_tasks;
offset_and_size_t td_taskwait_ident;
offset_and_size_t td_taskwait_counter;
offset_and_size_t
td_taskwait_thread;
offset_and_size_t td_taskgroup;
offset_and_size_t
td_task_count;
offset_and_size_t td_cancel;
offset_and_size_t
td_depnode;
offset_and_size_t dn_node;
offset_and_size_t dn_next;
offset_and_size_t dn_successors;
offset_and_size_t dn_task;
offset_and_size_t dn_npredecessors;
offset_and_size_t dn_nrefs;
offset_and_size_t dn_routine;
kmp_int32 hd_sizeof_struct;
offset_and_size_t hd_deque;
offset_and_size_t hd_deque_size;
offset_and_size_t hd_deque_head;
offset_and_size_t hd_deque_tail;
offset_and_size_t hd_deque_ntasks;
offset_and_size_t hd_deque_last_stolen;
kmp_uint64 last_field;
} kmp_omp_struct_info_t;
#endif