26#define KMP_OMP_VERSION 9
46 kmp_int32 num_threads;
58 kmp_int32 lib_version;
63 kmp_int32 sizeof_this_structure;
66 addr_and_size_t major;
67 addr_and_size_t minor;
68 addr_and_size_t build;
69 addr_and_size_t openmp_version;
70 addr_and_size_t banner;
73 addr_and_size_t threads;
74 addr_and_size_t roots;
75 addr_and_size_t capacity;
77 addr_and_size_t monitor;
79#if !KMP_USE_DYNAMIC_LOCK
80 addr_and_size_t lock_table;
82 addr_and_size_t func_microtask;
83 addr_and_size_t func_fork;
84 addr_and_size_t func_fork_teams;
85 addr_and_size_t team_counter;
86 addr_and_size_t task_counter;
87 addr_and_size_t nthr_info;
88 kmp_int32 address_width;
89 kmp_int32 indexed_locks;
90 kmp_int32 last_barrier;
94 kmp_int32 th_sizeof_struct;
95 offset_and_size_t th_info;
96 offset_and_size_t th_team;
97 offset_and_size_t th_root;
98 offset_and_size_t th_serial_team;
99 offset_and_size_t th_ident;
100 offset_and_size_t th_spin_here;
103 offset_and_size_t th_task_team;
104 offset_and_size_t th_current_task;
107 offset_and_size_t th_bar;
108 offset_and_size_t th_b_worker_arrived;
112 offset_and_size_t th_teams_microtask;
113 offset_and_size_t th_teams_level;
114 offset_and_size_t th_teams_nteams;
119 kmp_int32 ds_sizeof_struct;
120 offset_and_size_t ds_tid;
121 offset_and_size_t ds_gtid;
122 offset_and_size_t ds_thread;
125 kmp_int32 t_sizeof_struct;
126 offset_and_size_t t_master_tid;
127 offset_and_size_t t_ident;
128 offset_and_size_t t_parent;
129 offset_and_size_t t_nproc;
130 offset_and_size_t t_threads;
131 offset_and_size_t t_serialized;
132 offset_and_size_t t_id;
133 offset_and_size_t t_pkfn;
134 offset_and_size_t t_task_team;
135 offset_and_size_t t_implicit_task;
136 offset_and_size_t t_cancel_request;
137 offset_and_size_t t_bar;
144 kmp_int32 r_sizeof_struct;
145 offset_and_size_t r_root_team;
146 offset_and_size_t r_hot_team;
147 offset_and_size_t r_uber_thread;
148 offset_and_size_t r_root_id;
151 kmp_int32 id_sizeof_struct;
154 offset_and_size_t id_flags;
157 kmp_int32 lk_sizeof_struct;
158 offset_and_size_t lk_initialized;
159 offset_and_size_t lk_location;
160 offset_and_size_t lk_tail_id;
161 offset_and_size_t lk_head_id;
162 offset_and_size_t lk_next_ticket;
163 offset_and_size_t lk_now_serving;
164 offset_and_size_t lk_owner_id;
165 offset_and_size_t lk_depth_locked;
166 offset_and_size_t lk_lock_flags;
168#if !KMP_USE_DYNAMIC_LOCK
170 kmp_int32 lt_size_of_struct;
171 offset_and_size_t lt_used;
172 offset_and_size_t lt_allocated;
173 offset_and_size_t lt_table;
177 kmp_int32 tt_sizeof_struct;
178 offset_and_size_t tt_threads_data;
179 offset_and_size_t tt_found_tasks;
180 offset_and_size_t tt_nproc;
181 offset_and_size_t tt_unfinished_threads;
182 offset_and_size_t tt_active;
185 kmp_int32 td_sizeof_struct;
186 offset_and_size_t td_task_id;
187 offset_and_size_t td_flags;
188 offset_and_size_t td_team;
189 offset_and_size_t td_parent;
190 offset_and_size_t td_level;
191 offset_and_size_t td_ident;
192 offset_and_size_t td_allocated_child_tasks;
194 offset_and_size_t td_incomplete_child_tasks;
197 offset_and_size_t td_taskwait_ident;
198 offset_and_size_t td_taskwait_counter;
203 offset_and_size_t td_taskgroup;
206 offset_and_size_t td_cancel;
211 offset_and_size_t dn_node;
212 offset_and_size_t dn_next;
213 offset_and_size_t dn_successors;
214 offset_and_size_t dn_task;
215 offset_and_size_t dn_npredecessors;
216 offset_and_size_t dn_nrefs;
217 offset_and_size_t dn_routine;
220 kmp_int32 hd_sizeof_struct;
221 offset_and_size_t hd_deque;
222 offset_and_size_t hd_deque_size;
223 offset_and_size_t hd_deque_head;
224 offset_and_size_t hd_deque_tail;
225 offset_and_size_t hd_deque_ntasks;
226 offset_and_size_t hd_deque_last_stolen;
229 kmp_uint64 last_field;
231} kmp_omp_struct_info_t;