26 #define KMP_OMP_VERSION 9
46 kmp_int32 num_threads;
47 } kmp_omp_nthr_item_t;
52 } kmp_omp_nthr_info_t;
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;
113 offset_and_size_t th_teams_microtask;
114 offset_and_size_t th_teams_level;
115 offset_and_size_t th_teams_nteams;
121 kmp_int32 ds_sizeof_struct;
122 offset_and_size_t ds_tid;
123 offset_and_size_t ds_gtid;
124 offset_and_size_t ds_thread;
127 kmp_int32 t_sizeof_struct;
128 offset_and_size_t t_master_tid;
129 offset_and_size_t t_ident;
130 offset_and_size_t t_parent;
131 offset_and_size_t t_nproc;
132 offset_and_size_t t_threads;
133 offset_and_size_t t_serialized;
134 offset_and_size_t t_id;
135 offset_and_size_t t_pkfn;
136 offset_and_size_t t_task_team;
137 offset_and_size_t t_implicit_task;
139 offset_and_size_t t_cancel_request;
141 offset_and_size_t t_bar;
148 kmp_int32 r_sizeof_struct;
149 offset_and_size_t r_root_team;
150 offset_and_size_t r_hot_team;
151 offset_and_size_t r_uber_thread;
152 offset_and_size_t r_root_id;
155 kmp_int32 id_sizeof_struct;
158 offset_and_size_t id_flags;
161 kmp_int32 lk_sizeof_struct;
162 offset_and_size_t lk_initialized;
163 offset_and_size_t lk_location;
164 offset_and_size_t lk_tail_id;
165 offset_and_size_t lk_head_id;
166 offset_and_size_t lk_next_ticket;
167 offset_and_size_t lk_now_serving;
168 offset_and_size_t lk_owner_id;
169 offset_and_size_t lk_depth_locked;
170 offset_and_size_t lk_lock_flags;
172 #if !KMP_USE_DYNAMIC_LOCK
174 kmp_int32 lt_size_of_struct;
175 offset_and_size_t lt_used;
176 offset_and_size_t lt_allocated;
177 offset_and_size_t lt_table;
181 kmp_int32 tt_sizeof_struct;
182 offset_and_size_t tt_threads_data;
183 offset_and_size_t tt_found_tasks;
184 offset_and_size_t tt_nproc;
185 offset_and_size_t tt_unfinished_threads;
186 offset_and_size_t tt_active;
189 kmp_int32 td_sizeof_struct;
190 offset_and_size_t td_task_id;
191 offset_and_size_t td_flags;
192 offset_and_size_t td_team;
193 offset_and_size_t td_parent;
194 offset_and_size_t td_level;
195 offset_and_size_t td_ident;
196 offset_and_size_t td_allocated_child_tasks;
198 offset_and_size_t td_incomplete_child_tasks;
201 offset_and_size_t td_taskwait_ident;
202 offset_and_size_t td_taskwait_counter;
208 offset_and_size_t td_taskgroup;
211 offset_and_size_t td_cancel;
216 offset_and_size_t dn_node;
217 offset_and_size_t dn_next;
218 offset_and_size_t dn_successors;
219 offset_and_size_t dn_task;
220 offset_and_size_t dn_npredecessors;
221 offset_and_size_t dn_nrefs;
223 offset_and_size_t dn_routine;
226 kmp_int32 hd_sizeof_struct;
227 offset_and_size_t hd_deque;
228 offset_and_size_t hd_deque_size;
229 offset_and_size_t hd_deque_head;
230 offset_and_size_t hd_deque_tail;
231 offset_and_size_t hd_deque_ntasks;
232 offset_and_size_t hd_deque_last_stolen;
235 kmp_uint64 last_field;
237 } kmp_omp_struct_info_t;