ittapi_sys/linux/
ittnotify_bindings.rs

1/* automatically generated by rust-bindgen 0.69.5 */
2
3pub const ITT_OS_WIN: u32 = 1;
4pub const ITT_OS_LINUX: u32 = 2;
5pub const ITT_OS_MAC: u32 = 3;
6pub const ITT_OS_FREEBSD: u32 = 4;
7pub const ITT_OS_OPENBSD: u32 = 5;
8pub const ITT_OS: u32 = 2;
9pub const ITT_PLATFORM_WIN: u32 = 1;
10pub const ITT_PLATFORM_POSIX: u32 = 2;
11pub const ITT_PLATFORM_MAC: u32 = 3;
12pub const ITT_PLATFORM_FREEBSD: u32 = 4;
13pub const ITT_PLATFORM_OPENBSD: u32 = 5;
14pub const ITT_PLATFORM: u32 = 2;
15pub const ITT_MAJOR: u32 = 3;
16pub const ITT_MINOR: u32 = 0;
17pub const __itt_suppress_all_errors: u32 = 2147483647;
18pub const __itt_suppress_threading_errors: u32 = 255;
19pub const __itt_suppress_memory_errors: u32 = 65280;
20pub const __itt_attr_barrier: u32 = 1;
21pub const __itt_attr_mutex: u32 = 2;
22pub const __itt_heap_leaks: u32 = 1;
23pub const __itt_heap_growth: u32 = 2;
24pub const __itt_section_exec: u32 = 536870912;
25pub const __itt_section_read: u32 = 1073741824;
26pub const __itt_section_write: u32 = 2147483648;
27pub const __itt_collection_scope___itt_collection_scope_host: __itt_collection_scope = 1;
28pub const __itt_collection_scope___itt_collection_scope_offload: __itt_collection_scope = 2;
29pub const __itt_collection_scope___itt_collection_scope_all: __itt_collection_scope = 2147483647;
30#[doc = " @enum __itt_collection_scope\n @brief Enumerator for collection scopes"]
31pub type __itt_collection_scope = ::std::os::raw::c_uint;
32pub type __itt_pause_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
33extern "C" {
34    pub static mut __itt_pause_ptr__3_0: __itt_pause_ptr__3_0_t;
35}
36pub type __itt_pause_scoped_ptr__3_0_t =
37    ::std::option::Option<unsafe extern "C" fn(arg1: __itt_collection_scope)>;
38extern "C" {
39    pub static mut __itt_pause_scoped_ptr__3_0: __itt_pause_scoped_ptr__3_0_t;
40}
41pub type __itt_resume_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
42extern "C" {
43    pub static mut __itt_resume_ptr__3_0: __itt_resume_ptr__3_0_t;
44}
45pub type __itt_resume_scoped_ptr__3_0_t =
46    ::std::option::Option<unsafe extern "C" fn(arg1: __itt_collection_scope)>;
47extern "C" {
48    pub static mut __itt_resume_scoped_ptr__3_0: __itt_resume_scoped_ptr__3_0_t;
49}
50pub type __itt_detach_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
51extern "C" {
52    pub static mut __itt_detach_ptr__3_0: __itt_detach_ptr__3_0_t;
53}
54#[doc = " @defgroup Intel Processor Trace control\n API from this group provides control over collection and analysis of Intel Processor Trace (Intel PT) data\n Information about Intel Processor Trace technology can be found here (Volume 3 chapter 35):\n https://software.intel.com/sites/default/files/managed/39/c5/325462-sdm-vol-1-2abcd-3abcd.pdf\n Use this API to mark particular code regions for loading detailed performance statistics.\n This mode makes your analysis faster and more accurate.\n @{"]
55pub type __itt_pt_region = ::std::os::raw::c_uchar;
56pub type __itt_pt_region_create_ptr__3_0_t = ::std::option::Option<
57    unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> __itt_pt_region,
58>;
59extern "C" {
60    pub static mut __itt_pt_region_create_ptr__3_0: __itt_pt_region_create_ptr__3_0_t;
61}
62extern "C" {
63    #[doc = " @brief function contains a special code pattern identified on the post-processing stage and\n marks the beginning of a code region targeted for Intel PT analysis\n @param[in] region - region id, 0 <= region < 8"]
64    pub fn __itt_mark_pt_region_begin(region: __itt_pt_region);
65}
66extern "C" {
67    #[doc = " @brief function contains a special code pattern identified on the post-processing stage and\n marks the end of a code region targeted for Intel PT analysis\n @param[in] region - region id, 0 <= region < 8"]
68    pub fn __itt_mark_pt_region_end(region: __itt_pt_region);
69}
70pub type __itt_thread_set_name_ptr__3_0_t =
71    ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
72extern "C" {
73    pub static mut __itt_thread_set_name_ptr__3_0: __itt_thread_set_name_ptr__3_0_t;
74}
75pub type __itt_thread_ignore_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
76extern "C" {
77    pub static mut __itt_thread_ignore_ptr__3_0: __itt_thread_ignore_ptr__3_0_t;
78}
79pub type __itt_suppress_push_ptr__3_0_t =
80    ::std::option::Option<unsafe extern "C" fn(mask: ::std::os::raw::c_uint)>;
81extern "C" {
82    pub static mut __itt_suppress_push_ptr__3_0: __itt_suppress_push_ptr__3_0_t;
83}
84pub type __itt_suppress_pop_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
85extern "C" {
86    pub static mut __itt_suppress_pop_ptr__3_0: __itt_suppress_pop_ptr__3_0_t;
87}
88pub const __itt_suppress_mode___itt_unsuppress_range: __itt_suppress_mode = 0;
89pub const __itt_suppress_mode___itt_suppress_range: __itt_suppress_mode = 1;
90#[doc = " @enum __itt_suppress_mode\n @brief Enumerator for the suppressing modes"]
91pub type __itt_suppress_mode = ::std::os::raw::c_uint;
92#[doc = " @enum __itt_suppress_mode\n @brief Enumerator for the suppressing modes"]
93pub use self::__itt_suppress_mode as __itt_suppress_mode_t;
94pub type __itt_suppress_mark_range_ptr__3_0_t = ::std::option::Option<
95    unsafe extern "C" fn(
96        mode: __itt_suppress_mode_t,
97        mask: ::std::os::raw::c_uint,
98        address: *mut ::std::os::raw::c_void,
99        size: usize,
100    ),
101>;
102extern "C" {
103    pub static mut __itt_suppress_mark_range_ptr__3_0: __itt_suppress_mark_range_ptr__3_0_t;
104}
105pub type __itt_suppress_clear_range_ptr__3_0_t = ::std::option::Option<
106    unsafe extern "C" fn(
107        mode: __itt_suppress_mode_t,
108        mask: ::std::os::raw::c_uint,
109        address: *mut ::std::os::raw::c_void,
110        size: usize,
111    ),
112>;
113extern "C" {
114    pub static mut __itt_suppress_clear_range_ptr__3_0: __itt_suppress_clear_range_ptr__3_0_t;
115}
116pub type __itt_sync_create_ptr__3_0_t = ::std::option::Option<
117    unsafe extern "C" fn(
118        addr: *mut ::std::os::raw::c_void,
119        objtype: *const ::std::os::raw::c_char,
120        objname: *const ::std::os::raw::c_char,
121        attribute: ::std::os::raw::c_int,
122    ),
123>;
124extern "C" {
125    pub static mut __itt_sync_create_ptr__3_0: __itt_sync_create_ptr__3_0_t;
126}
127pub type __itt_sync_rename_ptr__3_0_t = ::std::option::Option<
128    unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, name: *const ::std::os::raw::c_char),
129>;
130extern "C" {
131    pub static mut __itt_sync_rename_ptr__3_0: __itt_sync_rename_ptr__3_0_t;
132}
133pub type __itt_sync_destroy_ptr__3_0_t =
134    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
135extern "C" {
136    pub static mut __itt_sync_destroy_ptr__3_0: __itt_sync_destroy_ptr__3_0_t;
137}
138pub type __itt_sync_prepare_ptr__3_0_t =
139    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
140extern "C" {
141    pub static mut __itt_sync_prepare_ptr__3_0: __itt_sync_prepare_ptr__3_0_t;
142}
143pub type __itt_sync_cancel_ptr__3_0_t =
144    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
145extern "C" {
146    pub static mut __itt_sync_cancel_ptr__3_0: __itt_sync_cancel_ptr__3_0_t;
147}
148pub type __itt_sync_acquired_ptr__3_0_t =
149    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
150extern "C" {
151    pub static mut __itt_sync_acquired_ptr__3_0: __itt_sync_acquired_ptr__3_0_t;
152}
153pub type __itt_sync_releasing_ptr__3_0_t =
154    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
155extern "C" {
156    pub static mut __itt_sync_releasing_ptr__3_0: __itt_sync_releasing_ptr__3_0_t;
157}
158pub type __itt_fsync_prepare_ptr__3_0_t =
159    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
160extern "C" {
161    pub static mut __itt_fsync_prepare_ptr__3_0: __itt_fsync_prepare_ptr__3_0_t;
162}
163pub type __itt_fsync_cancel_ptr__3_0_t =
164    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
165extern "C" {
166    pub static mut __itt_fsync_cancel_ptr__3_0: __itt_fsync_cancel_ptr__3_0_t;
167}
168pub type __itt_fsync_acquired_ptr__3_0_t =
169    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
170extern "C" {
171    pub static mut __itt_fsync_acquired_ptr__3_0: __itt_fsync_acquired_ptr__3_0_t;
172}
173pub type __itt_fsync_releasing_ptr__3_0_t =
174    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
175extern "C" {
176    pub static mut __itt_fsync_releasing_ptr__3_0: __itt_fsync_releasing_ptr__3_0_t;
177}
178pub type __itt_model_site = *mut ::std::os::raw::c_void;
179pub type __itt_model_site_instance = *mut ::std::os::raw::c_void;
180pub type __itt_model_task = *mut ::std::os::raw::c_void;
181pub type __itt_model_task_instance = *mut ::std::os::raw::c_void;
182pub const __itt_model_disable___itt_model_disable_observation: __itt_model_disable = 0;
183pub const __itt_model_disable___itt_model_disable_collection: __itt_model_disable = 1;
184#[doc = " @enum __itt_model_disable\n @brief Enumerator for the disable methods"]
185pub type __itt_model_disable = ::std::os::raw::c_uint;
186pub type __itt_model_site_begin_ptr__3_0_t = ::std::option::Option<
187    unsafe extern "C" fn(
188        site: *mut __itt_model_site,
189        instance: *mut __itt_model_site_instance,
190        name: *const ::std::os::raw::c_char,
191    ),
192>;
193extern "C" {
194    pub static mut __itt_model_site_begin_ptr__3_0: __itt_model_site_begin_ptr__3_0_t;
195}
196pub type __itt_model_site_beginA_ptr__3_0_t =
197    ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
198extern "C" {
199    pub static mut __itt_model_site_beginA_ptr__3_0: __itt_model_site_beginA_ptr__3_0_t;
200}
201pub type __itt_model_site_beginAL_ptr__3_0_t = ::std::option::Option<
202    unsafe extern "C" fn(name: *const ::std::os::raw::c_char, siteNameLen: usize),
203>;
204extern "C" {
205    pub static mut __itt_model_site_beginAL_ptr__3_0: __itt_model_site_beginAL_ptr__3_0_t;
206}
207pub type __itt_model_site_end_ptr__3_0_t = ::std::option::Option<
208    unsafe extern "C" fn(site: *mut __itt_model_site, instance: *mut __itt_model_site_instance),
209>;
210extern "C" {
211    pub static mut __itt_model_site_end_ptr__3_0: __itt_model_site_end_ptr__3_0_t;
212}
213pub type __itt_model_site_end_2_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
214extern "C" {
215    pub static mut __itt_model_site_end_2_ptr__3_0: __itt_model_site_end_2_ptr__3_0_t;
216}
217pub type __itt_model_task_begin_ptr__3_0_t = ::std::option::Option<
218    unsafe extern "C" fn(
219        task: *mut __itt_model_task,
220        instance: *mut __itt_model_task_instance,
221        name: *const ::std::os::raw::c_char,
222    ),
223>;
224extern "C" {
225    pub static mut __itt_model_task_begin_ptr__3_0: __itt_model_task_begin_ptr__3_0_t;
226}
227pub type __itt_model_task_beginA_ptr__3_0_t =
228    ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
229extern "C" {
230    pub static mut __itt_model_task_beginA_ptr__3_0: __itt_model_task_beginA_ptr__3_0_t;
231}
232pub type __itt_model_task_beginAL_ptr__3_0_t = ::std::option::Option<
233    unsafe extern "C" fn(name: *const ::std::os::raw::c_char, taskNameLen: usize),
234>;
235extern "C" {
236    pub static mut __itt_model_task_beginAL_ptr__3_0: __itt_model_task_beginAL_ptr__3_0_t;
237}
238pub type __itt_model_iteration_taskA_ptr__3_0_t =
239    ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
240extern "C" {
241    pub static mut __itt_model_iteration_taskA_ptr__3_0: __itt_model_iteration_taskA_ptr__3_0_t;
242}
243pub type __itt_model_iteration_taskAL_ptr__3_0_t = ::std::option::Option<
244    unsafe extern "C" fn(name: *const ::std::os::raw::c_char, taskNameLen: usize),
245>;
246extern "C" {
247    pub static mut __itt_model_iteration_taskAL_ptr__3_0: __itt_model_iteration_taskAL_ptr__3_0_t;
248}
249pub type __itt_model_task_end_ptr__3_0_t = ::std::option::Option<
250    unsafe extern "C" fn(task: *mut __itt_model_task, instance: *mut __itt_model_task_instance),
251>;
252extern "C" {
253    pub static mut __itt_model_task_end_ptr__3_0: __itt_model_task_end_ptr__3_0_t;
254}
255pub type __itt_model_task_end_2_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
256extern "C" {
257    pub static mut __itt_model_task_end_2_ptr__3_0: __itt_model_task_end_2_ptr__3_0_t;
258}
259pub type __itt_model_lock_acquire_ptr__3_0_t =
260    ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
261extern "C" {
262    pub static mut __itt_model_lock_acquire_ptr__3_0: __itt_model_lock_acquire_ptr__3_0_t;
263}
264pub type __itt_model_lock_acquire_2_ptr__3_0_t =
265    ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
266extern "C" {
267    pub static mut __itt_model_lock_acquire_2_ptr__3_0: __itt_model_lock_acquire_2_ptr__3_0_t;
268}
269pub type __itt_model_lock_release_ptr__3_0_t =
270    ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
271extern "C" {
272    pub static mut __itt_model_lock_release_ptr__3_0: __itt_model_lock_release_ptr__3_0_t;
273}
274pub type __itt_model_lock_release_2_ptr__3_0_t =
275    ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
276extern "C" {
277    pub static mut __itt_model_lock_release_2_ptr__3_0: __itt_model_lock_release_2_ptr__3_0_t;
278}
279pub type __itt_model_record_allocation_ptr__3_0_t =
280    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
281extern "C" {
282    pub static mut __itt_model_record_allocation_ptr__3_0: __itt_model_record_allocation_ptr__3_0_t;
283}
284pub type __itt_model_record_deallocation_ptr__3_0_t =
285    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
286extern "C" {
287    pub static mut __itt_model_record_deallocation_ptr__3_0:
288        __itt_model_record_deallocation_ptr__3_0_t;
289}
290pub type __itt_model_induction_uses_ptr__3_0_t =
291    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
292extern "C" {
293    pub static mut __itt_model_induction_uses_ptr__3_0: __itt_model_induction_uses_ptr__3_0_t;
294}
295pub type __itt_model_reduction_uses_ptr__3_0_t =
296    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
297extern "C" {
298    pub static mut __itt_model_reduction_uses_ptr__3_0: __itt_model_reduction_uses_ptr__3_0_t;
299}
300pub type __itt_model_observe_uses_ptr__3_0_t =
301    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
302extern "C" {
303    pub static mut __itt_model_observe_uses_ptr__3_0: __itt_model_observe_uses_ptr__3_0_t;
304}
305pub type __itt_model_clear_uses_ptr__3_0_t =
306    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
307extern "C" {
308    pub static mut __itt_model_clear_uses_ptr__3_0: __itt_model_clear_uses_ptr__3_0_t;
309}
310pub type __itt_model_disable_push_ptr__3_0_t =
311    ::std::option::Option<unsafe extern "C" fn(x: __itt_model_disable)>;
312extern "C" {
313    pub static mut __itt_model_disable_push_ptr__3_0: __itt_model_disable_push_ptr__3_0_t;
314}
315pub type __itt_model_disable_pop_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
316extern "C" {
317    pub static mut __itt_model_disable_pop_ptr__3_0: __itt_model_disable_pop_ptr__3_0_t;
318}
319pub type __itt_model_aggregate_task_ptr__3_0_t =
320    ::std::option::Option<unsafe extern "C" fn(x: usize)>;
321extern "C" {
322    pub static mut __itt_model_aggregate_task_ptr__3_0: __itt_model_aggregate_task_ptr__3_0_t;
323}
324#[doc = " @defgroup heap Heap\n @ingroup public\n Heap group\n @{"]
325pub type __itt_heap_function = *mut ::std::os::raw::c_void;
326pub type __itt_heap_function_create_ptr__3_0_t = ::std::option::Option<
327    unsafe extern "C" fn(
328        name: *const ::std::os::raw::c_char,
329        domain: *const ::std::os::raw::c_char,
330    ) -> __itt_heap_function,
331>;
332extern "C" {
333    pub static mut __itt_heap_function_create_ptr__3_0: __itt_heap_function_create_ptr__3_0_t;
334}
335pub type __itt_heap_allocate_begin_ptr__3_0_t = ::std::option::Option<
336    unsafe extern "C" fn(h: __itt_heap_function, size: usize, initialized: ::std::os::raw::c_int),
337>;
338extern "C" {
339    pub static mut __itt_heap_allocate_begin_ptr__3_0: __itt_heap_allocate_begin_ptr__3_0_t;
340}
341pub type __itt_heap_allocate_end_ptr__3_0_t = ::std::option::Option<
342    unsafe extern "C" fn(
343        h: __itt_heap_function,
344        addr: *mut *mut ::std::os::raw::c_void,
345        size: usize,
346        initialized: ::std::os::raw::c_int,
347    ),
348>;
349extern "C" {
350    pub static mut __itt_heap_allocate_end_ptr__3_0: __itt_heap_allocate_end_ptr__3_0_t;
351}
352pub type __itt_heap_free_begin_ptr__3_0_t = ::std::option::Option<
353    unsafe extern "C" fn(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void),
354>;
355extern "C" {
356    pub static mut __itt_heap_free_begin_ptr__3_0: __itt_heap_free_begin_ptr__3_0_t;
357}
358pub type __itt_heap_free_end_ptr__3_0_t = ::std::option::Option<
359    unsafe extern "C" fn(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void),
360>;
361extern "C" {
362    pub static mut __itt_heap_free_end_ptr__3_0: __itt_heap_free_end_ptr__3_0_t;
363}
364pub type __itt_heap_reallocate_begin_ptr__3_0_t = ::std::option::Option<
365    unsafe extern "C" fn(
366        h: __itt_heap_function,
367        addr: *mut ::std::os::raw::c_void,
368        new_size: usize,
369        initialized: ::std::os::raw::c_int,
370    ),
371>;
372extern "C" {
373    pub static mut __itt_heap_reallocate_begin_ptr__3_0: __itt_heap_reallocate_begin_ptr__3_0_t;
374}
375pub type __itt_heap_reallocate_end_ptr__3_0_t = ::std::option::Option<
376    unsafe extern "C" fn(
377        h: __itt_heap_function,
378        addr: *mut ::std::os::raw::c_void,
379        new_addr: *mut *mut ::std::os::raw::c_void,
380        new_size: usize,
381        initialized: ::std::os::raw::c_int,
382    ),
383>;
384extern "C" {
385    pub static mut __itt_heap_reallocate_end_ptr__3_0: __itt_heap_reallocate_end_ptr__3_0_t;
386}
387pub type __itt_heap_internal_access_begin_ptr__3_0_t =
388    ::std::option::Option<unsafe extern "C" fn()>;
389extern "C" {
390    pub static mut __itt_heap_internal_access_begin_ptr__3_0:
391        __itt_heap_internal_access_begin_ptr__3_0_t;
392}
393pub type __itt_heap_internal_access_end_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
394extern "C" {
395    pub static mut __itt_heap_internal_access_end_ptr__3_0:
396        __itt_heap_internal_access_end_ptr__3_0_t;
397}
398pub type __itt_heap_record_memory_growth_begin_ptr__3_0_t =
399    ::std::option::Option<unsafe extern "C" fn()>;
400extern "C" {
401    pub static mut __itt_heap_record_memory_growth_begin_ptr__3_0:
402        __itt_heap_record_memory_growth_begin_ptr__3_0_t;
403}
404pub type __itt_heap_record_memory_growth_end_ptr__3_0_t =
405    ::std::option::Option<unsafe extern "C" fn()>;
406extern "C" {
407    pub static mut __itt_heap_record_memory_growth_end_ptr__3_0:
408        __itt_heap_record_memory_growth_end_ptr__3_0_t;
409}
410pub type __itt_heap_reset_detection_ptr__3_0_t =
411    ::std::option::Option<unsafe extern "C" fn(reset_mask: ::std::os::raw::c_uint)>;
412extern "C" {
413    pub static mut __itt_heap_reset_detection_ptr__3_0: __itt_heap_reset_detection_ptr__3_0_t;
414}
415pub type __itt_heap_record_ptr__3_0_t =
416    ::std::option::Option<unsafe extern "C" fn(record_mask: ::std::os::raw::c_uint)>;
417extern "C" {
418    pub static mut __itt_heap_record_ptr__3_0: __itt_heap_record_ptr__3_0_t;
419}
420#[repr(C)]
421#[derive(Debug, Copy, Clone)]
422pub struct ___itt_domain {
423    #[doc = "< Zero if disabled, non-zero if enabled. The meaning of different non-zero values is reserved to the runtime"]
424    pub flags: ::std::os::raw::c_int,
425    #[doc = "< Copy of original name in ASCII."]
426    pub nameA: *const ::std::os::raw::c_char,
427    pub nameW: *mut ::std::os::raw::c_void,
428    #[doc = "< Reserved to the runtime"]
429    pub extra1: ::std::os::raw::c_int,
430    #[doc = "< Reserved to the runtime"]
431    pub extra2: *mut ::std::os::raw::c_void,
432    pub next: *mut ___itt_domain,
433}
434#[test]
435fn bindgen_test_layout____itt_domain() {
436    const UNINIT: ::std::mem::MaybeUninit<___itt_domain> = ::std::mem::MaybeUninit::uninit();
437    let ptr = UNINIT.as_ptr();
438    assert_eq!(
439        ::std::mem::size_of::<___itt_domain>(),
440        48usize,
441        concat!("Size of: ", stringify!(___itt_domain))
442    );
443    assert_eq!(
444        ::std::mem::align_of::<___itt_domain>(),
445        8usize,
446        concat!("Alignment of ", stringify!(___itt_domain))
447    );
448    assert_eq!(
449        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
450        0usize,
451        concat!(
452            "Offset of field: ",
453            stringify!(___itt_domain),
454            "::",
455            stringify!(flags)
456        )
457    );
458    assert_eq!(
459        unsafe { ::std::ptr::addr_of!((*ptr).nameA) as usize - ptr as usize },
460        8usize,
461        concat!(
462            "Offset of field: ",
463            stringify!(___itt_domain),
464            "::",
465            stringify!(nameA)
466        )
467    );
468    assert_eq!(
469        unsafe { ::std::ptr::addr_of!((*ptr).nameW) as usize - ptr as usize },
470        16usize,
471        concat!(
472            "Offset of field: ",
473            stringify!(___itt_domain),
474            "::",
475            stringify!(nameW)
476        )
477    );
478    assert_eq!(
479        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
480        24usize,
481        concat!(
482            "Offset of field: ",
483            stringify!(___itt_domain),
484            "::",
485            stringify!(extra1)
486        )
487    );
488    assert_eq!(
489        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
490        32usize,
491        concat!(
492            "Offset of field: ",
493            stringify!(___itt_domain),
494            "::",
495            stringify!(extra2)
496        )
497    );
498    assert_eq!(
499        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
500        40usize,
501        concat!(
502            "Offset of field: ",
503            stringify!(___itt_domain),
504            "::",
505            stringify!(next)
506        )
507    );
508}
509pub type __itt_domain = ___itt_domain;
510pub type __itt_domain_create_ptr__3_0_t = ::std::option::Option<
511    unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> *mut __itt_domain,
512>;
513extern "C" {
514    pub static mut __itt_domain_create_ptr__3_0: __itt_domain_create_ptr__3_0_t;
515}
516#[repr(C)]
517#[derive(Debug, Copy, Clone)]
518pub struct ___itt_id {
519    pub d1: ::std::os::raw::c_ulonglong,
520    pub d2: ::std::os::raw::c_ulonglong,
521    pub d3: ::std::os::raw::c_ulonglong,
522}
523#[test]
524fn bindgen_test_layout____itt_id() {
525    const UNINIT: ::std::mem::MaybeUninit<___itt_id> = ::std::mem::MaybeUninit::uninit();
526    let ptr = UNINIT.as_ptr();
527    assert_eq!(
528        ::std::mem::size_of::<___itt_id>(),
529        24usize,
530        concat!("Size of: ", stringify!(___itt_id))
531    );
532    assert_eq!(
533        ::std::mem::align_of::<___itt_id>(),
534        8usize,
535        concat!("Alignment of ", stringify!(___itt_id))
536    );
537    assert_eq!(
538        unsafe { ::std::ptr::addr_of!((*ptr).d1) as usize - ptr as usize },
539        0usize,
540        concat!(
541            "Offset of field: ",
542            stringify!(___itt_id),
543            "::",
544            stringify!(d1)
545        )
546    );
547    assert_eq!(
548        unsafe { ::std::ptr::addr_of!((*ptr).d2) as usize - ptr as usize },
549        8usize,
550        concat!(
551            "Offset of field: ",
552            stringify!(___itt_id),
553            "::",
554            stringify!(d2)
555        )
556    );
557    assert_eq!(
558        unsafe { ::std::ptr::addr_of!((*ptr).d3) as usize - ptr as usize },
559        16usize,
560        concat!(
561            "Offset of field: ",
562            stringify!(___itt_id),
563            "::",
564            stringify!(d3)
565        )
566    );
567}
568pub type __itt_id = ___itt_id;
569extern "C" {
570    #[doc = " @endcond"]
571    pub static __itt_null: __itt_id;
572}
573pub type __itt_id_create_ptr__3_0_t =
574    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
575extern "C" {
576    pub static mut __itt_id_create_ptr__3_0: __itt_id_create_ptr__3_0_t;
577}
578pub type __itt_id_destroy_ptr__3_0_t =
579    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
580extern "C" {
581    pub static mut __itt_id_destroy_ptr__3_0: __itt_id_destroy_ptr__3_0_t;
582}
583#[repr(C)]
584#[derive(Debug, Copy, Clone)]
585pub struct ___itt_string_handle {
586    #[doc = "< Copy of original string in ASCII."]
587    pub strA: *const ::std::os::raw::c_char,
588    pub strW: *mut ::std::os::raw::c_void,
589    #[doc = "< Reserved. Must be zero"]
590    pub extra1: ::std::os::raw::c_int,
591    #[doc = "< Reserved. Must be zero"]
592    pub extra2: *mut ::std::os::raw::c_void,
593    pub next: *mut ___itt_string_handle,
594}
595#[test]
596fn bindgen_test_layout____itt_string_handle() {
597    const UNINIT: ::std::mem::MaybeUninit<___itt_string_handle> = ::std::mem::MaybeUninit::uninit();
598    let ptr = UNINIT.as_ptr();
599    assert_eq!(
600        ::std::mem::size_of::<___itt_string_handle>(),
601        40usize,
602        concat!("Size of: ", stringify!(___itt_string_handle))
603    );
604    assert_eq!(
605        ::std::mem::align_of::<___itt_string_handle>(),
606        8usize,
607        concat!("Alignment of ", stringify!(___itt_string_handle))
608    );
609    assert_eq!(
610        unsafe { ::std::ptr::addr_of!((*ptr).strA) as usize - ptr as usize },
611        0usize,
612        concat!(
613            "Offset of field: ",
614            stringify!(___itt_string_handle),
615            "::",
616            stringify!(strA)
617        )
618    );
619    assert_eq!(
620        unsafe { ::std::ptr::addr_of!((*ptr).strW) as usize - ptr as usize },
621        8usize,
622        concat!(
623            "Offset of field: ",
624            stringify!(___itt_string_handle),
625            "::",
626            stringify!(strW)
627        )
628    );
629    assert_eq!(
630        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
631        16usize,
632        concat!(
633            "Offset of field: ",
634            stringify!(___itt_string_handle),
635            "::",
636            stringify!(extra1)
637        )
638    );
639    assert_eq!(
640        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
641        24usize,
642        concat!(
643            "Offset of field: ",
644            stringify!(___itt_string_handle),
645            "::",
646            stringify!(extra2)
647        )
648    );
649    assert_eq!(
650        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
651        32usize,
652        concat!(
653            "Offset of field: ",
654            stringify!(___itt_string_handle),
655            "::",
656            stringify!(next)
657        )
658    );
659}
660pub type __itt_string_handle = ___itt_string_handle;
661pub type __itt_string_handle_create_ptr__3_0_t = ::std::option::Option<
662    unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> *mut __itt_string_handle,
663>;
664extern "C" {
665    pub static mut __itt_string_handle_create_ptr__3_0: __itt_string_handle_create_ptr__3_0_t;
666}
667#[doc = " @cond exclude_from_documentation"]
668pub type __itt_timestamp = ::std::os::raw::c_ulonglong;
669pub type __itt_get_timestamp_ptr__3_0_t =
670    ::std::option::Option<unsafe extern "C" fn() -> __itt_timestamp>;
671extern "C" {
672    pub static mut __itt_get_timestamp_ptr__3_0: __itt_get_timestamp_ptr__3_0_t;
673}
674pub type __itt_region_begin_ptr__3_0_t = ::std::option::Option<
675    unsafe extern "C" fn(
676        domain: *const __itt_domain,
677        id: __itt_id,
678        parentid: __itt_id,
679        name: *mut __itt_string_handle,
680    ),
681>;
682extern "C" {
683    pub static mut __itt_region_begin_ptr__3_0: __itt_region_begin_ptr__3_0_t;
684}
685pub type __itt_region_end_ptr__3_0_t =
686    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
687extern "C" {
688    pub static mut __itt_region_end_ptr__3_0: __itt_region_end_ptr__3_0_t;
689}
690pub type __itt_frame_begin_v3_ptr__3_0_t =
691    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: *mut __itt_id)>;
692extern "C" {
693    pub static mut __itt_frame_begin_v3_ptr__3_0: __itt_frame_begin_v3_ptr__3_0_t;
694}
695pub type __itt_frame_end_v3_ptr__3_0_t =
696    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: *mut __itt_id)>;
697extern "C" {
698    pub static mut __itt_frame_end_v3_ptr__3_0: __itt_frame_end_v3_ptr__3_0_t;
699}
700pub type __itt_frame_submit_v3_ptr__3_0_t = ::std::option::Option<
701    unsafe extern "C" fn(
702        domain: *const __itt_domain,
703        id: *mut __itt_id,
704        begin: __itt_timestamp,
705        end: __itt_timestamp,
706    ),
707>;
708extern "C" {
709    pub static mut __itt_frame_submit_v3_ptr__3_0: __itt_frame_submit_v3_ptr__3_0_t;
710}
711pub type __itt_task_group_ptr__3_0_t = ::std::option::Option<
712    unsafe extern "C" fn(
713        domain: *const __itt_domain,
714        id: __itt_id,
715        parentid: __itt_id,
716        name: *mut __itt_string_handle,
717    ),
718>;
719extern "C" {
720    pub static mut __itt_task_group_ptr__3_0: __itt_task_group_ptr__3_0_t;
721}
722pub type __itt_task_begin_ptr__3_0_t = ::std::option::Option<
723    unsafe extern "C" fn(
724        domain: *const __itt_domain,
725        id: __itt_id,
726        parentid: __itt_id,
727        name: *mut __itt_string_handle,
728    ),
729>;
730extern "C" {
731    pub static mut __itt_task_begin_ptr__3_0: __itt_task_begin_ptr__3_0_t;
732}
733pub type __itt_task_begin_fn_ptr__3_0_t = ::std::option::Option<
734    unsafe extern "C" fn(
735        domain: *const __itt_domain,
736        id: __itt_id,
737        parentid: __itt_id,
738        fn_: *mut ::std::os::raw::c_void,
739    ),
740>;
741extern "C" {
742    pub static mut __itt_task_begin_fn_ptr__3_0: __itt_task_begin_fn_ptr__3_0_t;
743}
744pub type __itt_task_end_ptr__3_0_t =
745    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain)>;
746extern "C" {
747    pub static mut __itt_task_end_ptr__3_0: __itt_task_end_ptr__3_0_t;
748}
749pub type __itt_task_begin_overlapped_ptr__3_0_t = ::std::option::Option<
750    unsafe extern "C" fn(
751        domain: *const __itt_domain,
752        taskid: __itt_id,
753        parentid: __itt_id,
754        name: *mut __itt_string_handle,
755    ),
756>;
757extern "C" {
758    pub static mut __itt_task_begin_overlapped_ptr__3_0: __itt_task_begin_overlapped_ptr__3_0_t;
759}
760pub type __itt_task_end_overlapped_ptr__3_0_t =
761    ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, taskid: __itt_id)>;
762extern "C" {
763    pub static mut __itt_task_end_overlapped_ptr__3_0: __itt_task_end_overlapped_ptr__3_0_t;
764}
765pub const __itt_scope___itt_scope_unknown: __itt_scope = 0;
766pub const __itt_scope___itt_scope_global: __itt_scope = 1;
767pub const __itt_scope___itt_scope_track_group: __itt_scope = 2;
768pub const __itt_scope___itt_scope_track: __itt_scope = 3;
769pub const __itt_scope___itt_scope_task: __itt_scope = 4;
770pub const __itt_scope___itt_scope_marker: __itt_scope = 5;
771#[doc = " @brief Describes the scope of an event object in the trace."]
772pub type __itt_scope = ::std::os::raw::c_uint;
773pub type __itt_marker_ptr__3_0_t = ::std::option::Option<
774    unsafe extern "C" fn(
775        domain: *const __itt_domain,
776        id: __itt_id,
777        name: *mut __itt_string_handle,
778        scope: __itt_scope,
779    ),
780>;
781extern "C" {
782    pub static mut __itt_marker_ptr__3_0: __itt_marker_ptr__3_0_t;
783}
784pub const __itt_metadata_type___itt_metadata_unknown: __itt_metadata_type = 0;
785#[doc = "< Unsigned 64-bit integer"]
786pub const __itt_metadata_type___itt_metadata_u64: __itt_metadata_type = 1;
787#[doc = "< Signed 64-bit integer"]
788pub const __itt_metadata_type___itt_metadata_s64: __itt_metadata_type = 2;
789#[doc = "< Unsigned 32-bit integer"]
790pub const __itt_metadata_type___itt_metadata_u32: __itt_metadata_type = 3;
791#[doc = "< Signed 32-bit integer"]
792pub const __itt_metadata_type___itt_metadata_s32: __itt_metadata_type = 4;
793#[doc = "< Unsigned 16-bit integer"]
794pub const __itt_metadata_type___itt_metadata_u16: __itt_metadata_type = 5;
795#[doc = "< Signed 16-bit integer"]
796pub const __itt_metadata_type___itt_metadata_s16: __itt_metadata_type = 6;
797#[doc = "< Signed 32-bit floating-point"]
798pub const __itt_metadata_type___itt_metadata_float: __itt_metadata_type = 7;
799#[doc = "< Signed 64-bit floating-point"]
800pub const __itt_metadata_type___itt_metadata_double: __itt_metadata_type = 8;
801#[doc = " @ingroup parameters\n @brief describes the type of metadata"]
802pub type __itt_metadata_type = ::std::os::raw::c_uint;
803pub type __itt_formatted_metadata_add_ptr__3_0_t = ::std::option::Option<
804    unsafe extern "C" fn(domain: *const __itt_domain, format: *mut __itt_string_handle, ...),
805>;
806extern "C" {
807    pub static mut __itt_formatted_metadata_add_ptr__3_0: __itt_formatted_metadata_add_ptr__3_0_t;
808}
809pub type __itt_formatted_metadata_add_overlapped_ptr__3_0_t = ::std::option::Option<
810    unsafe extern "C" fn(
811        domain: *const __itt_domain,
812        taskid: __itt_id,
813        format: *mut __itt_string_handle,
814        ...
815    ),
816>;
817extern "C" {
818    pub static mut __itt_formatted_metadata_add_overlapped_ptr__3_0:
819        __itt_formatted_metadata_add_overlapped_ptr__3_0_t;
820}
821pub type __itt_metadata_add_ptr__3_0_t = ::std::option::Option<
822    unsafe extern "C" fn(
823        domain: *const __itt_domain,
824        id: __itt_id,
825        key: *mut __itt_string_handle,
826        type_: __itt_metadata_type,
827        count: usize,
828        data: *mut ::std::os::raw::c_void,
829    ),
830>;
831extern "C" {
832    pub static mut __itt_metadata_add_ptr__3_0: __itt_metadata_add_ptr__3_0_t;
833}
834pub type __itt_metadata_str_add_ptr__3_0_t = ::std::option::Option<
835    unsafe extern "C" fn(
836        domain: *const __itt_domain,
837        id: __itt_id,
838        key: *mut __itt_string_handle,
839        data: *const ::std::os::raw::c_char,
840        length: usize,
841    ),
842>;
843extern "C" {
844    pub static mut __itt_metadata_str_add_ptr__3_0: __itt_metadata_str_add_ptr__3_0_t;
845}
846pub type __itt_metadata_add_with_scope_ptr__3_0_t = ::std::option::Option<
847    unsafe extern "C" fn(
848        domain: *const __itt_domain,
849        scope: __itt_scope,
850        key: *mut __itt_string_handle,
851        type_: __itt_metadata_type,
852        count: usize,
853        data: *mut ::std::os::raw::c_void,
854    ),
855>;
856extern "C" {
857    pub static mut __itt_metadata_add_with_scope_ptr__3_0: __itt_metadata_add_with_scope_ptr__3_0_t;
858}
859pub type __itt_metadata_str_add_with_scope_ptr__3_0_t = ::std::option::Option<
860    unsafe extern "C" fn(
861        domain: *const __itt_domain,
862        scope: __itt_scope,
863        key: *mut __itt_string_handle,
864        data: *const ::std::os::raw::c_char,
865        length: usize,
866    ),
867>;
868extern "C" {
869    pub static mut __itt_metadata_str_add_with_scope_ptr__3_0:
870        __itt_metadata_str_add_with_scope_ptr__3_0_t;
871}
872pub const __itt_relation___itt_relation_is_unknown: __itt_relation = 0;
873#[doc = "< \"A is dependent on B\" means that A cannot start until B completes"]
874pub const __itt_relation___itt_relation_is_dependent_on: __itt_relation = 1;
875#[doc = "< \"A is sibling of B\" means that A and B were created as a group"]
876pub const __itt_relation___itt_relation_is_sibling_of: __itt_relation = 2;
877#[doc = "< \"A is parent of B\" means that A created B"]
878pub const __itt_relation___itt_relation_is_parent_of: __itt_relation = 3;
879#[doc = "< \"A is continuation of B\" means that A assumes the dependencies of B"]
880pub const __itt_relation___itt_relation_is_continuation_of: __itt_relation = 4;
881#[doc = "< \"A is child of B\" means that A was created by B (inverse of is_parent_of)"]
882pub const __itt_relation___itt_relation_is_child_of: __itt_relation = 5;
883#[doc = "< \"A is continued by B\" means that B assumes the dependencies of A (inverse of is_continuation_of)"]
884pub const __itt_relation___itt_relation_is_continued_by: __itt_relation = 6;
885#[doc = "< \"A is predecessor to B\" means that B cannot start until A completes (inverse of is_dependent_on)"]
886pub const __itt_relation___itt_relation_is_predecessor_to: __itt_relation = 7;
887#[doc = " @ingroup relations\n @brief The kind of relation between two instances is specified by the enumerated type __itt_relation.\n Relations between instances can be added with an API call. The relation\n API uses instance IDs. Relations can be added before or after the actual\n instances are created and persist independently of the instances. This\n is the motivation for having different lifetimes for instance IDs and\n the actual instances."]
888pub type __itt_relation = ::std::os::raw::c_uint;
889pub type __itt_relation_add_to_current_ptr__3_0_t = ::std::option::Option<
890    unsafe extern "C" fn(domain: *const __itt_domain, relation: __itt_relation, tail: __itt_id),
891>;
892extern "C" {
893    pub static mut __itt_relation_add_to_current_ptr__3_0: __itt_relation_add_to_current_ptr__3_0_t;
894}
895pub type __itt_relation_add_ptr__3_0_t = ::std::option::Option<
896    unsafe extern "C" fn(
897        domain: *const __itt_domain,
898        head: __itt_id,
899        relation: __itt_relation,
900        tail: __itt_id,
901    ),
902>;
903extern "C" {
904    pub static mut __itt_relation_add_ptr__3_0: __itt_relation_add_ptr__3_0_t;
905}
906#[repr(C)]
907#[derive(Debug, Copy, Clone)]
908pub struct ___itt_clock_info {
909    #[doc = "< Clock domain frequency"]
910    pub clock_freq: ::std::os::raw::c_ulonglong,
911    #[doc = "< Clock domain base timestamp"]
912    pub clock_base: ::std::os::raw::c_ulonglong,
913}
914#[test]
915fn bindgen_test_layout____itt_clock_info() {
916    const UNINIT: ::std::mem::MaybeUninit<___itt_clock_info> = ::std::mem::MaybeUninit::uninit();
917    let ptr = UNINIT.as_ptr();
918    assert_eq!(
919        ::std::mem::size_of::<___itt_clock_info>(),
920        16usize,
921        concat!("Size of: ", stringify!(___itt_clock_info))
922    );
923    assert_eq!(
924        ::std::mem::align_of::<___itt_clock_info>(),
925        8usize,
926        concat!("Alignment of ", stringify!(___itt_clock_info))
927    );
928    assert_eq!(
929        unsafe { ::std::ptr::addr_of!((*ptr).clock_freq) as usize - ptr as usize },
930        0usize,
931        concat!(
932            "Offset of field: ",
933            stringify!(___itt_clock_info),
934            "::",
935            stringify!(clock_freq)
936        )
937    );
938    assert_eq!(
939        unsafe { ::std::ptr::addr_of!((*ptr).clock_base) as usize - ptr as usize },
940        8usize,
941        concat!(
942            "Offset of field: ",
943            stringify!(___itt_clock_info),
944            "::",
945            stringify!(clock_base)
946        )
947    );
948}
949pub type __itt_clock_info = ___itt_clock_info;
950#[doc = " @cond exclude_from_documentation"]
951pub type __itt_get_clock_info_fn = ::std::option::Option<
952    unsafe extern "C" fn(clock_info: *mut __itt_clock_info, data: *mut ::std::os::raw::c_void),
953>;
954#[repr(C)]
955#[derive(Debug, Copy, Clone)]
956pub struct ___itt_clock_domain {
957    #[doc = "< Most recent clock domain info"]
958    pub info: __itt_clock_info,
959    #[doc = "< Callback function pointer"]
960    pub fn_: __itt_get_clock_info_fn,
961    #[doc = "< Input argument for the callback function"]
962    pub fn_data: *mut ::std::os::raw::c_void,
963    #[doc = "< Reserved. Must be zero"]
964    pub extra1: ::std::os::raw::c_int,
965    #[doc = "< Reserved. Must be zero"]
966    pub extra2: *mut ::std::os::raw::c_void,
967    pub next: *mut ___itt_clock_domain,
968}
969#[test]
970fn bindgen_test_layout____itt_clock_domain() {
971    const UNINIT: ::std::mem::MaybeUninit<___itt_clock_domain> = ::std::mem::MaybeUninit::uninit();
972    let ptr = UNINIT.as_ptr();
973    assert_eq!(
974        ::std::mem::size_of::<___itt_clock_domain>(),
975        56usize,
976        concat!("Size of: ", stringify!(___itt_clock_domain))
977    );
978    assert_eq!(
979        ::std::mem::align_of::<___itt_clock_domain>(),
980        8usize,
981        concat!("Alignment of ", stringify!(___itt_clock_domain))
982    );
983    assert_eq!(
984        unsafe { ::std::ptr::addr_of!((*ptr).info) as usize - ptr as usize },
985        0usize,
986        concat!(
987            "Offset of field: ",
988            stringify!(___itt_clock_domain),
989            "::",
990            stringify!(info)
991        )
992    );
993    assert_eq!(
994        unsafe { ::std::ptr::addr_of!((*ptr).fn_) as usize - ptr as usize },
995        16usize,
996        concat!(
997            "Offset of field: ",
998            stringify!(___itt_clock_domain),
999            "::",
1000            stringify!(fn_)
1001        )
1002    );
1003    assert_eq!(
1004        unsafe { ::std::ptr::addr_of!((*ptr).fn_data) as usize - ptr as usize },
1005        24usize,
1006        concat!(
1007            "Offset of field: ",
1008            stringify!(___itt_clock_domain),
1009            "::",
1010            stringify!(fn_data)
1011        )
1012    );
1013    assert_eq!(
1014        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
1015        32usize,
1016        concat!(
1017            "Offset of field: ",
1018            stringify!(___itt_clock_domain),
1019            "::",
1020            stringify!(extra1)
1021        )
1022    );
1023    assert_eq!(
1024        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
1025        40usize,
1026        concat!(
1027            "Offset of field: ",
1028            stringify!(___itt_clock_domain),
1029            "::",
1030            stringify!(extra2)
1031        )
1032    );
1033    assert_eq!(
1034        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
1035        48usize,
1036        concat!(
1037            "Offset of field: ",
1038            stringify!(___itt_clock_domain),
1039            "::",
1040            stringify!(next)
1041        )
1042    );
1043}
1044pub type __itt_clock_domain = ___itt_clock_domain;
1045pub type __itt_clock_domain_create_ptr__3_0_t = ::std::option::Option<
1046    unsafe extern "C" fn(
1047        fn_: __itt_get_clock_info_fn,
1048        fn_data: *mut ::std::os::raw::c_void,
1049    ) -> *mut __itt_clock_domain,
1050>;
1051extern "C" {
1052    pub static mut __itt_clock_domain_create_ptr__3_0: __itt_clock_domain_create_ptr__3_0_t;
1053}
1054pub type __itt_clock_domain_reset_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
1055extern "C" {
1056    pub static mut __itt_clock_domain_reset_ptr__3_0: __itt_clock_domain_reset_ptr__3_0_t;
1057}
1058pub type __itt_id_create_ex_ptr__3_0_t = ::std::option::Option<
1059    unsafe extern "C" fn(
1060        domain: *const __itt_domain,
1061        clock_domain: *mut __itt_clock_domain,
1062        timestamp: ::std::os::raw::c_ulonglong,
1063        id: __itt_id,
1064    ),
1065>;
1066extern "C" {
1067    pub static mut __itt_id_create_ex_ptr__3_0: __itt_id_create_ex_ptr__3_0_t;
1068}
1069pub type __itt_id_destroy_ex_ptr__3_0_t = ::std::option::Option<
1070    unsafe extern "C" fn(
1071        domain: *const __itt_domain,
1072        clock_domain: *mut __itt_clock_domain,
1073        timestamp: ::std::os::raw::c_ulonglong,
1074        id: __itt_id,
1075    ),
1076>;
1077extern "C" {
1078    pub static mut __itt_id_destroy_ex_ptr__3_0: __itt_id_destroy_ex_ptr__3_0_t;
1079}
1080pub type __itt_task_begin_ex_ptr__3_0_t = ::std::option::Option<
1081    unsafe extern "C" fn(
1082        domain: *const __itt_domain,
1083        clock_domain: *mut __itt_clock_domain,
1084        timestamp: ::std::os::raw::c_ulonglong,
1085        id: __itt_id,
1086        parentid: __itt_id,
1087        name: *mut __itt_string_handle,
1088    ),
1089>;
1090extern "C" {
1091    pub static mut __itt_task_begin_ex_ptr__3_0: __itt_task_begin_ex_ptr__3_0_t;
1092}
1093pub type __itt_task_begin_fn_ex_ptr__3_0_t = ::std::option::Option<
1094    unsafe extern "C" fn(
1095        domain: *const __itt_domain,
1096        clock_domain: *mut __itt_clock_domain,
1097        timestamp: ::std::os::raw::c_ulonglong,
1098        id: __itt_id,
1099        parentid: __itt_id,
1100        fn_: *mut ::std::os::raw::c_void,
1101    ),
1102>;
1103extern "C" {
1104    pub static mut __itt_task_begin_fn_ex_ptr__3_0: __itt_task_begin_fn_ex_ptr__3_0_t;
1105}
1106pub type __itt_task_end_ex_ptr__3_0_t = ::std::option::Option<
1107    unsafe extern "C" fn(
1108        domain: *const __itt_domain,
1109        clock_domain: *mut __itt_clock_domain,
1110        timestamp: ::std::os::raw::c_ulonglong,
1111    ),
1112>;
1113extern "C" {
1114    pub static mut __itt_task_end_ex_ptr__3_0: __itt_task_end_ex_ptr__3_0_t;
1115}
1116#[repr(C)]
1117#[derive(Debug, Copy, Clone)]
1118pub struct ___itt_counter {
1119    _unused: [u8; 0],
1120}
1121#[doc = " @brief opaque structure for counter identification\n/\n/** @cond exclude_from_documentation"]
1122pub type __itt_counter = *mut ___itt_counter;
1123pub type __itt_counter_create_ptr__3_0_t = ::std::option::Option<
1124    unsafe extern "C" fn(
1125        name: *const ::std::os::raw::c_char,
1126        domain: *const ::std::os::raw::c_char,
1127    ) -> __itt_counter,
1128>;
1129extern "C" {
1130    pub static mut __itt_counter_create_ptr__3_0: __itt_counter_create_ptr__3_0_t;
1131}
1132pub type __itt_counter_inc_ptr__3_0_t =
1133    ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
1134extern "C" {
1135    pub static mut __itt_counter_inc_ptr__3_0: __itt_counter_inc_ptr__3_0_t;
1136}
1137pub type __itt_counter_inc_delta_ptr__3_0_t = ::std::option::Option<
1138    unsafe extern "C" fn(id: __itt_counter, value: ::std::os::raw::c_ulonglong),
1139>;
1140extern "C" {
1141    pub static mut __itt_counter_inc_delta_ptr__3_0: __itt_counter_inc_delta_ptr__3_0_t;
1142}
1143pub type __itt_counter_dec_ptr__3_0_t =
1144    ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
1145extern "C" {
1146    pub static mut __itt_counter_dec_ptr__3_0: __itt_counter_dec_ptr__3_0_t;
1147}
1148pub type __itt_counter_dec_delta_ptr__3_0_t = ::std::option::Option<
1149    unsafe extern "C" fn(id: __itt_counter, value: ::std::os::raw::c_ulonglong),
1150>;
1151extern "C" {
1152    pub static mut __itt_counter_dec_delta_ptr__3_0: __itt_counter_dec_delta_ptr__3_0_t;
1153}
1154pub type __itt_counter_inc_v3_ptr__3_0_t = ::std::option::Option<
1155    unsafe extern "C" fn(domain: *const __itt_domain, name: *mut __itt_string_handle),
1156>;
1157extern "C" {
1158    pub static mut __itt_counter_inc_v3_ptr__3_0: __itt_counter_inc_v3_ptr__3_0_t;
1159}
1160pub type __itt_counter_inc_delta_v3_ptr__3_0_t = ::std::option::Option<
1161    unsafe extern "C" fn(
1162        domain: *const __itt_domain,
1163        name: *mut __itt_string_handle,
1164        delta: ::std::os::raw::c_ulonglong,
1165    ),
1166>;
1167extern "C" {
1168    pub static mut __itt_counter_inc_delta_v3_ptr__3_0: __itt_counter_inc_delta_v3_ptr__3_0_t;
1169}
1170pub type __itt_counter_dec_v3_ptr__3_0_t = ::std::option::Option<
1171    unsafe extern "C" fn(domain: *const __itt_domain, name: *mut __itt_string_handle),
1172>;
1173extern "C" {
1174    pub static mut __itt_counter_dec_v3_ptr__3_0: __itt_counter_dec_v3_ptr__3_0_t;
1175}
1176pub type __itt_counter_dec_delta_v3_ptr__3_0_t = ::std::option::Option<
1177    unsafe extern "C" fn(
1178        domain: *const __itt_domain,
1179        name: *mut __itt_string_handle,
1180        delta: ::std::os::raw::c_ulonglong,
1181    ),
1182>;
1183extern "C" {
1184    pub static mut __itt_counter_dec_delta_v3_ptr__3_0: __itt_counter_dec_delta_v3_ptr__3_0_t;
1185}
1186pub type __itt_counter_set_value_ptr__3_0_t = ::std::option::Option<
1187    unsafe extern "C" fn(id: __itt_counter, value_ptr: *mut ::std::os::raw::c_void),
1188>;
1189extern "C" {
1190    pub static mut __itt_counter_set_value_ptr__3_0: __itt_counter_set_value_ptr__3_0_t;
1191}
1192pub type __itt_counter_set_value_ex_ptr__3_0_t = ::std::option::Option<
1193    unsafe extern "C" fn(
1194        id: __itt_counter,
1195        clock_domain: *mut __itt_clock_domain,
1196        timestamp: ::std::os::raw::c_ulonglong,
1197        value_ptr: *mut ::std::os::raw::c_void,
1198    ),
1199>;
1200extern "C" {
1201    pub static mut __itt_counter_set_value_ex_ptr__3_0: __itt_counter_set_value_ex_ptr__3_0_t;
1202}
1203pub type __itt_counter_create_typed_ptr__3_0_t = ::std::option::Option<
1204    unsafe extern "C" fn(
1205        name: *const ::std::os::raw::c_char,
1206        domain: *const ::std::os::raw::c_char,
1207        type_: __itt_metadata_type,
1208    ) -> __itt_counter,
1209>;
1210extern "C" {
1211    pub static mut __itt_counter_create_typed_ptr__3_0: __itt_counter_create_typed_ptr__3_0_t;
1212}
1213pub type __itt_counter_destroy_ptr__3_0_t =
1214    ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
1215extern "C" {
1216    pub static mut __itt_counter_destroy_ptr__3_0: __itt_counter_destroy_ptr__3_0_t;
1217}
1218pub type __itt_marker_ex_ptr__3_0_t = ::std::option::Option<
1219    unsafe extern "C" fn(
1220        domain: *const __itt_domain,
1221        clock_domain: *mut __itt_clock_domain,
1222        timestamp: ::std::os::raw::c_ulonglong,
1223        id: __itt_id,
1224        name: *mut __itt_string_handle,
1225        scope: __itt_scope,
1226    ),
1227>;
1228extern "C" {
1229    pub static mut __itt_marker_ex_ptr__3_0: __itt_marker_ex_ptr__3_0_t;
1230}
1231pub type __itt_relation_add_to_current_ex_ptr__3_0_t = ::std::option::Option<
1232    unsafe extern "C" fn(
1233        domain: *const __itt_domain,
1234        clock_domain: *mut __itt_clock_domain,
1235        timestamp: ::std::os::raw::c_ulonglong,
1236        relation: __itt_relation,
1237        tail: __itt_id,
1238    ),
1239>;
1240extern "C" {
1241    pub static mut __itt_relation_add_to_current_ex_ptr__3_0:
1242        __itt_relation_add_to_current_ex_ptr__3_0_t;
1243}
1244pub type __itt_relation_add_ex_ptr__3_0_t = ::std::option::Option<
1245    unsafe extern "C" fn(
1246        domain: *const __itt_domain,
1247        clock_domain: *mut __itt_clock_domain,
1248        timestamp: ::std::os::raw::c_ulonglong,
1249        head: __itt_id,
1250        relation: __itt_relation,
1251        tail: __itt_id,
1252    ),
1253>;
1254extern "C" {
1255    pub static mut __itt_relation_add_ex_ptr__3_0: __itt_relation_add_ex_ptr__3_0_t;
1256}
1257pub const ___itt_track_group_type___itt_track_group_type_normal: ___itt_track_group_type = 0;
1258#[doc = " @cond exclude_from_documentation"]
1259pub type ___itt_track_group_type = ::std::os::raw::c_uint;
1260#[doc = " @cond exclude_from_documentation"]
1261pub use self::___itt_track_group_type as __itt_track_group_type;
1262#[repr(C)]
1263#[derive(Debug, Copy, Clone)]
1264pub struct ___itt_track_group {
1265    #[doc = "< Name of the track group"]
1266    pub name: *mut __itt_string_handle,
1267    #[doc = "< List of child tracks"]
1268    pub track: *mut ___itt_track,
1269    #[doc = "< Type of the track group"]
1270    pub tgtype: __itt_track_group_type,
1271    #[doc = "< Reserved. Must be zero"]
1272    pub extra1: ::std::os::raw::c_int,
1273    #[doc = "< Reserved. Must be zero"]
1274    pub extra2: *mut ::std::os::raw::c_void,
1275    pub next: *mut ___itt_track_group,
1276}
1277#[test]
1278fn bindgen_test_layout____itt_track_group() {
1279    const UNINIT: ::std::mem::MaybeUninit<___itt_track_group> = ::std::mem::MaybeUninit::uninit();
1280    let ptr = UNINIT.as_ptr();
1281    assert_eq!(
1282        ::std::mem::size_of::<___itt_track_group>(),
1283        40usize,
1284        concat!("Size of: ", stringify!(___itt_track_group))
1285    );
1286    assert_eq!(
1287        ::std::mem::align_of::<___itt_track_group>(),
1288        8usize,
1289        concat!("Alignment of ", stringify!(___itt_track_group))
1290    );
1291    assert_eq!(
1292        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
1293        0usize,
1294        concat!(
1295            "Offset of field: ",
1296            stringify!(___itt_track_group),
1297            "::",
1298            stringify!(name)
1299        )
1300    );
1301    assert_eq!(
1302        unsafe { ::std::ptr::addr_of!((*ptr).track) as usize - ptr as usize },
1303        8usize,
1304        concat!(
1305            "Offset of field: ",
1306            stringify!(___itt_track_group),
1307            "::",
1308            stringify!(track)
1309        )
1310    );
1311    assert_eq!(
1312        unsafe { ::std::ptr::addr_of!((*ptr).tgtype) as usize - ptr as usize },
1313        16usize,
1314        concat!(
1315            "Offset of field: ",
1316            stringify!(___itt_track_group),
1317            "::",
1318            stringify!(tgtype)
1319        )
1320    );
1321    assert_eq!(
1322        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
1323        20usize,
1324        concat!(
1325            "Offset of field: ",
1326            stringify!(___itt_track_group),
1327            "::",
1328            stringify!(extra1)
1329        )
1330    );
1331    assert_eq!(
1332        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
1333        24usize,
1334        concat!(
1335            "Offset of field: ",
1336            stringify!(___itt_track_group),
1337            "::",
1338            stringify!(extra2)
1339        )
1340    );
1341    assert_eq!(
1342        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
1343        32usize,
1344        concat!(
1345            "Offset of field: ",
1346            stringify!(___itt_track_group),
1347            "::",
1348            stringify!(next)
1349        )
1350    );
1351}
1352pub type __itt_track_group = ___itt_track_group;
1353pub const ___itt_track_type___itt_track_type_normal: ___itt_track_type = 0;
1354#[doc = " @brief Placeholder for custom track types. Currently, \"normal\" custom track\n is the only available track type."]
1355pub type ___itt_track_type = ::std::os::raw::c_uint;
1356#[doc = " @brief Placeholder for custom track types. Currently, \"normal\" custom track\n is the only available track type."]
1357pub use self::___itt_track_type as __itt_track_type;
1358#[repr(C)]
1359#[derive(Debug, Copy, Clone)]
1360pub struct ___itt_track {
1361    #[doc = "< Name of the track group"]
1362    pub name: *mut __itt_string_handle,
1363    #[doc = "< Parent group to a track"]
1364    pub group: *mut __itt_track_group,
1365    #[doc = "< Type of the track"]
1366    pub ttype: __itt_track_type,
1367    #[doc = "< Reserved. Must be zero"]
1368    pub extra1: ::std::os::raw::c_int,
1369    #[doc = "< Reserved. Must be zero"]
1370    pub extra2: *mut ::std::os::raw::c_void,
1371    pub next: *mut ___itt_track,
1372}
1373#[test]
1374fn bindgen_test_layout____itt_track() {
1375    const UNINIT: ::std::mem::MaybeUninit<___itt_track> = ::std::mem::MaybeUninit::uninit();
1376    let ptr = UNINIT.as_ptr();
1377    assert_eq!(
1378        ::std::mem::size_of::<___itt_track>(),
1379        40usize,
1380        concat!("Size of: ", stringify!(___itt_track))
1381    );
1382    assert_eq!(
1383        ::std::mem::align_of::<___itt_track>(),
1384        8usize,
1385        concat!("Alignment of ", stringify!(___itt_track))
1386    );
1387    assert_eq!(
1388        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
1389        0usize,
1390        concat!(
1391            "Offset of field: ",
1392            stringify!(___itt_track),
1393            "::",
1394            stringify!(name)
1395        )
1396    );
1397    assert_eq!(
1398        unsafe { ::std::ptr::addr_of!((*ptr).group) as usize - ptr as usize },
1399        8usize,
1400        concat!(
1401            "Offset of field: ",
1402            stringify!(___itt_track),
1403            "::",
1404            stringify!(group)
1405        )
1406    );
1407    assert_eq!(
1408        unsafe { ::std::ptr::addr_of!((*ptr).ttype) as usize - ptr as usize },
1409        16usize,
1410        concat!(
1411            "Offset of field: ",
1412            stringify!(___itt_track),
1413            "::",
1414            stringify!(ttype)
1415        )
1416    );
1417    assert_eq!(
1418        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
1419        20usize,
1420        concat!(
1421            "Offset of field: ",
1422            stringify!(___itt_track),
1423            "::",
1424            stringify!(extra1)
1425        )
1426    );
1427    assert_eq!(
1428        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
1429        24usize,
1430        concat!(
1431            "Offset of field: ",
1432            stringify!(___itt_track),
1433            "::",
1434            stringify!(extra2)
1435        )
1436    );
1437    assert_eq!(
1438        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
1439        32usize,
1440        concat!(
1441            "Offset of field: ",
1442            stringify!(___itt_track),
1443            "::",
1444            stringify!(next)
1445        )
1446    );
1447}
1448pub type __itt_track = ___itt_track;
1449pub type __itt_track_group_create_ptr__3_0_t = ::std::option::Option<
1450    unsafe extern "C" fn(
1451        name: *mut __itt_string_handle,
1452        track_group_type: __itt_track_group_type,
1453    ) -> *mut __itt_track_group,
1454>;
1455extern "C" {
1456    pub static mut __itt_track_group_create_ptr__3_0: __itt_track_group_create_ptr__3_0_t;
1457}
1458pub type __itt_track_create_ptr__3_0_t = ::std::option::Option<
1459    unsafe extern "C" fn(
1460        track_group: *mut __itt_track_group,
1461        name: *mut __itt_string_handle,
1462        track_type: __itt_track_type,
1463    ) -> *mut __itt_track,
1464>;
1465extern "C" {
1466    pub static mut __itt_track_create_ptr__3_0: __itt_track_create_ptr__3_0_t;
1467}
1468pub type __itt_set_track_ptr__3_0_t =
1469    ::std::option::Option<unsafe extern "C" fn(track: *mut __itt_track)>;
1470extern "C" {
1471    pub static mut __itt_set_track_ptr__3_0: __itt_set_track_ptr__3_0_t;
1472}
1473#[doc = " @cond exclude_from_gpa_documentation */\n/**\n @defgroup events Events\n @ingroup public\n Events group\n @{\n/\n/** @brief user event type"]
1474pub type __itt_event = ::std::os::raw::c_int;
1475pub type __itt_event_create_ptr__3_0_t = ::std::option::Option<
1476    unsafe extern "C" fn(
1477        name: *const ::std::os::raw::c_char,
1478        namelen: ::std::os::raw::c_int,
1479    ) -> __itt_event,
1480>;
1481extern "C" {
1482    pub static mut __itt_event_create_ptr__3_0: __itt_event_create_ptr__3_0_t;
1483}
1484pub type __itt_event_start_ptr__3_0_t =
1485    ::std::option::Option<unsafe extern "C" fn(event: __itt_event) -> ::std::os::raw::c_int>;
1486extern "C" {
1487    pub static mut __itt_event_start_ptr__3_0: __itt_event_start_ptr__3_0_t;
1488}
1489pub type __itt_event_end_ptr__3_0_t =
1490    ::std::option::Option<unsafe extern "C" fn(event: __itt_event) -> ::std::os::raw::c_int>;
1491extern "C" {
1492    pub static mut __itt_event_end_ptr__3_0: __itt_event_end_ptr__3_0_t;
1493}
1494pub type __itt_av_save_ptr__3_0_t = ::std::option::Option<
1495    unsafe extern "C" fn(
1496        data: *mut ::std::os::raw::c_void,
1497        rank: ::std::os::raw::c_int,
1498        dimensions: *const ::std::os::raw::c_int,
1499        type_: ::std::os::raw::c_int,
1500        filePath: *const ::std::os::raw::c_char,
1501        columnOrder: ::std::os::raw::c_int,
1502    ) -> ::std::os::raw::c_int,
1503>;
1504extern "C" {
1505    pub static mut __itt_av_save_ptr__3_0: __itt_av_save_ptr__3_0_t;
1506}
1507pub type __itt_enable_attach_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
1508extern "C" {
1509    pub static mut __itt_enable_attach_ptr__3_0: __itt_enable_attach_ptr__3_0_t;
1510}
1511pub type __itt_module_load_ptr__3_0_t = ::std::option::Option<
1512    unsafe extern "C" fn(
1513        start_addr: *mut ::std::os::raw::c_void,
1514        end_addr: *mut ::std::os::raw::c_void,
1515        path: *const ::std::os::raw::c_char,
1516    ),
1517>;
1518extern "C" {
1519    pub static mut __itt_module_load_ptr__3_0: __itt_module_load_ptr__3_0_t;
1520}
1521pub type __itt_module_unload_ptr__3_0_t =
1522    ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
1523extern "C" {
1524    pub static mut __itt_module_unload_ptr__3_0: __itt_module_unload_ptr__3_0_t;
1525}
1526pub const __itt_module_type___itt_module_type_unknown: __itt_module_type = 0;
1527pub const __itt_module_type___itt_module_type_elf: __itt_module_type = 1;
1528pub const __itt_module_type___itt_module_type_coff: __itt_module_type = 2;
1529#[doc = " @cond exclude_from_documentation"]
1530pub type __itt_module_type = ::std::os::raw::c_uint;
1531pub const __itt_section_type_itt_section_type_unknown: __itt_section_type = 0;
1532pub const __itt_section_type_itt_section_type_bss: __itt_section_type = 1;
1533pub const __itt_section_type_itt_section_type_data: __itt_section_type = 2;
1534pub const __itt_section_type_itt_section_type_text: __itt_section_type = 3;
1535#[doc = " @cond exclude_from_documentation"]
1536pub type __itt_section_type = ::std::os::raw::c_uint;
1537#[repr(C)]
1538#[derive(Debug, Copy, Clone)]
1539pub struct ___itt_section_info {
1540    #[doc = "< Section name in UTF8"]
1541    pub name: *const ::std::os::raw::c_char,
1542    #[doc = "< Section content and semantics description"]
1543    pub type_: __itt_section_type,
1544    #[doc = "< Section bit flags that describe attributes using bit mask\n Zero if disabled, non-zero if enabled"]
1545    pub flags: usize,
1546    #[doc = "< Section load(relocated) start address"]
1547    pub start_addr: *mut ::std::os::raw::c_void,
1548    #[doc = "< Section file offset"]
1549    pub size: usize,
1550    #[doc = "< Section size"]
1551    pub file_offset: usize,
1552}
1553#[test]
1554fn bindgen_test_layout____itt_section_info() {
1555    const UNINIT: ::std::mem::MaybeUninit<___itt_section_info> = ::std::mem::MaybeUninit::uninit();
1556    let ptr = UNINIT.as_ptr();
1557    assert_eq!(
1558        ::std::mem::size_of::<___itt_section_info>(),
1559        48usize,
1560        concat!("Size of: ", stringify!(___itt_section_info))
1561    );
1562    assert_eq!(
1563        ::std::mem::align_of::<___itt_section_info>(),
1564        8usize,
1565        concat!("Alignment of ", stringify!(___itt_section_info))
1566    );
1567    assert_eq!(
1568        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
1569        0usize,
1570        concat!(
1571            "Offset of field: ",
1572            stringify!(___itt_section_info),
1573            "::",
1574            stringify!(name)
1575        )
1576    );
1577    assert_eq!(
1578        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
1579        8usize,
1580        concat!(
1581            "Offset of field: ",
1582            stringify!(___itt_section_info),
1583            "::",
1584            stringify!(type_)
1585        )
1586    );
1587    assert_eq!(
1588        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
1589        16usize,
1590        concat!(
1591            "Offset of field: ",
1592            stringify!(___itt_section_info),
1593            "::",
1594            stringify!(flags)
1595        )
1596    );
1597    assert_eq!(
1598        unsafe { ::std::ptr::addr_of!((*ptr).start_addr) as usize - ptr as usize },
1599        24usize,
1600        concat!(
1601            "Offset of field: ",
1602            stringify!(___itt_section_info),
1603            "::",
1604            stringify!(start_addr)
1605        )
1606    );
1607    assert_eq!(
1608        unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
1609        32usize,
1610        concat!(
1611            "Offset of field: ",
1612            stringify!(___itt_section_info),
1613            "::",
1614            stringify!(size)
1615        )
1616    );
1617    assert_eq!(
1618        unsafe { ::std::ptr::addr_of!((*ptr).file_offset) as usize - ptr as usize },
1619        40usize,
1620        concat!(
1621            "Offset of field: ",
1622            stringify!(___itt_section_info),
1623            "::",
1624            stringify!(file_offset)
1625        )
1626    );
1627}
1628pub type __itt_section_info = ___itt_section_info;
1629#[repr(C)]
1630#[derive(Debug, Copy, Clone)]
1631pub struct ___itt_module_object {
1632    #[doc = "< API version"]
1633    pub version: ::std::os::raw::c_uint,
1634    #[doc = "< Unique identifier. This is unchanged for sections that belong to the same module"]
1635    pub module_id: __itt_id,
1636    #[doc = "< Binary module format"]
1637    pub module_type: __itt_module_type,
1638    #[doc = "< Unique module name or path to module in UTF8\n Contains module name when module_bufer and module_size exist\n Contains module path when module_bufer and module_size absent\n module_name remains the same for the certain module_id"]
1639    pub module_name: *const ::std::os::raw::c_char,
1640    #[doc = "< Module buffer content"]
1641    pub module_buffer: *mut ::std::os::raw::c_void,
1642    #[doc = "< Module buffer size */\n/*!< If module_buffer and module_size exist, the binary module is dumped onto the system.\n If module_buffer and module_size do not exist,\n the binary module exists on the system already.\n The module_name parameter contains the path to the module."]
1643    pub module_size: usize,
1644    #[doc = "< Reference to section information"]
1645    pub section_array: *mut __itt_section_info,
1646    pub section_number: usize,
1647}
1648#[test]
1649fn bindgen_test_layout____itt_module_object() {
1650    const UNINIT: ::std::mem::MaybeUninit<___itt_module_object> = ::std::mem::MaybeUninit::uninit();
1651    let ptr = UNINIT.as_ptr();
1652    assert_eq!(
1653        ::std::mem::size_of::<___itt_module_object>(),
1654        80usize,
1655        concat!("Size of: ", stringify!(___itt_module_object))
1656    );
1657    assert_eq!(
1658        ::std::mem::align_of::<___itt_module_object>(),
1659        8usize,
1660        concat!("Alignment of ", stringify!(___itt_module_object))
1661    );
1662    assert_eq!(
1663        unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize },
1664        0usize,
1665        concat!(
1666            "Offset of field: ",
1667            stringify!(___itt_module_object),
1668            "::",
1669            stringify!(version)
1670        )
1671    );
1672    assert_eq!(
1673        unsafe { ::std::ptr::addr_of!((*ptr).module_id) as usize - ptr as usize },
1674        8usize,
1675        concat!(
1676            "Offset of field: ",
1677            stringify!(___itt_module_object),
1678            "::",
1679            stringify!(module_id)
1680        )
1681    );
1682    assert_eq!(
1683        unsafe { ::std::ptr::addr_of!((*ptr).module_type) as usize - ptr as usize },
1684        32usize,
1685        concat!(
1686            "Offset of field: ",
1687            stringify!(___itt_module_object),
1688            "::",
1689            stringify!(module_type)
1690        )
1691    );
1692    assert_eq!(
1693        unsafe { ::std::ptr::addr_of!((*ptr).module_name) as usize - ptr as usize },
1694        40usize,
1695        concat!(
1696            "Offset of field: ",
1697            stringify!(___itt_module_object),
1698            "::",
1699            stringify!(module_name)
1700        )
1701    );
1702    assert_eq!(
1703        unsafe { ::std::ptr::addr_of!((*ptr).module_buffer) as usize - ptr as usize },
1704        48usize,
1705        concat!(
1706            "Offset of field: ",
1707            stringify!(___itt_module_object),
1708            "::",
1709            stringify!(module_buffer)
1710        )
1711    );
1712    assert_eq!(
1713        unsafe { ::std::ptr::addr_of!((*ptr).module_size) as usize - ptr as usize },
1714        56usize,
1715        concat!(
1716            "Offset of field: ",
1717            stringify!(___itt_module_object),
1718            "::",
1719            stringify!(module_size)
1720        )
1721    );
1722    assert_eq!(
1723        unsafe { ::std::ptr::addr_of!((*ptr).section_array) as usize - ptr as usize },
1724        64usize,
1725        concat!(
1726            "Offset of field: ",
1727            stringify!(___itt_module_object),
1728            "::",
1729            stringify!(section_array)
1730        )
1731    );
1732    assert_eq!(
1733        unsafe { ::std::ptr::addr_of!((*ptr).section_number) as usize - ptr as usize },
1734        72usize,
1735        concat!(
1736            "Offset of field: ",
1737            stringify!(___itt_module_object),
1738            "::",
1739            stringify!(section_number)
1740        )
1741    );
1742}
1743pub type __itt_module_object = ___itt_module_object;
1744pub type __itt_module_load_with_sections_ptr__3_0_t =
1745    ::std::option::Option<unsafe extern "C" fn(module_obj: *mut __itt_module_object)>;
1746extern "C" {
1747    pub static mut __itt_module_load_with_sections_ptr__3_0:
1748        __itt_module_load_with_sections_ptr__3_0_t;
1749}
1750pub type __itt_module_unload_with_sections_ptr__3_0_t =
1751    ::std::option::Option<unsafe extern "C" fn(module_obj: *mut __itt_module_object)>;
1752extern "C" {
1753    pub static mut __itt_module_unload_with_sections_ptr__3_0:
1754        __itt_module_unload_with_sections_ptr__3_0_t;
1755}
1756#[repr(C)]
1757#[derive(Debug, Copy, Clone)]
1758pub struct ___itt_histogram {
1759    #[doc = "< Domain of the histogram"]
1760    pub domain: *const __itt_domain,
1761    #[doc = "< Name of the histogram"]
1762    pub nameA: *const ::std::os::raw::c_char,
1763    pub nameW: *mut ::std::os::raw::c_void,
1764    #[doc = "< Type of the histogram X axis"]
1765    pub x_type: __itt_metadata_type,
1766    #[doc = "< Type of the histogram Y axis"]
1767    pub y_type: __itt_metadata_type,
1768    #[doc = "< Reserved to the runtime"]
1769    pub extra1: ::std::os::raw::c_int,
1770    #[doc = "< Reserved to the runtime"]
1771    pub extra2: *mut ::std::os::raw::c_void,
1772    pub next: *mut ___itt_histogram,
1773}
1774#[test]
1775fn bindgen_test_layout____itt_histogram() {
1776    const UNINIT: ::std::mem::MaybeUninit<___itt_histogram> = ::std::mem::MaybeUninit::uninit();
1777    let ptr = UNINIT.as_ptr();
1778    assert_eq!(
1779        ::std::mem::size_of::<___itt_histogram>(),
1780        56usize,
1781        concat!("Size of: ", stringify!(___itt_histogram))
1782    );
1783    assert_eq!(
1784        ::std::mem::align_of::<___itt_histogram>(),
1785        8usize,
1786        concat!("Alignment of ", stringify!(___itt_histogram))
1787    );
1788    assert_eq!(
1789        unsafe { ::std::ptr::addr_of!((*ptr).domain) as usize - ptr as usize },
1790        0usize,
1791        concat!(
1792            "Offset of field: ",
1793            stringify!(___itt_histogram),
1794            "::",
1795            stringify!(domain)
1796        )
1797    );
1798    assert_eq!(
1799        unsafe { ::std::ptr::addr_of!((*ptr).nameA) as usize - ptr as usize },
1800        8usize,
1801        concat!(
1802            "Offset of field: ",
1803            stringify!(___itt_histogram),
1804            "::",
1805            stringify!(nameA)
1806        )
1807    );
1808    assert_eq!(
1809        unsafe { ::std::ptr::addr_of!((*ptr).nameW) as usize - ptr as usize },
1810        16usize,
1811        concat!(
1812            "Offset of field: ",
1813            stringify!(___itt_histogram),
1814            "::",
1815            stringify!(nameW)
1816        )
1817    );
1818    assert_eq!(
1819        unsafe { ::std::ptr::addr_of!((*ptr).x_type) as usize - ptr as usize },
1820        24usize,
1821        concat!(
1822            "Offset of field: ",
1823            stringify!(___itt_histogram),
1824            "::",
1825            stringify!(x_type)
1826        )
1827    );
1828    assert_eq!(
1829        unsafe { ::std::ptr::addr_of!((*ptr).y_type) as usize - ptr as usize },
1830        28usize,
1831        concat!(
1832            "Offset of field: ",
1833            stringify!(___itt_histogram),
1834            "::",
1835            stringify!(y_type)
1836        )
1837    );
1838    assert_eq!(
1839        unsafe { ::std::ptr::addr_of!((*ptr).extra1) as usize - ptr as usize },
1840        32usize,
1841        concat!(
1842            "Offset of field: ",
1843            stringify!(___itt_histogram),
1844            "::",
1845            stringify!(extra1)
1846        )
1847    );
1848    assert_eq!(
1849        unsafe { ::std::ptr::addr_of!((*ptr).extra2) as usize - ptr as usize },
1850        40usize,
1851        concat!(
1852            "Offset of field: ",
1853            stringify!(___itt_histogram),
1854            "::",
1855            stringify!(extra2)
1856        )
1857    );
1858    assert_eq!(
1859        unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
1860        48usize,
1861        concat!(
1862            "Offset of field: ",
1863            stringify!(___itt_histogram),
1864            "::",
1865            stringify!(next)
1866        )
1867    );
1868}
1869pub type __itt_histogram = ___itt_histogram;
1870pub type __itt_histogram_create_ptr__3_0_t = ::std::option::Option<
1871    unsafe extern "C" fn(
1872        domain: *const __itt_domain,
1873        name: *const ::std::os::raw::c_char,
1874        x_type: __itt_metadata_type,
1875        y_type: __itt_metadata_type,
1876    ) -> *mut __itt_histogram,
1877>;
1878extern "C" {
1879    pub static mut __itt_histogram_create_ptr__3_0: __itt_histogram_create_ptr__3_0_t;
1880}
1881pub type __itt_histogram_submit_ptr__3_0_t = ::std::option::Option<
1882    unsafe extern "C" fn(
1883        hist: *mut __itt_histogram,
1884        length: usize,
1885        x_data: *mut ::std::os::raw::c_void,
1886        y_data: *mut ::std::os::raw::c_void,
1887    ),
1888>;
1889extern "C" {
1890    pub static mut __itt_histogram_submit_ptr__3_0: __itt_histogram_submit_ptr__3_0_t;
1891}
1892pub type __itt_counter_create_v3_ptr__3_0_t = ::std::option::Option<
1893    unsafe extern "C" fn(
1894        domain: *const __itt_domain,
1895        name: *const ::std::os::raw::c_char,
1896        type_: __itt_metadata_type,
1897    ) -> __itt_counter,
1898>;
1899extern "C" {
1900    pub static mut __itt_counter_create_v3_ptr__3_0: __itt_counter_create_v3_ptr__3_0_t;
1901}
1902pub type __itt_counter_set_value_v3_ptr__3_0_t = ::std::option::Option<
1903    unsafe extern "C" fn(counter: __itt_counter, value_ptr: *mut ::std::os::raw::c_void),
1904>;
1905extern "C" {
1906    pub static mut __itt_counter_set_value_v3_ptr__3_0: __itt_counter_set_value_v3_ptr__3_0_t;
1907}
1908#[doc = "< Undefined type"]
1909pub const __itt_context_type___itt_context_unknown: __itt_context_type = 0;
1910#[doc = "< ASCII string char* type"]
1911pub const __itt_context_type___itt_context_nameA: __itt_context_type = 1;
1912#[doc = "< Unicode string wchar_t* type"]
1913pub const __itt_context_type___itt_context_nameW: __itt_context_type = 2;
1914#[doc = "< ASCII string char* type"]
1915pub const __itt_context_type___itt_context_deviceA: __itt_context_type = 3;
1916#[doc = "< Unicode string wchar_t* type"]
1917pub const __itt_context_type___itt_context_deviceW: __itt_context_type = 4;
1918#[doc = "< ASCII string char* type"]
1919pub const __itt_context_type___itt_context_unitsA: __itt_context_type = 5;
1920#[doc = "< Unicode string wchar_t* type"]
1921pub const __itt_context_type___itt_context_unitsW: __itt_context_type = 6;
1922#[doc = "< ASCII string char* type"]
1923pub const __itt_context_type___itt_context_pci_addrA: __itt_context_type = 7;
1924#[doc = "< Unicode string wchar_t* type"]
1925pub const __itt_context_type___itt_context_pci_addrW: __itt_context_type = 8;
1926#[doc = "< Unsigned 64-bit integer type"]
1927pub const __itt_context_type___itt_context_tid: __itt_context_type = 9;
1928#[doc = "< Unsigned 64-bit integer type"]
1929pub const __itt_context_type___itt_context_max_val: __itt_context_type = 10;
1930#[doc = "< Unsigned 64-bit integer type"]
1931pub const __itt_context_type___itt_context_bandwidth_flag: __itt_context_type = 11;
1932#[doc = "< Unsigned 64-bit integer type"]
1933pub const __itt_context_type___itt_context_latency_flag: __itt_context_type = 12;
1934#[doc = "< Unsigned 64-bit integer type"]
1935pub const __itt_context_type___itt_context_occupancy_flag: __itt_context_type = 13;
1936#[doc = "< Unsigned 64-bit integer type"]
1937pub const __itt_context_type___itt_context_on_thread_flag: __itt_context_type = 14;
1938#[doc = "< Unsigned 64-bit integer type"]
1939pub const __itt_context_type___itt_context_is_abs_val_flag: __itt_context_type = 15;
1940#[doc = "< Unsigned 64-bit integer type"]
1941pub const __itt_context_type___itt_context_cpu_instructions_flag: __itt_context_type = 16;
1942#[doc = "< Unsigned 64-bit integer type"]
1943pub const __itt_context_type___itt_context_cpu_cycles_flag: __itt_context_type = 17;
1944#[doc = " @brief describes the type of context metadata"]
1945pub type __itt_context_type = ::std::os::raw::c_uint;
1946#[repr(C)]
1947#[derive(Debug, Copy, Clone)]
1948pub struct ___itt_context_metadata {
1949    #[doc = "< Type of the context metadata value"]
1950    pub type_: __itt_context_type,
1951    #[doc = "< Pointer to context metadata value itself"]
1952    pub value: *mut ::std::os::raw::c_void,
1953}
1954#[test]
1955fn bindgen_test_layout____itt_context_metadata() {
1956    const UNINIT: ::std::mem::MaybeUninit<___itt_context_metadata> =
1957        ::std::mem::MaybeUninit::uninit();
1958    let ptr = UNINIT.as_ptr();
1959    assert_eq!(
1960        ::std::mem::size_of::<___itt_context_metadata>(),
1961        16usize,
1962        concat!("Size of: ", stringify!(___itt_context_metadata))
1963    );
1964    assert_eq!(
1965        ::std::mem::align_of::<___itt_context_metadata>(),
1966        8usize,
1967        concat!("Alignment of ", stringify!(___itt_context_metadata))
1968    );
1969    assert_eq!(
1970        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
1971        0usize,
1972        concat!(
1973            "Offset of field: ",
1974            stringify!(___itt_context_metadata),
1975            "::",
1976            stringify!(type_)
1977        )
1978    );
1979    assert_eq!(
1980        unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
1981        8usize,
1982        concat!(
1983            "Offset of field: ",
1984            stringify!(___itt_context_metadata),
1985            "::",
1986            stringify!(value)
1987        )
1988    );
1989}
1990pub type __itt_context_metadata = ___itt_context_metadata;
1991pub type __itt_bind_context_metadata_to_counter_ptr__3_0_t = ::std::option::Option<
1992    unsafe extern "C" fn(
1993        counter: __itt_counter,
1994        length: usize,
1995        metadata: *mut __itt_context_metadata,
1996    ),
1997>;
1998extern "C" {
1999    pub static mut __itt_bind_context_metadata_to_counter_ptr__3_0:
2000        __itt_bind_context_metadata_to_counter_ptr__3_0_t;
2001}