• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* automatically generated by rust-bindgen */
2 
3 pub const ITT_OS_WIN: u32 = 1;
4 pub const ITT_OS_LINUX: u32 = 2;
5 pub const ITT_OS_MAC: u32 = 3;
6 pub const ITT_OS_FREEBSD: u32 = 4;
7 pub const ITT_OS: u32 = 2;
8 pub const ITT_PLATFORM_WIN: u32 = 1;
9 pub const ITT_PLATFORM_POSIX: u32 = 2;
10 pub const ITT_PLATFORM_MAC: u32 = 3;
11 pub const ITT_PLATFORM_FREEBSD: u32 = 4;
12 pub const ITT_PLATFORM: u32 = 2;
13 pub const _STDINT_H: u32 = 1;
14 pub const _FEATURES_H: u32 = 1;
15 pub const _DEFAULT_SOURCE: u32 = 1;
16 pub const __USE_ISOC11: u32 = 1;
17 pub const __USE_ISOC99: u32 = 1;
18 pub const __USE_ISOC95: u32 = 1;
19 pub const __USE_POSIX_IMPLICITLY: u32 = 1;
20 pub const _POSIX_SOURCE: u32 = 1;
21 pub const _POSIX_C_SOURCE: u32 = 200809;
22 pub const __USE_POSIX: u32 = 1;
23 pub const __USE_POSIX2: u32 = 1;
24 pub const __USE_POSIX199309: u32 = 1;
25 pub const __USE_POSIX199506: u32 = 1;
26 pub const __USE_XOPEN2K: u32 = 1;
27 pub const __USE_XOPEN2K8: u32 = 1;
28 pub const _ATFILE_SOURCE: u32 = 1;
29 pub const __USE_MISC: u32 = 1;
30 pub const __USE_ATFILE: u32 = 1;
31 pub const __USE_FORTIFY_LEVEL: u32 = 0;
32 pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
33 pub const _STDC_PREDEF_H: u32 = 1;
34 pub const __STDC_IEC_559__: u32 = 1;
35 pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
36 pub const __STDC_ISO_10646__: u32 = 201706;
37 pub const __STDC_NO_THREADS__: u32 = 1;
38 pub const __GNU_LIBRARY__: u32 = 6;
39 pub const __GLIBC__: u32 = 2;
40 pub const __GLIBC_MINOR__: u32 = 27;
41 pub const _SYS_CDEFS_H: u32 = 1;
42 pub const __glibc_c99_flexarr_available: u32 = 1;
43 pub const __WORDSIZE: u32 = 64;
44 pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
45 pub const __SYSCALL_WORDSIZE: u32 = 64;
46 pub const __HAVE_GENERIC_SELECTION: u32 = 1;
47 pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
48 pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
49 pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
50 pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
51 pub const _BITS_TYPES_H: u32 = 1;
52 pub const _BITS_TYPESIZES_H: u32 = 1;
53 pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
54 pub const __INO_T_MATCHES_INO64_T: u32 = 1;
55 pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
56 pub const __FD_SETSIZE: u32 = 1024;
57 pub const _BITS_WCHAR_H: u32 = 1;
58 pub const _BITS_STDINT_INTN_H: u32 = 1;
59 pub const _BITS_STDINT_UINTN_H: u32 = 1;
60 pub const INT8_MIN: i32 = -128;
61 pub const INT16_MIN: i32 = -32768;
62 pub const INT32_MIN: i32 = -2147483648;
63 pub const INT8_MAX: u32 = 127;
64 pub const INT16_MAX: u32 = 32767;
65 pub const INT32_MAX: u32 = 2147483647;
66 pub const UINT8_MAX: u32 = 255;
67 pub const UINT16_MAX: u32 = 65535;
68 pub const UINT32_MAX: u32 = 4294967295;
69 pub const INT_LEAST8_MIN: i32 = -128;
70 pub const INT_LEAST16_MIN: i32 = -32768;
71 pub const INT_LEAST32_MIN: i32 = -2147483648;
72 pub const INT_LEAST8_MAX: u32 = 127;
73 pub const INT_LEAST16_MAX: u32 = 32767;
74 pub const INT_LEAST32_MAX: u32 = 2147483647;
75 pub const UINT_LEAST8_MAX: u32 = 255;
76 pub const UINT_LEAST16_MAX: u32 = 65535;
77 pub const UINT_LEAST32_MAX: u32 = 4294967295;
78 pub const INT_FAST8_MIN: i32 = -128;
79 pub const INT_FAST16_MIN: i64 = -9223372036854775808;
80 pub const INT_FAST32_MIN: i64 = -9223372036854775808;
81 pub const INT_FAST8_MAX: u32 = 127;
82 pub const INT_FAST16_MAX: u64 = 9223372036854775807;
83 pub const INT_FAST32_MAX: u64 = 9223372036854775807;
84 pub const UINT_FAST8_MAX: u32 = 255;
85 pub const UINT_FAST16_MAX: i32 = -1;
86 pub const UINT_FAST32_MAX: i32 = -1;
87 pub const INTPTR_MIN: i64 = -9223372036854775808;
88 pub const INTPTR_MAX: u64 = 9223372036854775807;
89 pub const UINTPTR_MAX: i32 = -1;
90 pub const PTRDIFF_MIN: i64 = -9223372036854775808;
91 pub const PTRDIFF_MAX: u64 = 9223372036854775807;
92 pub const SIG_ATOMIC_MIN: i32 = -2147483648;
93 pub const SIG_ATOMIC_MAX: u32 = 2147483647;
94 pub const SIZE_MAX: i32 = -1;
95 pub const WINT_MIN: u32 = 0;
96 pub const WINT_MAX: u32 = 4294967295;
97 pub const ITT_MAJOR: u32 = 3;
98 pub const ITT_MINOR: u32 = 0;
99 pub const __itt_suppress_all_errors: u32 = 2147483647;
100 pub const __itt_suppress_threading_errors: u32 = 255;
101 pub const __itt_suppress_memory_errors: u32 = 65280;
102 pub const __itt_attr_barrier: u32 = 1;
103 pub const __itt_attr_mutex: u32 = 2;
104 pub const __itt_heap_leaks: u32 = 1;
105 pub const __itt_heap_growth: u32 = 2;
106 pub const __itt_section_exec: u32 = 536870912;
107 pub const __itt_section_read: u32 = 1073741824;
108 pub const __itt_section_write: u32 = 2147483648;
109 pub type wchar_t = ::std::os::raw::c_int;
110 #[repr(C)]
111 #[repr(align(16))]
112 #[derive(Debug, Copy, Clone)]
113 pub struct max_align_t {
114     pub __clang_max_align_nonce1: ::std::os::raw::c_longlong,
115     pub __bindgen_padding_0: u64,
116     pub __clang_max_align_nonce2: u128,
117 }
118 #[test]
bindgen_test_layout_max_align_t()119 fn bindgen_test_layout_max_align_t() {
120     assert_eq!(
121         ::std::mem::size_of::<max_align_t>(),
122         32usize,
123         concat!("Size of: ", stringify!(max_align_t))
124     );
125     assert_eq!(
126         ::std::mem::align_of::<max_align_t>(),
127         16usize,
128         concat!("Alignment of ", stringify!(max_align_t))
129     );
130     assert_eq!(
131         unsafe {
132             &(*(::std::ptr::null::<max_align_t>())).__clang_max_align_nonce1 as *const _ as usize
133         },
134         0usize,
135         concat!(
136             "Offset of field: ",
137             stringify!(max_align_t),
138             "::",
139             stringify!(__clang_max_align_nonce1)
140         )
141     );
142     assert_eq!(
143         unsafe {
144             &(*(::std::ptr::null::<max_align_t>())).__clang_max_align_nonce2 as *const _ as usize
145         },
146         16usize,
147         concat!(
148             "Offset of field: ",
149             stringify!(max_align_t),
150             "::",
151             stringify!(__clang_max_align_nonce2)
152         )
153     );
154 }
155 pub type __u_char = ::std::os::raw::c_uchar;
156 pub type __u_short = ::std::os::raw::c_ushort;
157 pub type __u_int = ::std::os::raw::c_uint;
158 pub type __u_long = ::std::os::raw::c_ulong;
159 pub type __int8_t = ::std::os::raw::c_schar;
160 pub type __uint8_t = ::std::os::raw::c_uchar;
161 pub type __int16_t = ::std::os::raw::c_short;
162 pub type __uint16_t = ::std::os::raw::c_ushort;
163 pub type __int32_t = ::std::os::raw::c_int;
164 pub type __uint32_t = ::std::os::raw::c_uint;
165 pub type __int64_t = ::std::os::raw::c_long;
166 pub type __uint64_t = ::std::os::raw::c_ulong;
167 pub type __quad_t = ::std::os::raw::c_long;
168 pub type __u_quad_t = ::std::os::raw::c_ulong;
169 pub type __intmax_t = ::std::os::raw::c_long;
170 pub type __uintmax_t = ::std::os::raw::c_ulong;
171 pub type __dev_t = ::std::os::raw::c_ulong;
172 pub type __uid_t = ::std::os::raw::c_uint;
173 pub type __gid_t = ::std::os::raw::c_uint;
174 pub type __ino_t = ::std::os::raw::c_ulong;
175 pub type __ino64_t = ::std::os::raw::c_ulong;
176 pub type __mode_t = ::std::os::raw::c_uint;
177 pub type __nlink_t = ::std::os::raw::c_ulong;
178 pub type __off_t = ::std::os::raw::c_long;
179 pub type __off64_t = ::std::os::raw::c_long;
180 pub type __pid_t = ::std::os::raw::c_int;
181 #[repr(C)]
182 #[derive(Debug, Copy, Clone)]
183 pub struct __fsid_t {
184     pub __val: [::std::os::raw::c_int; 2usize],
185 }
186 #[test]
bindgen_test_layout___fsid_t()187 fn bindgen_test_layout___fsid_t() {
188     assert_eq!(
189         ::std::mem::size_of::<__fsid_t>(),
190         8usize,
191         concat!("Size of: ", stringify!(__fsid_t))
192     );
193     assert_eq!(
194         ::std::mem::align_of::<__fsid_t>(),
195         4usize,
196         concat!("Alignment of ", stringify!(__fsid_t))
197     );
198     assert_eq!(
199         unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize },
200         0usize,
201         concat!(
202             "Offset of field: ",
203             stringify!(__fsid_t),
204             "::",
205             stringify!(__val)
206         )
207     );
208 }
209 pub type __clock_t = ::std::os::raw::c_long;
210 pub type __rlim_t = ::std::os::raw::c_ulong;
211 pub type __rlim64_t = ::std::os::raw::c_ulong;
212 pub type __id_t = ::std::os::raw::c_uint;
213 pub type __time_t = ::std::os::raw::c_long;
214 pub type __useconds_t = ::std::os::raw::c_uint;
215 pub type __suseconds_t = ::std::os::raw::c_long;
216 pub type __daddr_t = ::std::os::raw::c_int;
217 pub type __key_t = ::std::os::raw::c_int;
218 pub type __clockid_t = ::std::os::raw::c_int;
219 pub type __timer_t = *mut ::std::os::raw::c_void;
220 pub type __blksize_t = ::std::os::raw::c_long;
221 pub type __blkcnt_t = ::std::os::raw::c_long;
222 pub type __blkcnt64_t = ::std::os::raw::c_long;
223 pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
224 pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
225 pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
226 pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
227 pub type __fsword_t = ::std::os::raw::c_long;
228 pub type __ssize_t = ::std::os::raw::c_long;
229 pub type __syscall_slong_t = ::std::os::raw::c_long;
230 pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
231 pub type __loff_t = __off64_t;
232 pub type __caddr_t = *mut ::std::os::raw::c_char;
233 pub type __intptr_t = ::std::os::raw::c_long;
234 pub type __socklen_t = ::std::os::raw::c_uint;
235 pub type __sig_atomic_t = ::std::os::raw::c_int;
236 pub type int_least8_t = ::std::os::raw::c_schar;
237 pub type int_least16_t = ::std::os::raw::c_short;
238 pub type int_least32_t = ::std::os::raw::c_int;
239 pub type int_least64_t = ::std::os::raw::c_long;
240 pub type uint_least8_t = ::std::os::raw::c_uchar;
241 pub type uint_least16_t = ::std::os::raw::c_ushort;
242 pub type uint_least32_t = ::std::os::raw::c_uint;
243 pub type uint_least64_t = ::std::os::raw::c_ulong;
244 pub type int_fast8_t = ::std::os::raw::c_schar;
245 pub type int_fast16_t = ::std::os::raw::c_long;
246 pub type int_fast32_t = ::std::os::raw::c_long;
247 pub type int_fast64_t = ::std::os::raw::c_long;
248 pub type uint_fast8_t = ::std::os::raw::c_uchar;
249 pub type uint_fast16_t = ::std::os::raw::c_ulong;
250 pub type uint_fast32_t = ::std::os::raw::c_ulong;
251 pub type uint_fast64_t = ::std::os::raw::c_ulong;
252 pub type intmax_t = __intmax_t;
253 pub type uintmax_t = __uintmax_t;
254 extern "C" {
255     #[doc = " @defgroup control Collection Control"]
256     #[doc = " @ingroup public"]
257     #[doc = " General behavior: application continues to run, but no profiling information is being collected"]
258     #[doc = ""]
259     #[doc = " Pausing occurs not only for the current thread but for all process as well as spawned processes"]
260     #[doc = " - Intel(R) Parallel Inspector and Intel(R) Inspector XE:"]
261     #[doc = "   - Does not analyze or report errors that involve memory access."]
262     #[doc = "   - Other errors are reported as usual. Pausing data collection in"]
263     #[doc = "     Intel(R) Parallel Inspector and Intel(R) Inspector XE"]
264     #[doc = "     only pauses tracing and analyzing memory access."]
265     #[doc = "     It does not pause tracing or analyzing threading APIs."]
266     #[doc = "   ."]
267     #[doc = " - Intel(R) Parallel Amplifier and Intel(R) VTune(TM) Amplifier XE:"]
268     #[doc = "   - Does continue to record when new threads are started."]
269     #[doc = "   ."]
270     #[doc = " - Other effects:"]
271     #[doc = "   - Possible reduction of runtime overhead."]
272     #[doc = "   ."]
273     #[doc = " @{"]
__itt_pause()274     pub fn __itt_pause();
275 }
276 extern "C" {
277     #[doc = " @brief Resume collection"]
__itt_resume()278     pub fn __itt_resume();
279 }
280 extern "C" {
281     #[doc = " @brief Detach collection"]
__itt_detach()282     pub fn __itt_detach();
283 }
284 pub type __itt_pause_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
285 extern "C" {
286     pub static mut __itt_pause_ptr__3_0: __itt_pause_ptr__3_0_t;
287 }
288 pub type __itt_resume_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
289 extern "C" {
290     pub static mut __itt_resume_ptr__3_0: __itt_resume_ptr__3_0_t;
291 }
292 pub type __itt_detach_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
293 extern "C" {
294     pub static mut __itt_detach_ptr__3_0: __itt_detach_ptr__3_0_t;
295 }
296 #[doc = " @defgroup Intel Processor Trace control"]
297 #[doc = " API from this group provides control over collection and analysis of Intel Processor Trace (Intel PT) data"]
298 #[doc = " Information about Intel Processor Trace technology can be found here (Volume 3 chapter 35):"]
299 #[doc = " https://software.intel.com/sites/default/files/managed/39/c5/325462-sdm-vol-1-2abcd-3abcd.pdf"]
300 #[doc = " Use this API to mark particular code regions for loading detailed performance statistics."]
301 #[doc = " This mode makes your analysis faster and more accurate."]
302 #[doc = " @{"]
303 pub type __itt_pt_region = ::std::os::raw::c_uchar;
304 extern "C" {
__itt_pt_region_create(name: *const ::std::os::raw::c_char) -> __itt_pt_region305     pub fn __itt_pt_region_create(name: *const ::std::os::raw::c_char) -> __itt_pt_region;
306 }
307 pub type __itt_pt_region_create_ptr__3_0_t = ::std::option::Option<
308     unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> __itt_pt_region,
309 >;
310 extern "C" {
311     pub static mut __itt_pt_region_create_ptr__3_0: __itt_pt_region_create_ptr__3_0_t;
312 }
313 extern "C" {
314     #[doc = " @brief function contains a special code pattern identified on the post-processing stage and"]
315     #[doc = " marks the beginning of a code region targeted for Intel PT analysis"]
316     #[doc = " @param[in] region - region id, 0 <= region < 8"]
__itt_mark_pt_region_begin(region: __itt_pt_region)317     pub fn __itt_mark_pt_region_begin(region: __itt_pt_region);
318 }
319 extern "C" {
320     #[doc = " @brief function contains a special code pattern identified on the post-processing stage and"]
321     #[doc = " marks the end of a code region targeted for Intel PT analysis"]
322     #[doc = " @param[in] region - region id, 0 <= region < 8"]
__itt_mark_pt_region_end(region: __itt_pt_region)323     pub fn __itt_mark_pt_region_end(region: __itt_pt_region);
324 }
325 extern "C" {
__itt_thread_set_name(name: *const ::std::os::raw::c_char)326     pub fn __itt_thread_set_name(name: *const ::std::os::raw::c_char);
327 }
328 pub type __itt_thread_set_name_ptr__3_0_t =
329     ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
330 extern "C" {
331     pub static mut __itt_thread_set_name_ptr__3_0: __itt_thread_set_name_ptr__3_0_t;
332 }
333 extern "C" {
334     #[doc = " @brief Mark current thread as ignored from this point on, for the duration of its existence."]
__itt_thread_ignore()335     pub fn __itt_thread_ignore();
336 }
337 pub type __itt_thread_ignore_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
338 extern "C" {
339     pub static mut __itt_thread_ignore_ptr__3_0: __itt_thread_ignore_ptr__3_0_t;
340 }
341 extern "C" {
342     #[doc = " @brief Start suppressing errors identified in mask on this thread"]
__itt_suppress_push(mask: ::std::os::raw::c_uint)343     pub fn __itt_suppress_push(mask: ::std::os::raw::c_uint);
344 }
345 pub type __itt_suppress_push_ptr__3_0_t =
346     ::std::option::Option<unsafe extern "C" fn(mask: ::std::os::raw::c_uint)>;
347 extern "C" {
348     pub static mut __itt_suppress_push_ptr__3_0: __itt_suppress_push_ptr__3_0_t;
349 }
350 extern "C" {
351     #[doc = " @brief Undo the effects of the matching call to __itt_suppress_push"]
__itt_suppress_pop()352     pub fn __itt_suppress_pop();
353 }
354 pub type __itt_suppress_pop_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
355 extern "C" {
356     pub static mut __itt_suppress_pop_ptr__3_0: __itt_suppress_pop_ptr__3_0_t;
357 }
358 pub const __itt_suppress_mode___itt_unsuppress_range: __itt_suppress_mode = 0;
359 pub const __itt_suppress_mode___itt_suppress_range: __itt_suppress_mode = 1;
360 #[doc = " @enum __itt_model_disable"]
361 #[doc = " @brief Enumerator for the disable methods"]
362 pub type __itt_suppress_mode = u32;
363 pub use self::__itt_suppress_mode as __itt_suppress_mode_t;
364 extern "C" {
365     #[doc = " @brief Mark a range of memory for error suppression or unsuppression for error types included in mask"]
__itt_suppress_mark_range( mode: __itt_suppress_mode_t, mask: ::std::os::raw::c_uint, address: *mut ::std::os::raw::c_void, size: usize, )366     pub fn __itt_suppress_mark_range(
367         mode: __itt_suppress_mode_t,
368         mask: ::std::os::raw::c_uint,
369         address: *mut ::std::os::raw::c_void,
370         size: usize,
371     );
372 }
373 pub type __itt_suppress_mark_range_ptr__3_0_t = ::std::option::Option<
374     unsafe extern "C" fn(
375         mode: __itt_suppress_mode_t,
376         mask: ::std::os::raw::c_uint,
377         address: *mut ::std::os::raw::c_void,
378         size: usize,
379     ),
380 >;
381 extern "C" {
382     pub static mut __itt_suppress_mark_range_ptr__3_0: __itt_suppress_mark_range_ptr__3_0_t;
383 }
384 extern "C" {
385     #[doc = " @brief Undo the effect of a matching call to __itt_suppress_mark_range.   If not matching"]
386     #[doc = "        call is found, nothing is changed."]
__itt_suppress_clear_range( mode: __itt_suppress_mode_t, mask: ::std::os::raw::c_uint, address: *mut ::std::os::raw::c_void, size: usize, )387     pub fn __itt_suppress_clear_range(
388         mode: __itt_suppress_mode_t,
389         mask: ::std::os::raw::c_uint,
390         address: *mut ::std::os::raw::c_void,
391         size: usize,
392     );
393 }
394 pub type __itt_suppress_clear_range_ptr__3_0_t = ::std::option::Option<
395     unsafe extern "C" fn(
396         mode: __itt_suppress_mode_t,
397         mask: ::std::os::raw::c_uint,
398         address: *mut ::std::os::raw::c_void,
399         size: usize,
400     ),
401 >;
402 extern "C" {
403     pub static mut __itt_suppress_clear_range_ptr__3_0: __itt_suppress_clear_range_ptr__3_0_t;
404 }
405 extern "C" {
__itt_sync_create( addr: *mut ::std::os::raw::c_void, objtype: *const ::std::os::raw::c_char, objname: *const ::std::os::raw::c_char, attribute: ::std::os::raw::c_int, )406     pub fn __itt_sync_create(
407         addr: *mut ::std::os::raw::c_void,
408         objtype: *const ::std::os::raw::c_char,
409         objname: *const ::std::os::raw::c_char,
410         attribute: ::std::os::raw::c_int,
411     );
412 }
413 pub type __itt_sync_create_ptr__3_0_t = ::std::option::Option<
414     unsafe extern "C" fn(
415         addr: *mut ::std::os::raw::c_void,
416         objtype: *const ::std::os::raw::c_char,
417         objname: *const ::std::os::raw::c_char,
418         attribute: ::std::os::raw::c_int,
419     ),
420 >;
421 extern "C" {
422     pub static mut __itt_sync_create_ptr__3_0: __itt_sync_create_ptr__3_0_t;
423 }
424 extern "C" {
__itt_sync_rename( addr: *mut ::std::os::raw::c_void, name: *const ::std::os::raw::c_char, )425     pub fn __itt_sync_rename(
426         addr: *mut ::std::os::raw::c_void,
427         name: *const ::std::os::raw::c_char,
428     );
429 }
430 pub type __itt_sync_rename_ptr__3_0_t = ::std::option::Option<
431     unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, name: *const ::std::os::raw::c_char),
432 >;
433 extern "C" {
434     pub static mut __itt_sync_rename_ptr__3_0: __itt_sync_rename_ptr__3_0_t;
435 }
436 extern "C" {
437     #[doc = "@brief Destroy a synchronization object."]
438     #[doc = "@param addr Handle for the synchronization object."]
__itt_sync_destroy(addr: *mut ::std::os::raw::c_void)439     pub fn __itt_sync_destroy(addr: *mut ::std::os::raw::c_void);
440 }
441 pub type __itt_sync_destroy_ptr__3_0_t =
442     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
443 extern "C" {
444     pub static mut __itt_sync_destroy_ptr__3_0: __itt_sync_destroy_ptr__3_0_t;
445 }
446 extern "C" {
447     #[doc = " @name group of functions is used for performance measurement tools"]
448     #[doc = " @brief Enter spin loop on user-defined sync object"]
__itt_sync_prepare(addr: *mut ::std::os::raw::c_void)449     pub fn __itt_sync_prepare(addr: *mut ::std::os::raw::c_void);
450 }
451 pub type __itt_sync_prepare_ptr__3_0_t =
452     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
453 extern "C" {
454     pub static mut __itt_sync_prepare_ptr__3_0: __itt_sync_prepare_ptr__3_0_t;
455 }
456 extern "C" {
457     #[doc = " @brief Quit spin loop without acquiring spin object"]
__itt_sync_cancel(addr: *mut ::std::os::raw::c_void)458     pub fn __itt_sync_cancel(addr: *mut ::std::os::raw::c_void);
459 }
460 pub type __itt_sync_cancel_ptr__3_0_t =
461     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
462 extern "C" {
463     pub static mut __itt_sync_cancel_ptr__3_0: __itt_sync_cancel_ptr__3_0_t;
464 }
465 extern "C" {
466     #[doc = " @brief Successful spin loop completion (sync object acquired)"]
__itt_sync_acquired(addr: *mut ::std::os::raw::c_void)467     pub fn __itt_sync_acquired(addr: *mut ::std::os::raw::c_void);
468 }
469 pub type __itt_sync_acquired_ptr__3_0_t =
470     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
471 extern "C" {
472     pub static mut __itt_sync_acquired_ptr__3_0: __itt_sync_acquired_ptr__3_0_t;
473 }
474 extern "C" {
475     #[doc = " @brief Start sync object releasing code. Is called before the lock release call."]
__itt_sync_releasing(addr: *mut ::std::os::raw::c_void)476     pub fn __itt_sync_releasing(addr: *mut ::std::os::raw::c_void);
477 }
478 pub type __itt_sync_releasing_ptr__3_0_t =
479     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
480 extern "C" {
481     pub static mut __itt_sync_releasing_ptr__3_0: __itt_sync_releasing_ptr__3_0_t;
482 }
483 extern "C" {
484     #[doc = " @name group of functions is used for correctness checking tools"]
485     #[doc = " @ingroup legacy"]
486     #[doc = " @deprecated Legacy API"]
487     #[doc = " @brief Fast synchronization which does no require spinning."]
488     #[doc = " - This special function is to be used by TBB and OpenMP libraries only when they know"]
489     #[doc = "   there is no spin but they need to suppress TC warnings about shared variable modifications."]
490     #[doc = " - It only has corresponding pointers in static library and does not have corresponding function"]
491     #[doc = "   in dynamic library."]
492     #[doc = " @see void __itt_sync_prepare(void* addr);"]
__itt_fsync_prepare(addr: *mut ::std::os::raw::c_void)493     pub fn __itt_fsync_prepare(addr: *mut ::std::os::raw::c_void);
494 }
495 pub type __itt_fsync_prepare_ptr__3_0_t =
496     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
497 extern "C" {
498     pub static mut __itt_fsync_prepare_ptr__3_0: __itt_fsync_prepare_ptr__3_0_t;
499 }
500 extern "C" {
501     #[doc = " @ingroup legacy"]
502     #[doc = " @deprecated Legacy API"]
503     #[doc = " @brief Fast synchronization which does no require spinning."]
504     #[doc = " - This special function is to be used by TBB and OpenMP libraries only when they know"]
505     #[doc = "   there is no spin but they need to suppress TC warnings about shared variable modifications."]
506     #[doc = " - It only has corresponding pointers in static library and does not have corresponding function"]
507     #[doc = "   in dynamic library."]
508     #[doc = " @see void __itt_sync_cancel(void *addr);"]
__itt_fsync_cancel(addr: *mut ::std::os::raw::c_void)509     pub fn __itt_fsync_cancel(addr: *mut ::std::os::raw::c_void);
510 }
511 pub type __itt_fsync_cancel_ptr__3_0_t =
512     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
513 extern "C" {
514     pub static mut __itt_fsync_cancel_ptr__3_0: __itt_fsync_cancel_ptr__3_0_t;
515 }
516 extern "C" {
517     #[doc = " @ingroup legacy"]
518     #[doc = " @deprecated Legacy API"]
519     #[doc = " @brief Fast synchronization which does no require spinning."]
520     #[doc = " - This special function is to be used by TBB and OpenMP libraries only when they know"]
521     #[doc = "   there is no spin but they need to suppress TC warnings about shared variable modifications."]
522     #[doc = " - It only has corresponding pointers in static library and does not have corresponding function"]
523     #[doc = "   in dynamic library."]
524     #[doc = " @see void __itt_sync_acquired(void *addr);"]
__itt_fsync_acquired(addr: *mut ::std::os::raw::c_void)525     pub fn __itt_fsync_acquired(addr: *mut ::std::os::raw::c_void);
526 }
527 pub type __itt_fsync_acquired_ptr__3_0_t =
528     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
529 extern "C" {
530     pub static mut __itt_fsync_acquired_ptr__3_0: __itt_fsync_acquired_ptr__3_0_t;
531 }
532 extern "C" {
533     #[doc = " @ingroup legacy"]
534     #[doc = " @deprecated Legacy API"]
535     #[doc = " @brief Fast synchronization which does no require spinning."]
536     #[doc = " - This special function is to be used by TBB and OpenMP libraries only when they know"]
537     #[doc = "   there is no spin but they need to suppress TC warnings about shared variable modifications."]
538     #[doc = " - It only has corresponding pointers in static library and does not have corresponding function"]
539     #[doc = "   in dynamic library."]
540     #[doc = " @see void __itt_sync_releasing(void* addr);"]
__itt_fsync_releasing(addr: *mut ::std::os::raw::c_void)541     pub fn __itt_fsync_releasing(addr: *mut ::std::os::raw::c_void);
542 }
543 pub type __itt_fsync_releasing_ptr__3_0_t =
544     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
545 extern "C" {
546     pub static mut __itt_fsync_releasing_ptr__3_0: __itt_fsync_releasing_ptr__3_0_t;
547 }
548 pub type __itt_model_site = *mut ::std::os::raw::c_void;
549 pub type __itt_model_site_instance = *mut ::std::os::raw::c_void;
550 pub type __itt_model_task = *mut ::std::os::raw::c_void;
551 pub type __itt_model_task_instance = *mut ::std::os::raw::c_void;
552 pub const __itt_model_disable___itt_model_disable_observation: __itt_model_disable = 0;
553 pub const __itt_model_disable___itt_model_disable_collection: __itt_model_disable = 1;
554 #[doc = " @enum __itt_model_disable"]
555 #[doc = " @brief Enumerator for the disable methods"]
556 pub type __itt_model_disable = u32;
557 extern "C" {
558     #[doc = " @brief ANNOTATE_SITE_BEGIN/ANNOTATE_SITE_END support."]
559     #[doc = ""]
560     #[doc = " site_begin/end model a potential concurrency site."]
561     #[doc = " site instances may be recursively nested with themselves."]
562     #[doc = " site_end exits the most recently started but unended site for the current"]
563     #[doc = " thread.  The handle passed to end may be used to validate structure."]
564     #[doc = " Instances of a site encountered on different threads concurrently"]
565     #[doc = " are considered completely distinct. If the site name for two different"]
566     #[doc = " lexical sites match, it is unspecified whether they are treated as the"]
567     #[doc = " same or different for data presentation."]
__itt_model_site_begin( site: *mut __itt_model_site, instance: *mut __itt_model_site_instance, name: *const ::std::os::raw::c_char, )568     pub fn __itt_model_site_begin(
569         site: *mut __itt_model_site,
570         instance: *mut __itt_model_site_instance,
571         name: *const ::std::os::raw::c_char,
572     );
573 }
574 extern "C" {
__itt_model_site_beginA(name: *const ::std::os::raw::c_char)575     pub fn __itt_model_site_beginA(name: *const ::std::os::raw::c_char);
576 }
577 extern "C" {
__itt_model_site_beginAL(name: *const ::std::os::raw::c_char, siteNameLen: usize)578     pub fn __itt_model_site_beginAL(name: *const ::std::os::raw::c_char, siteNameLen: usize);
579 }
580 extern "C" {
__itt_model_site_end( site: *mut __itt_model_site, instance: *mut __itt_model_site_instance, )581     pub fn __itt_model_site_end(
582         site: *mut __itt_model_site,
583         instance: *mut __itt_model_site_instance,
584     );
585 }
586 extern "C" {
__itt_model_site_end_2()587     pub fn __itt_model_site_end_2();
588 }
589 pub type __itt_model_site_begin_ptr__3_0_t = ::std::option::Option<
590     unsafe extern "C" fn(
591         site: *mut __itt_model_site,
592         instance: *mut __itt_model_site_instance,
593         name: *const ::std::os::raw::c_char,
594     ),
595 >;
596 extern "C" {
597     pub static mut __itt_model_site_begin_ptr__3_0: __itt_model_site_begin_ptr__3_0_t;
598 }
599 pub type __itt_model_site_beginA_ptr__3_0_t =
600     ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
601 extern "C" {
602     pub static mut __itt_model_site_beginA_ptr__3_0: __itt_model_site_beginA_ptr__3_0_t;
603 }
604 pub type __itt_model_site_beginAL_ptr__3_0_t = ::std::option::Option<
605     unsafe extern "C" fn(name: *const ::std::os::raw::c_char, siteNameLen: usize),
606 >;
607 extern "C" {
608     pub static mut __itt_model_site_beginAL_ptr__3_0: __itt_model_site_beginAL_ptr__3_0_t;
609 }
610 pub type __itt_model_site_end_ptr__3_0_t = ::std::option::Option<
611     unsafe extern "C" fn(site: *mut __itt_model_site, instance: *mut __itt_model_site_instance),
612 >;
613 extern "C" {
614     pub static mut __itt_model_site_end_ptr__3_0: __itt_model_site_end_ptr__3_0_t;
615 }
616 pub type __itt_model_site_end_2_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
617 extern "C" {
618     pub static mut __itt_model_site_end_2_ptr__3_0: __itt_model_site_end_2_ptr__3_0_t;
619 }
620 extern "C" {
621     #[doc = " @brief ANNOTATE_TASK_BEGIN/ANNOTATE_TASK_END support"]
622     #[doc = ""]
623     #[doc = " task_begin/end model a potential task, which is contained within the most"]
624     #[doc = " closely enclosing dynamic site.  task_end exits the most recently started"]
625     #[doc = " but unended task.  The handle passed to end may be used to validate"]
626     #[doc = " structure.  It is unspecified if bad dynamic nesting is detected.  If it"]
627     #[doc = " is, it should be encoded in the resulting data collection.  The collector"]
628     #[doc = " should not fail due to construct nesting issues, nor attempt to directly"]
629     #[doc = " indicate the problem."]
__itt_model_task_begin( task: *mut __itt_model_task, instance: *mut __itt_model_task_instance, name: *const ::std::os::raw::c_char, )630     pub fn __itt_model_task_begin(
631         task: *mut __itt_model_task,
632         instance: *mut __itt_model_task_instance,
633         name: *const ::std::os::raw::c_char,
634     );
635 }
636 extern "C" {
__itt_model_task_beginA(name: *const ::std::os::raw::c_char)637     pub fn __itt_model_task_beginA(name: *const ::std::os::raw::c_char);
638 }
639 extern "C" {
__itt_model_task_beginAL(name: *const ::std::os::raw::c_char, taskNameLen: usize)640     pub fn __itt_model_task_beginAL(name: *const ::std::os::raw::c_char, taskNameLen: usize);
641 }
642 extern "C" {
__itt_model_iteration_taskA(name: *const ::std::os::raw::c_char)643     pub fn __itt_model_iteration_taskA(name: *const ::std::os::raw::c_char);
644 }
645 extern "C" {
__itt_model_iteration_taskAL(name: *const ::std::os::raw::c_char, taskNameLen: usize)646     pub fn __itt_model_iteration_taskAL(name: *const ::std::os::raw::c_char, taskNameLen: usize);
647 }
648 extern "C" {
__itt_model_task_end( task: *mut __itt_model_task, instance: *mut __itt_model_task_instance, )649     pub fn __itt_model_task_end(
650         task: *mut __itt_model_task,
651         instance: *mut __itt_model_task_instance,
652     );
653 }
654 extern "C" {
__itt_model_task_end_2()655     pub fn __itt_model_task_end_2();
656 }
657 pub type __itt_model_task_begin_ptr__3_0_t = ::std::option::Option<
658     unsafe extern "C" fn(
659         task: *mut __itt_model_task,
660         instance: *mut __itt_model_task_instance,
661         name: *const ::std::os::raw::c_char,
662     ),
663 >;
664 extern "C" {
665     pub static mut __itt_model_task_begin_ptr__3_0: __itt_model_task_begin_ptr__3_0_t;
666 }
667 pub type __itt_model_task_beginA_ptr__3_0_t =
668     ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
669 extern "C" {
670     pub static mut __itt_model_task_beginA_ptr__3_0: __itt_model_task_beginA_ptr__3_0_t;
671 }
672 pub type __itt_model_task_beginAL_ptr__3_0_t = ::std::option::Option<
673     unsafe extern "C" fn(name: *const ::std::os::raw::c_char, taskNameLen: usize),
674 >;
675 extern "C" {
676     pub static mut __itt_model_task_beginAL_ptr__3_0: __itt_model_task_beginAL_ptr__3_0_t;
677 }
678 pub type __itt_model_iteration_taskA_ptr__3_0_t =
679     ::std::option::Option<unsafe extern "C" fn(name: *const ::std::os::raw::c_char)>;
680 extern "C" {
681     pub static mut __itt_model_iteration_taskA_ptr__3_0: __itt_model_iteration_taskA_ptr__3_0_t;
682 }
683 pub type __itt_model_iteration_taskAL_ptr__3_0_t = ::std::option::Option<
684     unsafe extern "C" fn(name: *const ::std::os::raw::c_char, taskNameLen: usize),
685 >;
686 extern "C" {
687     pub static mut __itt_model_iteration_taskAL_ptr__3_0: __itt_model_iteration_taskAL_ptr__3_0_t;
688 }
689 pub type __itt_model_task_end_ptr__3_0_t = ::std::option::Option<
690     unsafe extern "C" fn(task: *mut __itt_model_task, instance: *mut __itt_model_task_instance),
691 >;
692 extern "C" {
693     pub static mut __itt_model_task_end_ptr__3_0: __itt_model_task_end_ptr__3_0_t;
694 }
695 pub type __itt_model_task_end_2_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
696 extern "C" {
697     pub static mut __itt_model_task_end_2_ptr__3_0: __itt_model_task_end_2_ptr__3_0_t;
698 }
699 extern "C" {
700     #[doc = " @brief ANNOTATE_LOCK_ACQUIRE/ANNOTATE_LOCK_RELEASE support"]
701     #[doc = ""]
702     #[doc = " lock_acquire/release model a potential lock for both lockset and"]
703     #[doc = " performance modeling.  Each unique address is modeled as a separate"]
704     #[doc = " lock, with invalid addresses being valid lock IDs.  Specifically:"]
705     #[doc = " no storage is accessed by the API at the specified address - it is only"]
706     #[doc = " used for lock identification.  Lock acquires may be self-nested and are"]
707     #[doc = " unlocked by a corresponding number of releases."]
708     #[doc = " (These closely correspond to __itt_sync_acquired/__itt_sync_releasing,"]
709     #[doc = " but may not have identical semantics.)"]
__itt_model_lock_acquire(lock: *mut ::std::os::raw::c_void)710     pub fn __itt_model_lock_acquire(lock: *mut ::std::os::raw::c_void);
711 }
712 extern "C" {
__itt_model_lock_acquire_2(lock: *mut ::std::os::raw::c_void)713     pub fn __itt_model_lock_acquire_2(lock: *mut ::std::os::raw::c_void);
714 }
715 extern "C" {
__itt_model_lock_release(lock: *mut ::std::os::raw::c_void)716     pub fn __itt_model_lock_release(lock: *mut ::std::os::raw::c_void);
717 }
718 extern "C" {
__itt_model_lock_release_2(lock: *mut ::std::os::raw::c_void)719     pub fn __itt_model_lock_release_2(lock: *mut ::std::os::raw::c_void);
720 }
721 pub type __itt_model_lock_acquire_ptr__3_0_t =
722     ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
723 extern "C" {
724     pub static mut __itt_model_lock_acquire_ptr__3_0: __itt_model_lock_acquire_ptr__3_0_t;
725 }
726 pub type __itt_model_lock_acquire_2_ptr__3_0_t =
727     ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
728 extern "C" {
729     pub static mut __itt_model_lock_acquire_2_ptr__3_0: __itt_model_lock_acquire_2_ptr__3_0_t;
730 }
731 pub type __itt_model_lock_release_ptr__3_0_t =
732     ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
733 extern "C" {
734     pub static mut __itt_model_lock_release_ptr__3_0: __itt_model_lock_release_ptr__3_0_t;
735 }
736 pub type __itt_model_lock_release_2_ptr__3_0_t =
737     ::std::option::Option<unsafe extern "C" fn(lock: *mut ::std::os::raw::c_void)>;
738 extern "C" {
739     pub static mut __itt_model_lock_release_2_ptr__3_0: __itt_model_lock_release_2_ptr__3_0_t;
740 }
741 extern "C" {
742     #[doc = " @brief ANNOTATE_RECORD_ALLOCATION/ANNOTATE_RECORD_DEALLOCATION support"]
743     #[doc = ""]
744     #[doc = " record_allocation/deallocation describe user-defined memory allocator"]
745     #[doc = " behavior, which may be required for correctness modeling to understand"]
746     #[doc = " when storage is not expected to be actually reused across threads."]
__itt_model_record_allocation(addr: *mut ::std::os::raw::c_void, size: usize)747     pub fn __itt_model_record_allocation(addr: *mut ::std::os::raw::c_void, size: usize);
748 }
749 extern "C" {
__itt_model_record_deallocation(addr: *mut ::std::os::raw::c_void)750     pub fn __itt_model_record_deallocation(addr: *mut ::std::os::raw::c_void);
751 }
752 pub type __itt_model_record_allocation_ptr__3_0_t =
753     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
754 extern "C" {
755     pub static mut __itt_model_record_allocation_ptr__3_0: __itt_model_record_allocation_ptr__3_0_t;
756 }
757 pub type __itt_model_record_deallocation_ptr__3_0_t =
758     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
759 extern "C" {
760     pub static mut __itt_model_record_deallocation_ptr__3_0:
761         __itt_model_record_deallocation_ptr__3_0_t;
762 }
763 extern "C" {
764     #[doc = " @brief ANNOTATE_INDUCTION_USES support"]
765     #[doc = ""]
766     #[doc = " Note particular storage is inductive through the end of the current site"]
__itt_model_induction_uses(addr: *mut ::std::os::raw::c_void, size: usize)767     pub fn __itt_model_induction_uses(addr: *mut ::std::os::raw::c_void, size: usize);
768 }
769 pub type __itt_model_induction_uses_ptr__3_0_t =
770     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
771 extern "C" {
772     pub static mut __itt_model_induction_uses_ptr__3_0: __itt_model_induction_uses_ptr__3_0_t;
773 }
774 extern "C" {
775     #[doc = " @brief ANNOTATE_REDUCTION_USES support"]
776     #[doc = ""]
777     #[doc = " Note particular storage is used for reduction through the end"]
778     #[doc = " of the current site"]
__itt_model_reduction_uses(addr: *mut ::std::os::raw::c_void, size: usize)779     pub fn __itt_model_reduction_uses(addr: *mut ::std::os::raw::c_void, size: usize);
780 }
781 pub type __itt_model_reduction_uses_ptr__3_0_t =
782     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
783 extern "C" {
784     pub static mut __itt_model_reduction_uses_ptr__3_0: __itt_model_reduction_uses_ptr__3_0_t;
785 }
786 extern "C" {
787     #[doc = " @brief ANNOTATE_OBSERVE_USES support"]
788     #[doc = ""]
789     #[doc = " Have correctness modeling record observations about uses of storage"]
790     #[doc = " through the end of the current site"]
__itt_model_observe_uses(addr: *mut ::std::os::raw::c_void, size: usize)791     pub fn __itt_model_observe_uses(addr: *mut ::std::os::raw::c_void, size: usize);
792 }
793 pub type __itt_model_observe_uses_ptr__3_0_t =
794     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void, size: usize)>;
795 extern "C" {
796     pub static mut __itt_model_observe_uses_ptr__3_0: __itt_model_observe_uses_ptr__3_0_t;
797 }
798 extern "C" {
799     #[doc = " @brief ANNOTATE_CLEAR_USES support"]
800     #[doc = ""]
801     #[doc = " Clear the special handling of a piece of storage related to induction,"]
802     #[doc = " reduction or observe_uses"]
__itt_model_clear_uses(addr: *mut ::std::os::raw::c_void)803     pub fn __itt_model_clear_uses(addr: *mut ::std::os::raw::c_void);
804 }
805 pub type __itt_model_clear_uses_ptr__3_0_t =
806     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
807 extern "C" {
808     pub static mut __itt_model_clear_uses_ptr__3_0: __itt_model_clear_uses_ptr__3_0_t;
809 }
810 extern "C" {
811     #[doc = " @brief ANNOTATE_DISABLE_*_PUSH/ANNOTATE_DISABLE_*_POP support"]
812     #[doc = ""]
813     #[doc = " disable_push/disable_pop push and pop disabling based on a parameter."]
814     #[doc = " Disabling observations stops processing of memory references during"]
815     #[doc = " correctness modeling, and all annotations that occur in the disabled"]
816     #[doc = " region.  This allows description of code that is expected to be handled"]
817     #[doc = " specially during conversion to parallelism or that is not recognized"]
818     #[doc = " by tools (e.g. some kinds of synchronization operations.)"]
819     #[doc = " This mechanism causes all annotations in the disabled region, other"]
820     #[doc = " than disable_push and disable_pop, to be ignored.  (For example, this"]
821     #[doc = " might validly be used to disable an entire parallel site and the contained"]
822     #[doc = " tasks and locking in it for data collection purposes.)"]
823     #[doc = " The disable for collection is a more expensive operation, but reduces"]
824     #[doc = " collector overhead significantly.  This applies to BOTH correctness data"]
825     #[doc = " collection and performance data collection.  For example, a site"]
826     #[doc = " containing a task might only enable data collection for the first 10"]
827     #[doc = " iterations.  Both performance and correctness data should reflect this,"]
828     #[doc = " and the program should run as close to full speed as possible when"]
829     #[doc = " collection is disabled."]
__itt_model_disable_push(x: __itt_model_disable)830     pub fn __itt_model_disable_push(x: __itt_model_disable);
831 }
832 extern "C" {
__itt_model_disable_pop()833     pub fn __itt_model_disable_pop();
834 }
835 extern "C" {
__itt_model_aggregate_task(x: usize)836     pub fn __itt_model_aggregate_task(x: usize);
837 }
838 pub type __itt_model_disable_push_ptr__3_0_t =
839     ::std::option::Option<unsafe extern "C" fn(x: __itt_model_disable)>;
840 extern "C" {
841     pub static mut __itt_model_disable_push_ptr__3_0: __itt_model_disable_push_ptr__3_0_t;
842 }
843 pub type __itt_model_disable_pop_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
844 extern "C" {
845     pub static mut __itt_model_disable_pop_ptr__3_0: __itt_model_disable_pop_ptr__3_0_t;
846 }
847 pub type __itt_model_aggregate_task_ptr__3_0_t =
848     ::std::option::Option<unsafe extern "C" fn(x: usize)>;
849 extern "C" {
850     pub static mut __itt_model_aggregate_task_ptr__3_0: __itt_model_aggregate_task_ptr__3_0_t;
851 }
852 #[doc = " @defgroup heap Heap"]
853 #[doc = " @ingroup public"]
854 #[doc = " Heap group"]
855 #[doc = " @{"]
856 pub type __itt_heap_function = *mut ::std::os::raw::c_void;
857 extern "C" {
__itt_heap_function_create( name: *const ::std::os::raw::c_char, domain: *const ::std::os::raw::c_char, ) -> __itt_heap_function858     pub fn __itt_heap_function_create(
859         name: *const ::std::os::raw::c_char,
860         domain: *const ::std::os::raw::c_char,
861     ) -> __itt_heap_function;
862 }
863 pub type __itt_heap_function_create_ptr__3_0_t = ::std::option::Option<
864     unsafe extern "C" fn(
865         name: *const ::std::os::raw::c_char,
866         domain: *const ::std::os::raw::c_char,
867     ) -> __itt_heap_function,
868 >;
869 extern "C" {
870     pub static mut __itt_heap_function_create_ptr__3_0: __itt_heap_function_create_ptr__3_0_t;
871 }
872 extern "C" {
873     #[doc = " @brief Record an allocation begin occurrence."]
__itt_heap_allocate_begin( h: __itt_heap_function, size: usize, initialized: ::std::os::raw::c_int, )874     pub fn __itt_heap_allocate_begin(
875         h: __itt_heap_function,
876         size: usize,
877         initialized: ::std::os::raw::c_int,
878     );
879 }
880 pub type __itt_heap_allocate_begin_ptr__3_0_t = ::std::option::Option<
881     unsafe extern "C" fn(h: __itt_heap_function, size: usize, initialized: ::std::os::raw::c_int),
882 >;
883 extern "C" {
884     pub static mut __itt_heap_allocate_begin_ptr__3_0: __itt_heap_allocate_begin_ptr__3_0_t;
885 }
886 extern "C" {
887     #[doc = " @brief Record an allocation end occurrence."]
__itt_heap_allocate_end( h: __itt_heap_function, addr: *mut *mut ::std::os::raw::c_void, size: usize, initialized: ::std::os::raw::c_int, )888     pub fn __itt_heap_allocate_end(
889         h: __itt_heap_function,
890         addr: *mut *mut ::std::os::raw::c_void,
891         size: usize,
892         initialized: ::std::os::raw::c_int,
893     );
894 }
895 pub type __itt_heap_allocate_end_ptr__3_0_t = ::std::option::Option<
896     unsafe extern "C" fn(
897         h: __itt_heap_function,
898         addr: *mut *mut ::std::os::raw::c_void,
899         size: usize,
900         initialized: ::std::os::raw::c_int,
901     ),
902 >;
903 extern "C" {
904     pub static mut __itt_heap_allocate_end_ptr__3_0: __itt_heap_allocate_end_ptr__3_0_t;
905 }
906 extern "C" {
907     #[doc = " @brief Record an free begin occurrence."]
__itt_heap_free_begin(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void)908     pub fn __itt_heap_free_begin(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void);
909 }
910 pub type __itt_heap_free_begin_ptr__3_0_t = ::std::option::Option<
911     unsafe extern "C" fn(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void),
912 >;
913 extern "C" {
914     pub static mut __itt_heap_free_begin_ptr__3_0: __itt_heap_free_begin_ptr__3_0_t;
915 }
916 extern "C" {
917     #[doc = " @brief Record an free end occurrence."]
__itt_heap_free_end(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void)918     pub fn __itt_heap_free_end(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void);
919 }
920 pub type __itt_heap_free_end_ptr__3_0_t = ::std::option::Option<
921     unsafe extern "C" fn(h: __itt_heap_function, addr: *mut ::std::os::raw::c_void),
922 >;
923 extern "C" {
924     pub static mut __itt_heap_free_end_ptr__3_0: __itt_heap_free_end_ptr__3_0_t;
925 }
926 extern "C" {
927     #[doc = " @brief Record an reallocation begin occurrence."]
__itt_heap_reallocate_begin( h: __itt_heap_function, addr: *mut ::std::os::raw::c_void, new_size: usize, initialized: ::std::os::raw::c_int, )928     pub fn __itt_heap_reallocate_begin(
929         h: __itt_heap_function,
930         addr: *mut ::std::os::raw::c_void,
931         new_size: usize,
932         initialized: ::std::os::raw::c_int,
933     );
934 }
935 pub type __itt_heap_reallocate_begin_ptr__3_0_t = ::std::option::Option<
936     unsafe extern "C" fn(
937         h: __itt_heap_function,
938         addr: *mut ::std::os::raw::c_void,
939         new_size: usize,
940         initialized: ::std::os::raw::c_int,
941     ),
942 >;
943 extern "C" {
944     pub static mut __itt_heap_reallocate_begin_ptr__3_0: __itt_heap_reallocate_begin_ptr__3_0_t;
945 }
946 extern "C" {
947     #[doc = " @brief Record an reallocation end occurrence."]
__itt_heap_reallocate_end( h: __itt_heap_function, addr: *mut ::std::os::raw::c_void, new_addr: *mut *mut ::std::os::raw::c_void, new_size: usize, initialized: ::std::os::raw::c_int, )948     pub fn __itt_heap_reallocate_end(
949         h: __itt_heap_function,
950         addr: *mut ::std::os::raw::c_void,
951         new_addr: *mut *mut ::std::os::raw::c_void,
952         new_size: usize,
953         initialized: ::std::os::raw::c_int,
954     );
955 }
956 pub type __itt_heap_reallocate_end_ptr__3_0_t = ::std::option::Option<
957     unsafe extern "C" fn(
958         h: __itt_heap_function,
959         addr: *mut ::std::os::raw::c_void,
960         new_addr: *mut *mut ::std::os::raw::c_void,
961         new_size: usize,
962         initialized: ::std::os::raw::c_int,
963     ),
964 >;
965 extern "C" {
966     pub static mut __itt_heap_reallocate_end_ptr__3_0: __itt_heap_reallocate_end_ptr__3_0_t;
967 }
968 extern "C" {
969     #[doc = " @brief internal access begin"]
__itt_heap_internal_access_begin()970     pub fn __itt_heap_internal_access_begin();
971 }
972 pub type __itt_heap_internal_access_begin_ptr__3_0_t =
973     ::std::option::Option<unsafe extern "C" fn()>;
974 extern "C" {
975     pub static mut __itt_heap_internal_access_begin_ptr__3_0:
976         __itt_heap_internal_access_begin_ptr__3_0_t;
977 }
978 extern "C" {
979     #[doc = " @brief internal access end"]
__itt_heap_internal_access_end()980     pub fn __itt_heap_internal_access_end();
981 }
982 pub type __itt_heap_internal_access_end_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
983 extern "C" {
984     pub static mut __itt_heap_internal_access_end_ptr__3_0:
985         __itt_heap_internal_access_end_ptr__3_0_t;
986 }
987 extern "C" {
988     #[doc = " @brief record memory growth begin"]
__itt_heap_record_memory_growth_begin()989     pub fn __itt_heap_record_memory_growth_begin();
990 }
991 pub type __itt_heap_record_memory_growth_begin_ptr__3_0_t =
992     ::std::option::Option<unsafe extern "C" fn()>;
993 extern "C" {
994     pub static mut __itt_heap_record_memory_growth_begin_ptr__3_0:
995         __itt_heap_record_memory_growth_begin_ptr__3_0_t;
996 }
997 extern "C" {
998     #[doc = " @brief record memory growth end"]
__itt_heap_record_memory_growth_end()999     pub fn __itt_heap_record_memory_growth_end();
1000 }
1001 pub type __itt_heap_record_memory_growth_end_ptr__3_0_t =
1002     ::std::option::Option<unsafe extern "C" fn()>;
1003 extern "C" {
1004     pub static mut __itt_heap_record_memory_growth_end_ptr__3_0:
1005         __itt_heap_record_memory_growth_end_ptr__3_0_t;
1006 }
1007 extern "C" {
1008     #[doc = " @brief heap reset detection"]
__itt_heap_reset_detection(reset_mask: ::std::os::raw::c_uint)1009     pub fn __itt_heap_reset_detection(reset_mask: ::std::os::raw::c_uint);
1010 }
1011 pub type __itt_heap_reset_detection_ptr__3_0_t =
1012     ::std::option::Option<unsafe extern "C" fn(reset_mask: ::std::os::raw::c_uint)>;
1013 extern "C" {
1014     pub static mut __itt_heap_reset_detection_ptr__3_0: __itt_heap_reset_detection_ptr__3_0_t;
1015 }
1016 extern "C" {
1017     #[doc = " @brief report"]
__itt_heap_record(record_mask: ::std::os::raw::c_uint)1018     pub fn __itt_heap_record(record_mask: ::std::os::raw::c_uint);
1019 }
1020 pub type __itt_heap_record_ptr__3_0_t =
1021     ::std::option::Option<unsafe extern "C" fn(record_mask: ::std::os::raw::c_uint)>;
1022 extern "C" {
1023     pub static mut __itt_heap_record_ptr__3_0: __itt_heap_record_ptr__3_0_t;
1024 }
1025 #[repr(C)]
1026 #[derive(Debug, Copy, Clone)]
1027 pub struct ___itt_domain {
1028     #[doc = "< Zero if disabled, non-zero if enabled. The meaning of different non-zero values is reserved to the runtime"]
1029     pub flags: ::std::os::raw::c_int,
1030     #[doc = "< Copy of original name in ASCII."]
1031     pub nameA: *const ::std::os::raw::c_char,
1032     pub nameW: *mut ::std::os::raw::c_void,
1033     #[doc = "< Reserved to the runtime"]
1034     pub extra1: ::std::os::raw::c_int,
1035     #[doc = "< Reserved to the runtime"]
1036     pub extra2: *mut ::std::os::raw::c_void,
1037     pub next: *mut ___itt_domain,
1038 }
1039 #[test]
bindgen_test_layout____itt_domain()1040 fn bindgen_test_layout____itt_domain() {
1041     assert_eq!(
1042         ::std::mem::size_of::<___itt_domain>(),
1043         48usize,
1044         concat!("Size of: ", stringify!(___itt_domain))
1045     );
1046     assert_eq!(
1047         ::std::mem::align_of::<___itt_domain>(),
1048         8usize,
1049         concat!("Alignment of ", stringify!(___itt_domain))
1050     );
1051     assert_eq!(
1052         unsafe { &(*(::std::ptr::null::<___itt_domain>())).flags as *const _ as usize },
1053         0usize,
1054         concat!(
1055             "Offset of field: ",
1056             stringify!(___itt_domain),
1057             "::",
1058             stringify!(flags)
1059         )
1060     );
1061     assert_eq!(
1062         unsafe { &(*(::std::ptr::null::<___itt_domain>())).nameA as *const _ as usize },
1063         8usize,
1064         concat!(
1065             "Offset of field: ",
1066             stringify!(___itt_domain),
1067             "::",
1068             stringify!(nameA)
1069         )
1070     );
1071     assert_eq!(
1072         unsafe { &(*(::std::ptr::null::<___itt_domain>())).nameW as *const _ as usize },
1073         16usize,
1074         concat!(
1075             "Offset of field: ",
1076             stringify!(___itt_domain),
1077             "::",
1078             stringify!(nameW)
1079         )
1080     );
1081     assert_eq!(
1082         unsafe { &(*(::std::ptr::null::<___itt_domain>())).extra1 as *const _ as usize },
1083         24usize,
1084         concat!(
1085             "Offset of field: ",
1086             stringify!(___itt_domain),
1087             "::",
1088             stringify!(extra1)
1089         )
1090     );
1091     assert_eq!(
1092         unsafe { &(*(::std::ptr::null::<___itt_domain>())).extra2 as *const _ as usize },
1093         32usize,
1094         concat!(
1095             "Offset of field: ",
1096             stringify!(___itt_domain),
1097             "::",
1098             stringify!(extra2)
1099         )
1100     );
1101     assert_eq!(
1102         unsafe { &(*(::std::ptr::null::<___itt_domain>())).next as *const _ as usize },
1103         40usize,
1104         concat!(
1105             "Offset of field: ",
1106             stringify!(___itt_domain),
1107             "::",
1108             stringify!(next)
1109         )
1110     );
1111 }
1112 pub type __itt_domain = ___itt_domain;
1113 extern "C" {
__itt_domain_create(name: *const ::std::os::raw::c_char) -> *mut __itt_domain1114     pub fn __itt_domain_create(name: *const ::std::os::raw::c_char) -> *mut __itt_domain;
1115 }
1116 pub type __itt_domain_create_ptr__3_0_t = ::std::option::Option<
1117     unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> *mut __itt_domain,
1118 >;
1119 extern "C" {
1120     pub static mut __itt_domain_create_ptr__3_0: __itt_domain_create_ptr__3_0_t;
1121 }
1122 #[repr(C)]
1123 #[derive(Debug, Copy, Clone)]
1124 pub struct ___itt_id {
1125     pub d1: ::std::os::raw::c_ulonglong,
1126     pub d2: ::std::os::raw::c_ulonglong,
1127     pub d3: ::std::os::raw::c_ulonglong,
1128 }
1129 #[test]
bindgen_test_layout____itt_id()1130 fn bindgen_test_layout____itt_id() {
1131     assert_eq!(
1132         ::std::mem::size_of::<___itt_id>(),
1133         24usize,
1134         concat!("Size of: ", stringify!(___itt_id))
1135     );
1136     assert_eq!(
1137         ::std::mem::align_of::<___itt_id>(),
1138         8usize,
1139         concat!("Alignment of ", stringify!(___itt_id))
1140     );
1141     assert_eq!(
1142         unsafe { &(*(::std::ptr::null::<___itt_id>())).d1 as *const _ as usize },
1143         0usize,
1144         concat!(
1145             "Offset of field: ",
1146             stringify!(___itt_id),
1147             "::",
1148             stringify!(d1)
1149         )
1150     );
1151     assert_eq!(
1152         unsafe { &(*(::std::ptr::null::<___itt_id>())).d2 as *const _ as usize },
1153         8usize,
1154         concat!(
1155             "Offset of field: ",
1156             stringify!(___itt_id),
1157             "::",
1158             stringify!(d2)
1159         )
1160     );
1161     assert_eq!(
1162         unsafe { &(*(::std::ptr::null::<___itt_id>())).d3 as *const _ as usize },
1163         16usize,
1164         concat!(
1165             "Offset of field: ",
1166             stringify!(___itt_id),
1167             "::",
1168             stringify!(d3)
1169         )
1170     );
1171 }
1172 pub type __itt_id = ___itt_id;
1173 extern "C" {
1174     pub static __itt_null: __itt_id;
1175 }
1176 extern "C" {
1177     #[doc = " @ingroup ids"]
1178     #[doc = " @brief Create an instance of identifier."]
1179     #[doc = " This establishes the beginning of the lifetime of an instance of"]
1180     #[doc = " the given ID in the trace. Once this lifetime starts, the ID"]
1181     #[doc = " can be used to tag named entity instances in calls such as"]
1182     #[doc = " __itt_task_begin, and to specify relationships among"]
1183     #[doc = " identified named entity instances, using the \\ref relations APIs."]
1184     #[doc = " Instance IDs are not domain specific!"]
1185     #[doc = " @param[in] domain The domain controlling the execution of this call."]
1186     #[doc = " @param[in] id The ID to create."]
__itt_id_create(domain: *const __itt_domain, id: __itt_id)1187     pub fn __itt_id_create(domain: *const __itt_domain, id: __itt_id);
1188 }
1189 pub type __itt_id_create_ptr__3_0_t =
1190     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
1191 extern "C" {
1192     pub static mut __itt_id_create_ptr__3_0: __itt_id_create_ptr__3_0_t;
1193 }
1194 extern "C" {
1195     #[doc = " @ingroup ids"]
1196     #[doc = " @brief Destroy an instance of identifier."]
1197     #[doc = " This ends the lifetime of the current instance of the given ID value in the trace."]
1198     #[doc = " Any relationships that are established after this lifetime ends are invalid."]
1199     #[doc = " This call must be performed before the given ID value can be reused for a different"]
1200     #[doc = " named entity instance."]
1201     #[doc = " @param[in] domain The domain controlling the execution of this call."]
1202     #[doc = " @param[in] id The ID to destroy."]
__itt_id_destroy(domain: *const __itt_domain, id: __itt_id)1203     pub fn __itt_id_destroy(domain: *const __itt_domain, id: __itt_id);
1204 }
1205 pub type __itt_id_destroy_ptr__3_0_t =
1206     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
1207 extern "C" {
1208     pub static mut __itt_id_destroy_ptr__3_0: __itt_id_destroy_ptr__3_0_t;
1209 }
1210 #[repr(C)]
1211 #[derive(Debug, Copy, Clone)]
1212 pub struct ___itt_string_handle {
1213     #[doc = "< Copy of original string in ASCII."]
1214     pub strA: *const ::std::os::raw::c_char,
1215     pub strW: *mut ::std::os::raw::c_void,
1216     #[doc = "< Reserved. Must be zero"]
1217     pub extra1: ::std::os::raw::c_int,
1218     #[doc = "< Reserved. Must be zero"]
1219     pub extra2: *mut ::std::os::raw::c_void,
1220     pub next: *mut ___itt_string_handle,
1221 }
1222 #[test]
bindgen_test_layout____itt_string_handle()1223 fn bindgen_test_layout____itt_string_handle() {
1224     assert_eq!(
1225         ::std::mem::size_of::<___itt_string_handle>(),
1226         40usize,
1227         concat!("Size of: ", stringify!(___itt_string_handle))
1228     );
1229     assert_eq!(
1230         ::std::mem::align_of::<___itt_string_handle>(),
1231         8usize,
1232         concat!("Alignment of ", stringify!(___itt_string_handle))
1233     );
1234     assert_eq!(
1235         unsafe { &(*(::std::ptr::null::<___itt_string_handle>())).strA as *const _ as usize },
1236         0usize,
1237         concat!(
1238             "Offset of field: ",
1239             stringify!(___itt_string_handle),
1240             "::",
1241             stringify!(strA)
1242         )
1243     );
1244     assert_eq!(
1245         unsafe { &(*(::std::ptr::null::<___itt_string_handle>())).strW as *const _ as usize },
1246         8usize,
1247         concat!(
1248             "Offset of field: ",
1249             stringify!(___itt_string_handle),
1250             "::",
1251             stringify!(strW)
1252         )
1253     );
1254     assert_eq!(
1255         unsafe { &(*(::std::ptr::null::<___itt_string_handle>())).extra1 as *const _ as usize },
1256         16usize,
1257         concat!(
1258             "Offset of field: ",
1259             stringify!(___itt_string_handle),
1260             "::",
1261             stringify!(extra1)
1262         )
1263     );
1264     assert_eq!(
1265         unsafe { &(*(::std::ptr::null::<___itt_string_handle>())).extra2 as *const _ as usize },
1266         24usize,
1267         concat!(
1268             "Offset of field: ",
1269             stringify!(___itt_string_handle),
1270             "::",
1271             stringify!(extra2)
1272         )
1273     );
1274     assert_eq!(
1275         unsafe { &(*(::std::ptr::null::<___itt_string_handle>())).next as *const _ as usize },
1276         32usize,
1277         concat!(
1278             "Offset of field: ",
1279             stringify!(___itt_string_handle),
1280             "::",
1281             stringify!(next)
1282         )
1283     );
1284 }
1285 pub type __itt_string_handle = ___itt_string_handle;
1286 extern "C" {
__itt_string_handle_create( name: *const ::std::os::raw::c_char, ) -> *mut __itt_string_handle1287     pub fn __itt_string_handle_create(
1288         name: *const ::std::os::raw::c_char,
1289     ) -> *mut __itt_string_handle;
1290 }
1291 pub type __itt_string_handle_create_ptr__3_0_t = ::std::option::Option<
1292     unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> *mut __itt_string_handle,
1293 >;
1294 extern "C" {
1295     pub static mut __itt_string_handle_create_ptr__3_0: __itt_string_handle_create_ptr__3_0_t;
1296 }
1297 #[doc = " @cond exclude_from_documentation"]
1298 pub type __itt_timestamp = ::std::os::raw::c_ulonglong;
1299 extern "C" {
1300     #[doc = " @ingroup timestamps"]
1301     #[doc = " @brief Return timestamp corresponding to the current moment."]
1302     #[doc = " This returns the timestamp in the format that is the most relevant for the current"]
1303     #[doc = " host or platform (RDTSC, QPC, and others). You can use the \"<\" operator to"]
1304     #[doc = " compare __itt_timestamp values."]
__itt_get_timestamp() -> __itt_timestamp1305     pub fn __itt_get_timestamp() -> __itt_timestamp;
1306 }
1307 pub type __itt_get_timestamp_ptr__3_0_t =
1308     ::std::option::Option<unsafe extern "C" fn() -> __itt_timestamp>;
1309 extern "C" {
1310     pub static mut __itt_get_timestamp_ptr__3_0: __itt_get_timestamp_ptr__3_0_t;
1311 }
1312 extern "C" {
1313     #[doc = " @defgroup regions Regions"]
1314     #[doc = " @ingroup public"]
1315     #[doc = " Regions group"]
1316     #[doc = " @{"]
1317     #[doc = " @ingroup regions"]
1318     #[doc = " @brief Begin of region instance."]
1319     #[doc = " Successive calls to __itt_region_begin with the same ID are ignored"]
1320     #[doc = " until a call to __itt_region_end with the same ID"]
1321     #[doc = " @param[in] domain The domain for this region instance"]
1322     #[doc = " @param[in] id The instance ID for this region instance. Must not be __itt_null"]
1323     #[doc = " @param[in] parentid The instance ID for the parent of this region instance, or __itt_null"]
1324     #[doc = " @param[in] name The name of this region"]
__itt_region_begin( domain: *const __itt_domain, id: __itt_id, parentid: __itt_id, name: *mut __itt_string_handle, )1325     pub fn __itt_region_begin(
1326         domain: *const __itt_domain,
1327         id: __itt_id,
1328         parentid: __itt_id,
1329         name: *mut __itt_string_handle,
1330     );
1331 }
1332 extern "C" {
1333     #[doc = " @ingroup regions"]
1334     #[doc = " @brief End of region instance."]
1335     #[doc = " The first call to __itt_region_end with a given ID ends the"]
1336     #[doc = " region. Successive calls with the same ID are ignored, as are"]
1337     #[doc = " calls that do not have a matching __itt_region_begin call."]
1338     #[doc = " @param[in] domain The domain for this region instance"]
1339     #[doc = " @param[in] id The instance ID for this region instance"]
__itt_region_end(domain: *const __itt_domain, id: __itt_id)1340     pub fn __itt_region_end(domain: *const __itt_domain, id: __itt_id);
1341 }
1342 pub type __itt_region_begin_ptr__3_0_t = ::std::option::Option<
1343     unsafe extern "C" fn(
1344         domain: *const __itt_domain,
1345         id: __itt_id,
1346         parentid: __itt_id,
1347         name: *mut __itt_string_handle,
1348     ),
1349 >;
1350 extern "C" {
1351     pub static mut __itt_region_begin_ptr__3_0: __itt_region_begin_ptr__3_0_t;
1352 }
1353 pub type __itt_region_end_ptr__3_0_t =
1354     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: __itt_id)>;
1355 extern "C" {
1356     pub static mut __itt_region_end_ptr__3_0: __itt_region_end_ptr__3_0_t;
1357 }
1358 extern "C" {
1359     #[doc = " @ingroup frames"]
1360     #[doc = " @brief Begin a frame instance."]
1361     #[doc = " Successive calls to __itt_frame_begin with the"]
1362     #[doc = " same ID are ignored until a call to __itt_frame_end with the same ID."]
1363     #[doc = " @param[in] domain The domain for this frame instance"]
1364     #[doc = " @param[in] id The instance ID for this frame instance or NULL"]
__itt_frame_begin_v3(domain: *const __itt_domain, id: *mut __itt_id)1365     pub fn __itt_frame_begin_v3(domain: *const __itt_domain, id: *mut __itt_id);
1366 }
1367 extern "C" {
1368     #[doc = " @ingroup frames"]
1369     #[doc = " @brief End a frame instance."]
1370     #[doc = " The first call to __itt_frame_end with a given ID"]
1371     #[doc = " ends the frame. Successive calls with the same ID are ignored, as are"]
1372     #[doc = " calls that do not have a matching __itt_frame_begin call."]
1373     #[doc = " @param[in] domain The domain for this frame instance"]
1374     #[doc = " @param[in] id The instance ID for this frame instance or NULL for current"]
__itt_frame_end_v3(domain: *const __itt_domain, id: *mut __itt_id)1375     pub fn __itt_frame_end_v3(domain: *const __itt_domain, id: *mut __itt_id);
1376 }
1377 extern "C" {
1378     #[doc = " @ingroup frames"]
1379     #[doc = " @brief Submits a frame instance."]
1380     #[doc = " Successive calls to __itt_frame_begin or __itt_frame_submit with the"]
1381     #[doc = " same ID are ignored until a call to __itt_frame_end or __itt_frame_submit"]
1382     #[doc = " with the same ID."]
1383     #[doc = " Passing special __itt_timestamp_none value as \"end\" argument means"]
1384     #[doc = " take the current timestamp as the end timestamp."]
1385     #[doc = " @param[in] domain The domain for this frame instance"]
1386     #[doc = " @param[in] id The instance ID for this frame instance or NULL"]
1387     #[doc = " @param[in] begin Timestamp of the beginning of the frame"]
1388     #[doc = " @param[in] end Timestamp of the end of the frame"]
__itt_frame_submit_v3( domain: *const __itt_domain, id: *mut __itt_id, begin: __itt_timestamp, end: __itt_timestamp, )1389     pub fn __itt_frame_submit_v3(
1390         domain: *const __itt_domain,
1391         id: *mut __itt_id,
1392         begin: __itt_timestamp,
1393         end: __itt_timestamp,
1394     );
1395 }
1396 pub type __itt_frame_begin_v3_ptr__3_0_t =
1397     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: *mut __itt_id)>;
1398 extern "C" {
1399     pub static mut __itt_frame_begin_v3_ptr__3_0: __itt_frame_begin_v3_ptr__3_0_t;
1400 }
1401 pub type __itt_frame_end_v3_ptr__3_0_t =
1402     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, id: *mut __itt_id)>;
1403 extern "C" {
1404     pub static mut __itt_frame_end_v3_ptr__3_0: __itt_frame_end_v3_ptr__3_0_t;
1405 }
1406 pub type __itt_frame_submit_v3_ptr__3_0_t = ::std::option::Option<
1407     unsafe extern "C" fn(
1408         domain: *const __itt_domain,
1409         id: *mut __itt_id,
1410         begin: __itt_timestamp,
1411         end: __itt_timestamp,
1412     ),
1413 >;
1414 extern "C" {
1415     pub static mut __itt_frame_submit_v3_ptr__3_0: __itt_frame_submit_v3_ptr__3_0_t;
1416 }
1417 extern "C" {
1418     #[doc = " @defgroup taskgroup Task Group"]
1419     #[doc = " @ingroup public"]
1420     #[doc = " Task Group"]
1421     #[doc = " @{"]
1422     #[doc = " @ingroup task_groups"]
1423     #[doc = " @brief Denotes a task_group instance."]
1424     #[doc = " Successive calls to __itt_task_group with the same ID are ignored."]
1425     #[doc = " @param[in] domain The domain for this task_group instance"]
1426     #[doc = " @param[in] id The instance ID for this task_group instance. Must not be __itt_null."]
1427     #[doc = " @param[in] parentid The instance ID for the parent of this task_group instance, or __itt_null."]
1428     #[doc = " @param[in] name The name of this task_group"]
__itt_task_group( domain: *const __itt_domain, id: __itt_id, parentid: __itt_id, name: *mut __itt_string_handle, )1429     pub fn __itt_task_group(
1430         domain: *const __itt_domain,
1431         id: __itt_id,
1432         parentid: __itt_id,
1433         name: *mut __itt_string_handle,
1434     );
1435 }
1436 pub type __itt_task_group_ptr__3_0_t = ::std::option::Option<
1437     unsafe extern "C" fn(
1438         domain: *const __itt_domain,
1439         id: __itt_id,
1440         parentid: __itt_id,
1441         name: *mut __itt_string_handle,
1442     ),
1443 >;
1444 extern "C" {
1445     pub static mut __itt_task_group_ptr__3_0: __itt_task_group_ptr__3_0_t;
1446 }
1447 extern "C" {
1448     #[doc = " @ingroup tasks"]
1449     #[doc = " @brief Begin a task instance."]
1450     #[doc = " @param[in] domain The domain for this task"]
1451     #[doc = " @param[in] taskid The instance ID for this task instance, or __itt_null"]
1452     #[doc = " @param[in] parentid The parent instance to which this task instance belongs, or __itt_null"]
1453     #[doc = " @param[in] name The name of this task"]
__itt_task_begin( domain: *const __itt_domain, taskid: __itt_id, parentid: __itt_id, name: *mut __itt_string_handle, )1454     pub fn __itt_task_begin(
1455         domain: *const __itt_domain,
1456         taskid: __itt_id,
1457         parentid: __itt_id,
1458         name: *mut __itt_string_handle,
1459     );
1460 }
1461 extern "C" {
1462     #[doc = " @ingroup tasks"]
1463     #[doc = " @brief Begin a task instance."]
1464     #[doc = " @param[in] domain The domain for this task"]
1465     #[doc = " @param[in] taskid The identifier for this task instance (may be 0)"]
1466     #[doc = " @param[in] parentid The parent of this task (may be 0)"]
1467     #[doc = " @param[in] fn The pointer to the function you are tracing"]
__itt_task_begin_fn( domain: *const __itt_domain, taskid: __itt_id, parentid: __itt_id, fn_: *mut ::std::os::raw::c_void, )1468     pub fn __itt_task_begin_fn(
1469         domain: *const __itt_domain,
1470         taskid: __itt_id,
1471         parentid: __itt_id,
1472         fn_: *mut ::std::os::raw::c_void,
1473     );
1474 }
1475 extern "C" {
1476     #[doc = " @ingroup tasks"]
1477     #[doc = " @brief End the current task instance."]
1478     #[doc = " @param[in] domain The domain for this task"]
__itt_task_end(domain: *const __itt_domain)1479     pub fn __itt_task_end(domain: *const __itt_domain);
1480 }
1481 extern "C" {
1482     #[doc = " @ingroup tasks"]
1483     #[doc = " @brief Begin an overlapped task instance."]
1484     #[doc = " @param[in] domain The domain for this task."]
1485     #[doc = " @param[in] taskid The identifier for this task instance, *cannot* be __itt_null."]
1486     #[doc = " @param[in] parentid The parent of this task, or __itt_null."]
1487     #[doc = " @param[in] name The name of this task."]
__itt_task_begin_overlapped( domain: *const __itt_domain, taskid: __itt_id, parentid: __itt_id, name: *mut __itt_string_handle, )1488     pub fn __itt_task_begin_overlapped(
1489         domain: *const __itt_domain,
1490         taskid: __itt_id,
1491         parentid: __itt_id,
1492         name: *mut __itt_string_handle,
1493     );
1494 }
1495 extern "C" {
1496     #[doc = " @ingroup tasks"]
1497     #[doc = " @brief End an overlapped task instance."]
1498     #[doc = " @param[in] domain The domain for this task"]
1499     #[doc = " @param[in] taskid Explicit ID of finished task"]
__itt_task_end_overlapped(domain: *const __itt_domain, taskid: __itt_id)1500     pub fn __itt_task_end_overlapped(domain: *const __itt_domain, taskid: __itt_id);
1501 }
1502 pub type __itt_task_begin_ptr__3_0_t = ::std::option::Option<
1503     unsafe extern "C" fn(
1504         domain: *const __itt_domain,
1505         id: __itt_id,
1506         parentid: __itt_id,
1507         name: *mut __itt_string_handle,
1508     ),
1509 >;
1510 extern "C" {
1511     pub static mut __itt_task_begin_ptr__3_0: __itt_task_begin_ptr__3_0_t;
1512 }
1513 pub type __itt_task_begin_fn_ptr__3_0_t = ::std::option::Option<
1514     unsafe extern "C" fn(
1515         domain: *const __itt_domain,
1516         id: __itt_id,
1517         parentid: __itt_id,
1518         fn_: *mut ::std::os::raw::c_void,
1519     ),
1520 >;
1521 extern "C" {
1522     pub static mut __itt_task_begin_fn_ptr__3_0: __itt_task_begin_fn_ptr__3_0_t;
1523 }
1524 pub type __itt_task_end_ptr__3_0_t =
1525     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain)>;
1526 extern "C" {
1527     pub static mut __itt_task_end_ptr__3_0: __itt_task_end_ptr__3_0_t;
1528 }
1529 pub type __itt_task_begin_overlapped_ptr__3_0_t = ::std::option::Option<
1530     unsafe extern "C" fn(
1531         domain: *const __itt_domain,
1532         taskid: __itt_id,
1533         parentid: __itt_id,
1534         name: *mut __itt_string_handle,
1535     ),
1536 >;
1537 extern "C" {
1538     pub static mut __itt_task_begin_overlapped_ptr__3_0: __itt_task_begin_overlapped_ptr__3_0_t;
1539 }
1540 pub type __itt_task_end_overlapped_ptr__3_0_t =
1541     ::std::option::Option<unsafe extern "C" fn(domain: *const __itt_domain, taskid: __itt_id)>;
1542 extern "C" {
1543     pub static mut __itt_task_end_overlapped_ptr__3_0: __itt_task_end_overlapped_ptr__3_0_t;
1544 }
1545 pub const __itt_scope___itt_scope_unknown: __itt_scope = 0;
1546 pub const __itt_scope___itt_scope_global: __itt_scope = 1;
1547 pub const __itt_scope___itt_scope_track_group: __itt_scope = 2;
1548 pub const __itt_scope___itt_scope_track: __itt_scope = 3;
1549 pub const __itt_scope___itt_scope_task: __itt_scope = 4;
1550 pub const __itt_scope___itt_scope_marker: __itt_scope = 5;
1551 #[doc = " @brief Describes the scope of an event object in the trace."]
1552 pub type __itt_scope = u32;
1553 extern "C" {
1554     #[doc = " @ingroup markers"]
1555     #[doc = " @brief Create a marker instance"]
1556     #[doc = " @param[in] domain The domain for this marker"]
1557     #[doc = " @param[in] id The instance ID for this marker or __itt_null"]
1558     #[doc = " @param[in] name The name for this marker"]
1559     #[doc = " @param[in] scope The scope for this marker"]
__itt_marker( domain: *const __itt_domain, id: __itt_id, name: *mut __itt_string_handle, scope: __itt_scope, )1560     pub fn __itt_marker(
1561         domain: *const __itt_domain,
1562         id: __itt_id,
1563         name: *mut __itt_string_handle,
1564         scope: __itt_scope,
1565     );
1566 }
1567 pub type __itt_marker_ptr__3_0_t = ::std::option::Option<
1568     unsafe extern "C" fn(
1569         domain: *const __itt_domain,
1570         id: __itt_id,
1571         name: *mut __itt_string_handle,
1572         scope: __itt_scope,
1573     ),
1574 >;
1575 extern "C" {
1576     pub static mut __itt_marker_ptr__3_0: __itt_marker_ptr__3_0_t;
1577 }
1578 pub const __itt_metadata_type___itt_metadata_unknown: __itt_metadata_type = 0;
1579 #[doc = "< Unsigned 64-bit integer"]
1580 pub const __itt_metadata_type___itt_metadata_u64: __itt_metadata_type = 1;
1581 #[doc = "< Signed 64-bit integer"]
1582 pub const __itt_metadata_type___itt_metadata_s64: __itt_metadata_type = 2;
1583 #[doc = "< Unsigned 32-bit integer"]
1584 pub const __itt_metadata_type___itt_metadata_u32: __itt_metadata_type = 3;
1585 #[doc = "< Signed 32-bit integer"]
1586 pub const __itt_metadata_type___itt_metadata_s32: __itt_metadata_type = 4;
1587 #[doc = "< Unsigned 16-bit integer"]
1588 pub const __itt_metadata_type___itt_metadata_u16: __itt_metadata_type = 5;
1589 #[doc = "< Signed 16-bit integer"]
1590 pub const __itt_metadata_type___itt_metadata_s16: __itt_metadata_type = 6;
1591 #[doc = "< Signed 32-bit floating-point"]
1592 pub const __itt_metadata_type___itt_metadata_float: __itt_metadata_type = 7;
1593 #[doc = "< SIgned 64-bit floating-point"]
1594 pub const __itt_metadata_type___itt_metadata_double: __itt_metadata_type = 8;
1595 #[doc = " @ingroup parameters"]
1596 #[doc = " @brief describes the type of metadata"]
1597 pub type __itt_metadata_type = u32;
1598 extern "C" {
1599     #[doc = " @ingroup parameters"]
1600     #[doc = " @brief Add metadata to an instance of a named entity."]
1601     #[doc = " @param[in] domain The domain controlling the call"]
1602     #[doc = " @param[in] id The identifier of the instance to which the metadata is to be added, or __itt_null to add to the current task"]
1603     #[doc = " @param[in] key The name of the metadata"]
1604     #[doc = " @param[in] type The type of the metadata"]
1605     #[doc = " @param[in] count The number of elements of the given type. If count == 0, no metadata will be added."]
1606     #[doc = " @param[in] data The metadata itself"]
__itt_metadata_add( domain: *const __itt_domain, id: __itt_id, key: *mut __itt_string_handle, type_: __itt_metadata_type, count: usize, data: *mut ::std::os::raw::c_void, )1607     pub fn __itt_metadata_add(
1608         domain: *const __itt_domain,
1609         id: __itt_id,
1610         key: *mut __itt_string_handle,
1611         type_: __itt_metadata_type,
1612         count: usize,
1613         data: *mut ::std::os::raw::c_void,
1614     );
1615 }
1616 pub type __itt_metadata_add_ptr__3_0_t = ::std::option::Option<
1617     unsafe extern "C" fn(
1618         domain: *const __itt_domain,
1619         id: __itt_id,
1620         key: *mut __itt_string_handle,
1621         type_: __itt_metadata_type,
1622         count: usize,
1623         data: *mut ::std::os::raw::c_void,
1624     ),
1625 >;
1626 extern "C" {
1627     pub static mut __itt_metadata_add_ptr__3_0: __itt_metadata_add_ptr__3_0_t;
1628 }
1629 extern "C" {
__itt_metadata_str_add( domain: *const __itt_domain, id: __itt_id, key: *mut __itt_string_handle, data: *const ::std::os::raw::c_char, length: usize, )1630     pub fn __itt_metadata_str_add(
1631         domain: *const __itt_domain,
1632         id: __itt_id,
1633         key: *mut __itt_string_handle,
1634         data: *const ::std::os::raw::c_char,
1635         length: usize,
1636     );
1637 }
1638 pub type __itt_metadata_str_add_ptr__3_0_t = ::std::option::Option<
1639     unsafe extern "C" fn(
1640         domain: *const __itt_domain,
1641         id: __itt_id,
1642         key: *mut __itt_string_handle,
1643         data: *const ::std::os::raw::c_char,
1644         length: usize,
1645     ),
1646 >;
1647 extern "C" {
1648     pub static mut __itt_metadata_str_add_ptr__3_0: __itt_metadata_str_add_ptr__3_0_t;
1649 }
1650 extern "C" {
1651     #[doc = " @ingroup parameters"]
1652     #[doc = " @brief Add metadata to an instance of a named entity."]
1653     #[doc = " @param[in] domain The domain controlling the call"]
1654     #[doc = " @param[in] scope The scope of the instance to which the metadata is to be added"]
1655     #[doc = ""]
1656     #[doc = " @param[in] id The identifier of the instance to which the metadata is to be added, or __itt_null to add to the current task"]
1657     #[doc = ""]
1658     #[doc = " @param[in] key The name of the metadata"]
1659     #[doc = " @param[in] type The type of the metadata"]
1660     #[doc = " @param[in] count The number of elements of the given type. If count == 0, no metadata will be added."]
1661     #[doc = " @param[in] data The metadata itself"]
__itt_metadata_add_with_scope( domain: *const __itt_domain, scope: __itt_scope, key: *mut __itt_string_handle, type_: __itt_metadata_type, count: usize, data: *mut ::std::os::raw::c_void, )1662     pub fn __itt_metadata_add_with_scope(
1663         domain: *const __itt_domain,
1664         scope: __itt_scope,
1665         key: *mut __itt_string_handle,
1666         type_: __itt_metadata_type,
1667         count: usize,
1668         data: *mut ::std::os::raw::c_void,
1669     );
1670 }
1671 pub type __itt_metadata_add_with_scope_ptr__3_0_t = ::std::option::Option<
1672     unsafe extern "C" fn(
1673         domain: *const __itt_domain,
1674         scope: __itt_scope,
1675         key: *mut __itt_string_handle,
1676         type_: __itt_metadata_type,
1677         count: usize,
1678         data: *mut ::std::os::raw::c_void,
1679     ),
1680 >;
1681 extern "C" {
1682     pub static mut __itt_metadata_add_with_scope_ptr__3_0: __itt_metadata_add_with_scope_ptr__3_0_t;
1683 }
1684 extern "C" {
__itt_metadata_str_add_with_scope( domain: *const __itt_domain, scope: __itt_scope, key: *mut __itt_string_handle, data: *const ::std::os::raw::c_char, length: usize, )1685     pub fn __itt_metadata_str_add_with_scope(
1686         domain: *const __itt_domain,
1687         scope: __itt_scope,
1688         key: *mut __itt_string_handle,
1689         data: *const ::std::os::raw::c_char,
1690         length: usize,
1691     );
1692 }
1693 pub type __itt_metadata_str_add_with_scope_ptr__3_0_t = ::std::option::Option<
1694     unsafe extern "C" fn(
1695         domain: *const __itt_domain,
1696         scope: __itt_scope,
1697         key: *mut __itt_string_handle,
1698         data: *const ::std::os::raw::c_char,
1699         length: usize,
1700     ),
1701 >;
1702 extern "C" {
1703     pub static mut __itt_metadata_str_add_with_scope_ptr__3_0:
1704         __itt_metadata_str_add_with_scope_ptr__3_0_t;
1705 }
1706 pub const __itt_relation___itt_relation_is_unknown: __itt_relation = 0;
1707 #[doc = "< \"A is dependent on B\" means that A cannot start until B completes"]
1708 pub const __itt_relation___itt_relation_is_dependent_on: __itt_relation = 1;
1709 #[doc = "< \"A is sibling of B\" means that A and B were created as a group"]
1710 pub const __itt_relation___itt_relation_is_sibling_of: __itt_relation = 2;
1711 #[doc = "< \"A is parent of B\" means that A created B"]
1712 pub const __itt_relation___itt_relation_is_parent_of: __itt_relation = 3;
1713 #[doc = "< \"A is continuation of B\" means that A assumes the dependencies of B"]
1714 pub const __itt_relation___itt_relation_is_continuation_of: __itt_relation = 4;
1715 #[doc = "< \"A is child of B\" means that A was created by B (inverse of is_parent_of)"]
1716 pub const __itt_relation___itt_relation_is_child_of: __itt_relation = 5;
1717 #[doc = "< \"A is continued by B\" means that B assumes the dependencies of A (inverse of is_continuation_of)"]
1718 pub const __itt_relation___itt_relation_is_continued_by: __itt_relation = 6;
1719 #[doc = "< \"A is predecessor to B\" means that B cannot start until A completes (inverse of is_dependent_on)"]
1720 pub const __itt_relation___itt_relation_is_predecessor_to: __itt_relation = 7;
1721 #[doc = " @ingroup relations"]
1722 #[doc = " @brief The kind of relation between two instances is specified by the enumerated type __itt_relation."]
1723 #[doc = " Relations between instances can be added with an API call. The relation"]
1724 #[doc = " API uses instance IDs. Relations can be added before or after the actual"]
1725 #[doc = " instances are created and persist independently of the instances. This"]
1726 #[doc = " is the motivation for having different lifetimes for instance IDs and"]
1727 #[doc = " the actual instances."]
1728 pub type __itt_relation = u32;
1729 extern "C" {
1730     #[doc = " @ingroup relations"]
1731     #[doc = " @brief Add a relation to the current task instance."]
1732     #[doc = " The current task instance is the head of the relation."]
1733     #[doc = " @param[in] domain The domain controlling this call"]
1734     #[doc = " @param[in] relation The kind of relation"]
1735     #[doc = " @param[in] tail The ID for the tail of the relation"]
__itt_relation_add_to_current( domain: *const __itt_domain, relation: __itt_relation, tail: __itt_id, )1736     pub fn __itt_relation_add_to_current(
1737         domain: *const __itt_domain,
1738         relation: __itt_relation,
1739         tail: __itt_id,
1740     );
1741 }
1742 extern "C" {
1743     #[doc = " @ingroup relations"]
1744     #[doc = " @brief Add a relation between two instance identifiers."]
1745     #[doc = " @param[in] domain The domain controlling this call"]
1746     #[doc = " @param[in] head The ID for the head of the relation"]
1747     #[doc = " @param[in] relation The kind of relation"]
1748     #[doc = " @param[in] tail The ID for the tail of the relation"]
__itt_relation_add( domain: *const __itt_domain, head: __itt_id, relation: __itt_relation, tail: __itt_id, )1749     pub fn __itt_relation_add(
1750         domain: *const __itt_domain,
1751         head: __itt_id,
1752         relation: __itt_relation,
1753         tail: __itt_id,
1754     );
1755 }
1756 pub type __itt_relation_add_to_current_ptr__3_0_t = ::std::option::Option<
1757     unsafe extern "C" fn(domain: *const __itt_domain, relation: __itt_relation, tail: __itt_id),
1758 >;
1759 extern "C" {
1760     pub static mut __itt_relation_add_to_current_ptr__3_0: __itt_relation_add_to_current_ptr__3_0_t;
1761 }
1762 pub type __itt_relation_add_ptr__3_0_t = ::std::option::Option<
1763     unsafe extern "C" fn(
1764         domain: *const __itt_domain,
1765         head: __itt_id,
1766         relation: __itt_relation,
1767         tail: __itt_id,
1768     ),
1769 >;
1770 extern "C" {
1771     pub static mut __itt_relation_add_ptr__3_0: __itt_relation_add_ptr__3_0_t;
1772 }
1773 #[repr(C)]
1774 #[derive(Debug, Copy, Clone)]
1775 pub struct ___itt_clock_info {
1776     #[doc = "< Clock domain frequency"]
1777     pub clock_freq: ::std::os::raw::c_ulonglong,
1778     #[doc = "< Clock domain base timestamp"]
1779     pub clock_base: ::std::os::raw::c_ulonglong,
1780 }
1781 #[test]
bindgen_test_layout____itt_clock_info()1782 fn bindgen_test_layout____itt_clock_info() {
1783     assert_eq!(
1784         ::std::mem::size_of::<___itt_clock_info>(),
1785         16usize,
1786         concat!("Size of: ", stringify!(___itt_clock_info))
1787     );
1788     assert_eq!(
1789         ::std::mem::align_of::<___itt_clock_info>(),
1790         8usize,
1791         concat!("Alignment of ", stringify!(___itt_clock_info))
1792     );
1793     assert_eq!(
1794         unsafe { &(*(::std::ptr::null::<___itt_clock_info>())).clock_freq as *const _ as usize },
1795         0usize,
1796         concat!(
1797             "Offset of field: ",
1798             stringify!(___itt_clock_info),
1799             "::",
1800             stringify!(clock_freq)
1801         )
1802     );
1803     assert_eq!(
1804         unsafe { &(*(::std::ptr::null::<___itt_clock_info>())).clock_base as *const _ as usize },
1805         8usize,
1806         concat!(
1807             "Offset of field: ",
1808             stringify!(___itt_clock_info),
1809             "::",
1810             stringify!(clock_base)
1811         )
1812     );
1813 }
1814 pub type __itt_clock_info = ___itt_clock_info;
1815 #[doc = " @cond exclude_from_documentation"]
1816 pub type __itt_get_clock_info_fn = ::std::option::Option<
1817     unsafe extern "C" fn(clock_info: *mut __itt_clock_info, data: *mut ::std::os::raw::c_void),
1818 >;
1819 #[repr(C)]
1820 #[derive(Debug, Copy, Clone)]
1821 pub struct ___itt_clock_domain {
1822     #[doc = "< Most recent clock domain info"]
1823     pub info: __itt_clock_info,
1824     #[doc = "< Callback function pointer"]
1825     pub fn_: __itt_get_clock_info_fn,
1826     #[doc = "< Input argument for the callback function"]
1827     pub fn_data: *mut ::std::os::raw::c_void,
1828     #[doc = "< Reserved. Must be zero"]
1829     pub extra1: ::std::os::raw::c_int,
1830     #[doc = "< Reserved. Must be zero"]
1831     pub extra2: *mut ::std::os::raw::c_void,
1832     pub next: *mut ___itt_clock_domain,
1833 }
1834 #[test]
bindgen_test_layout____itt_clock_domain()1835 fn bindgen_test_layout____itt_clock_domain() {
1836     assert_eq!(
1837         ::std::mem::size_of::<___itt_clock_domain>(),
1838         56usize,
1839         concat!("Size of: ", stringify!(___itt_clock_domain))
1840     );
1841     assert_eq!(
1842         ::std::mem::align_of::<___itt_clock_domain>(),
1843         8usize,
1844         concat!("Alignment of ", stringify!(___itt_clock_domain))
1845     );
1846     assert_eq!(
1847         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).info as *const _ as usize },
1848         0usize,
1849         concat!(
1850             "Offset of field: ",
1851             stringify!(___itt_clock_domain),
1852             "::",
1853             stringify!(info)
1854         )
1855     );
1856     assert_eq!(
1857         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).fn_ as *const _ as usize },
1858         16usize,
1859         concat!(
1860             "Offset of field: ",
1861             stringify!(___itt_clock_domain),
1862             "::",
1863             stringify!(fn_)
1864         )
1865     );
1866     assert_eq!(
1867         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).fn_data as *const _ as usize },
1868         24usize,
1869         concat!(
1870             "Offset of field: ",
1871             stringify!(___itt_clock_domain),
1872             "::",
1873             stringify!(fn_data)
1874         )
1875     );
1876     assert_eq!(
1877         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).extra1 as *const _ as usize },
1878         32usize,
1879         concat!(
1880             "Offset of field: ",
1881             stringify!(___itt_clock_domain),
1882             "::",
1883             stringify!(extra1)
1884         )
1885     );
1886     assert_eq!(
1887         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).extra2 as *const _ as usize },
1888         40usize,
1889         concat!(
1890             "Offset of field: ",
1891             stringify!(___itt_clock_domain),
1892             "::",
1893             stringify!(extra2)
1894         )
1895     );
1896     assert_eq!(
1897         unsafe { &(*(::std::ptr::null::<___itt_clock_domain>())).next as *const _ as usize },
1898         48usize,
1899         concat!(
1900             "Offset of field: ",
1901             stringify!(___itt_clock_domain),
1902             "::",
1903             stringify!(next)
1904         )
1905     );
1906 }
1907 pub type __itt_clock_domain = ___itt_clock_domain;
1908 extern "C" {
1909     #[doc = " @ingroup clockdomains"]
1910     #[doc = " @brief Create a clock domain."]
1911     #[doc = " Certain applications require the capability to trace their application using"]
1912     #[doc = " a clock domain different than the CPU, for instance the instrumentation of events"]
1913     #[doc = " that occur on a GPU."]
1914     #[doc = " Because the set of domains is expected to be static over the application's execution time,"]
1915     #[doc = " there is no mechanism to destroy a domain."]
1916     #[doc = " Any domain can be accessed by any thread in the process, regardless of which thread created"]
1917     #[doc = " the domain. This call is thread-safe."]
1918     #[doc = " @param[in] fn A pointer to a callback function which retrieves alternative CPU timestamps"]
1919     #[doc = " @param[in] fn_data Argument for a callback function; may be NULL"]
__itt_clock_domain_create( fn_: __itt_get_clock_info_fn, fn_data: *mut ::std::os::raw::c_void, ) -> *mut __itt_clock_domain1920     pub fn __itt_clock_domain_create(
1921         fn_: __itt_get_clock_info_fn,
1922         fn_data: *mut ::std::os::raw::c_void,
1923     ) -> *mut __itt_clock_domain;
1924 }
1925 pub type __itt_clock_domain_create_ptr__3_0_t = ::std::option::Option<
1926     unsafe extern "C" fn(
1927         fn_: __itt_get_clock_info_fn,
1928         fn_data: *mut ::std::os::raw::c_void,
1929     ) -> *mut __itt_clock_domain,
1930 >;
1931 extern "C" {
1932     pub static mut __itt_clock_domain_create_ptr__3_0: __itt_clock_domain_create_ptr__3_0_t;
1933 }
1934 extern "C" {
1935     #[doc = " @ingroup clockdomains"]
1936     #[doc = " @brief Recalculate clock domains frequencies and clock base timestamps."]
__itt_clock_domain_reset()1937     pub fn __itt_clock_domain_reset();
1938 }
1939 pub type __itt_clock_domain_reset_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
1940 extern "C" {
1941     pub static mut __itt_clock_domain_reset_ptr__3_0: __itt_clock_domain_reset_ptr__3_0_t;
1942 }
1943 extern "C" {
1944     #[doc = " @ingroup clockdomain"]
1945     #[doc = " @brief Create an instance of identifier. This establishes the beginning of the lifetime of"]
1946     #[doc = " an instance of the given ID in the trace. Once this lifetime starts, the ID can be used to"]
1947     #[doc = " tag named entity instances in calls such as __itt_task_begin, and to specify relationships among"]
1948     #[doc = " identified named entity instances, using the \\ref relations APIs."]
1949     #[doc = " @param[in] domain The domain controlling the execution of this call."]
1950     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
1951     #[doc = " @param[in] timestamp The user defined timestamp."]
1952     #[doc = " @param[in] id The ID to create."]
__itt_id_create_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, id: __itt_id, )1953     pub fn __itt_id_create_ex(
1954         domain: *const __itt_domain,
1955         clock_domain: *mut __itt_clock_domain,
1956         timestamp: ::std::os::raw::c_ulonglong,
1957         id: __itt_id,
1958     );
1959 }
1960 extern "C" {
1961     #[doc = " @ingroup clockdomain"]
1962     #[doc = " @brief Destroy an instance of identifier. This ends the lifetime of the current instance of the"]
1963     #[doc = " given ID value in the trace. Any relationships that are established after this lifetime ends are"]
1964     #[doc = " invalid. This call must be performed before the given ID value can be reused for a different"]
1965     #[doc = " named entity instance."]
1966     #[doc = " @param[in] domain The domain controlling the execution of this call."]
1967     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
1968     #[doc = " @param[in] timestamp The user defined timestamp."]
1969     #[doc = " @param[in] id The ID to destroy."]
__itt_id_destroy_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, id: __itt_id, )1970     pub fn __itt_id_destroy_ex(
1971         domain: *const __itt_domain,
1972         clock_domain: *mut __itt_clock_domain,
1973         timestamp: ::std::os::raw::c_ulonglong,
1974         id: __itt_id,
1975     );
1976 }
1977 pub type __itt_id_create_ex_ptr__3_0_t = ::std::option::Option<
1978     unsafe extern "C" fn(
1979         domain: *const __itt_domain,
1980         clock_domain: *mut __itt_clock_domain,
1981         timestamp: ::std::os::raw::c_ulonglong,
1982         id: __itt_id,
1983     ),
1984 >;
1985 extern "C" {
1986     pub static mut __itt_id_create_ex_ptr__3_0: __itt_id_create_ex_ptr__3_0_t;
1987 }
1988 pub type __itt_id_destroy_ex_ptr__3_0_t = ::std::option::Option<
1989     unsafe extern "C" fn(
1990         domain: *const __itt_domain,
1991         clock_domain: *mut __itt_clock_domain,
1992         timestamp: ::std::os::raw::c_ulonglong,
1993         id: __itt_id,
1994     ),
1995 >;
1996 extern "C" {
1997     pub static mut __itt_id_destroy_ex_ptr__3_0: __itt_id_destroy_ex_ptr__3_0_t;
1998 }
1999 extern "C" {
2000     #[doc = " @ingroup clockdomain"]
2001     #[doc = " @brief Begin a task instance."]
2002     #[doc = " @param[in] domain The domain for this task"]
2003     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2004     #[doc = " @param[in] timestamp The user defined timestamp."]
2005     #[doc = " @param[in] taskid The instance ID for this task instance, or __itt_null"]
2006     #[doc = " @param[in] parentid The parent instance to which this task instance belongs, or __itt_null"]
2007     #[doc = " @param[in] name The name of this task"]
__itt_task_begin_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, taskid: __itt_id, parentid: __itt_id, name: *mut __itt_string_handle, )2008     pub fn __itt_task_begin_ex(
2009         domain: *const __itt_domain,
2010         clock_domain: *mut __itt_clock_domain,
2011         timestamp: ::std::os::raw::c_ulonglong,
2012         taskid: __itt_id,
2013         parentid: __itt_id,
2014         name: *mut __itt_string_handle,
2015     );
2016 }
2017 extern "C" {
2018     #[doc = " @ingroup clockdomain"]
2019     #[doc = " @brief Begin a task instance."]
2020     #[doc = " @param[in] domain The domain for this task"]
2021     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2022     #[doc = " @param[in] timestamp The user defined timestamp."]
2023     #[doc = " @param[in] taskid The identifier for this task instance, or __itt_null"]
2024     #[doc = " @param[in] parentid The parent of this task, or __itt_null"]
2025     #[doc = " @param[in] fn The pointer to the function you are tracing"]
__itt_task_begin_fn_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, taskid: __itt_id, parentid: __itt_id, fn_: *mut ::std::os::raw::c_void, )2026     pub fn __itt_task_begin_fn_ex(
2027         domain: *const __itt_domain,
2028         clock_domain: *mut __itt_clock_domain,
2029         timestamp: ::std::os::raw::c_ulonglong,
2030         taskid: __itt_id,
2031         parentid: __itt_id,
2032         fn_: *mut ::std::os::raw::c_void,
2033     );
2034 }
2035 extern "C" {
2036     #[doc = " @ingroup clockdomain"]
2037     #[doc = " @brief End the current task instance."]
2038     #[doc = " @param[in] domain The domain for this task"]
2039     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2040     #[doc = " @param[in] timestamp The user defined timestamp."]
__itt_task_end_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, )2041     pub fn __itt_task_end_ex(
2042         domain: *const __itt_domain,
2043         clock_domain: *mut __itt_clock_domain,
2044         timestamp: ::std::os::raw::c_ulonglong,
2045     );
2046 }
2047 pub type __itt_task_begin_ex_ptr__3_0_t = ::std::option::Option<
2048     unsafe extern "C" fn(
2049         domain: *const __itt_domain,
2050         clock_domain: *mut __itt_clock_domain,
2051         timestamp: ::std::os::raw::c_ulonglong,
2052         id: __itt_id,
2053         parentid: __itt_id,
2054         name: *mut __itt_string_handle,
2055     ),
2056 >;
2057 extern "C" {
2058     pub static mut __itt_task_begin_ex_ptr__3_0: __itt_task_begin_ex_ptr__3_0_t;
2059 }
2060 pub type __itt_task_begin_fn_ex_ptr__3_0_t = ::std::option::Option<
2061     unsafe extern "C" fn(
2062         domain: *const __itt_domain,
2063         clock_domain: *mut __itt_clock_domain,
2064         timestamp: ::std::os::raw::c_ulonglong,
2065         id: __itt_id,
2066         parentid: __itt_id,
2067         fn_: *mut ::std::os::raw::c_void,
2068     ),
2069 >;
2070 extern "C" {
2071     pub static mut __itt_task_begin_fn_ex_ptr__3_0: __itt_task_begin_fn_ex_ptr__3_0_t;
2072 }
2073 pub type __itt_task_end_ex_ptr__3_0_t = ::std::option::Option<
2074     unsafe extern "C" fn(
2075         domain: *const __itt_domain,
2076         clock_domain: *mut __itt_clock_domain,
2077         timestamp: ::std::os::raw::c_ulonglong,
2078     ),
2079 >;
2080 extern "C" {
2081     pub static mut __itt_task_end_ex_ptr__3_0: __itt_task_end_ex_ptr__3_0_t;
2082 }
2083 #[repr(C)]
2084 #[derive(Debug, Copy, Clone)]
2085 pub struct ___itt_counter {
2086     _unused: [u8; 0],
2087 }
2088 #[doc = " @brief opaque structure for counter identification"]
2089 pub type __itt_counter = *mut ___itt_counter;
2090 extern "C" {
__itt_counter_create( name: *const ::std::os::raw::c_char, domain: *const ::std::os::raw::c_char, ) -> __itt_counter2091     pub fn __itt_counter_create(
2092         name: *const ::std::os::raw::c_char,
2093         domain: *const ::std::os::raw::c_char,
2094     ) -> __itt_counter;
2095 }
2096 pub type __itt_counter_create_ptr__3_0_t = ::std::option::Option<
2097     unsafe extern "C" fn(
2098         name: *const ::std::os::raw::c_char,
2099         domain: *const ::std::os::raw::c_char,
2100     ) -> __itt_counter,
2101 >;
2102 extern "C" {
2103     pub static mut __itt_counter_create_ptr__3_0: __itt_counter_create_ptr__3_0_t;
2104 }
2105 extern "C" {
2106     #[doc = " @brief Increment the unsigned 64 bits integer counter value"]
2107     #[doc = ""]
2108     #[doc = " Calling this function to non-unsigned 64 bits integer counters has no effect"]
__itt_counter_inc(id: __itt_counter)2109     pub fn __itt_counter_inc(id: __itt_counter);
2110 }
2111 pub type __itt_counter_inc_ptr__3_0_t =
2112     ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
2113 extern "C" {
2114     pub static mut __itt_counter_inc_ptr__3_0: __itt_counter_inc_ptr__3_0_t;
2115 }
2116 extern "C" {
2117     #[doc = " @endcond */"]
2118     #[doc = " @brief Increment the unsigned 64 bits integer counter value with x"]
2119     #[doc = ""]
2120     #[doc = " Calling this function to non-unsigned 64 bits integer counters has no effect"]
__itt_counter_inc_delta(id: __itt_counter, value: ::std::os::raw::c_ulonglong)2121     pub fn __itt_counter_inc_delta(id: __itt_counter, value: ::std::os::raw::c_ulonglong);
2122 }
2123 pub type __itt_counter_inc_delta_ptr__3_0_t = ::std::option::Option<
2124     unsafe extern "C" fn(id: __itt_counter, value: ::std::os::raw::c_ulonglong),
2125 >;
2126 extern "C" {
2127     pub static mut __itt_counter_inc_delta_ptr__3_0: __itt_counter_inc_delta_ptr__3_0_t;
2128 }
2129 extern "C" {
2130     #[doc = " @brief Decrement the unsigned 64 bits integer counter value"]
2131     #[doc = ""]
2132     #[doc = " Calling this function to non-unsigned 64 bits integer counters has no effect"]
__itt_counter_dec(id: __itt_counter)2133     pub fn __itt_counter_dec(id: __itt_counter);
2134 }
2135 pub type __itt_counter_dec_ptr__3_0_t =
2136     ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
2137 extern "C" {
2138     pub static mut __itt_counter_dec_ptr__3_0: __itt_counter_dec_ptr__3_0_t;
2139 }
2140 extern "C" {
2141     #[doc = " @endcond */"]
2142     #[doc = " @brief Decrement the unsigned 64 bits integer counter value with x"]
2143     #[doc = ""]
2144     #[doc = " Calling this function to non-unsigned 64 bits integer counters has no effect"]
__itt_counter_dec_delta(id: __itt_counter, value: ::std::os::raw::c_ulonglong)2145     pub fn __itt_counter_dec_delta(id: __itt_counter, value: ::std::os::raw::c_ulonglong);
2146 }
2147 pub type __itt_counter_dec_delta_ptr__3_0_t = ::std::option::Option<
2148     unsafe extern "C" fn(id: __itt_counter, value: ::std::os::raw::c_ulonglong),
2149 >;
2150 extern "C" {
2151     pub static mut __itt_counter_dec_delta_ptr__3_0: __itt_counter_dec_delta_ptr__3_0_t;
2152 }
2153 extern "C" {
2154     #[doc = " @ingroup counters"]
2155     #[doc = " @brief Increment a counter by one."]
2156     #[doc = " The first call with a given name creates a counter by that name and sets its"]
2157     #[doc = " value to zero. Successive calls increment the counter value."]
2158     #[doc = " @param[in] domain The domain controlling the call. Counter names are not domain specific."]
2159     #[doc = "            The domain argument is used only to enable or disable the API calls."]
2160     #[doc = " @param[in] name The name of the counter"]
__itt_counter_inc_v3(domain: *const __itt_domain, name: *mut __itt_string_handle)2161     pub fn __itt_counter_inc_v3(domain: *const __itt_domain, name: *mut __itt_string_handle);
2162 }
2163 extern "C" {
2164     #[doc = " @ingroup counters"]
2165     #[doc = " @brief Increment a counter by the value specified in delta."]
2166     #[doc = " @param[in] domain The domain controlling the call. Counter names are not domain specific."]
2167     #[doc = "            The domain argument is used only to enable or disable the API calls."]
2168     #[doc = " @param[in] name The name of the counter"]
2169     #[doc = " @param[in] delta The amount by which to increment the counter"]
__itt_counter_inc_delta_v3( domain: *const __itt_domain, name: *mut __itt_string_handle, delta: ::std::os::raw::c_ulonglong, )2170     pub fn __itt_counter_inc_delta_v3(
2171         domain: *const __itt_domain,
2172         name: *mut __itt_string_handle,
2173         delta: ::std::os::raw::c_ulonglong,
2174     );
2175 }
2176 pub type __itt_counter_inc_v3_ptr__3_0_t = ::std::option::Option<
2177     unsafe extern "C" fn(domain: *const __itt_domain, name: *mut __itt_string_handle),
2178 >;
2179 extern "C" {
2180     pub static mut __itt_counter_inc_v3_ptr__3_0: __itt_counter_inc_v3_ptr__3_0_t;
2181 }
2182 pub type __itt_counter_inc_delta_v3_ptr__3_0_t = ::std::option::Option<
2183     unsafe extern "C" fn(
2184         domain: *const __itt_domain,
2185         name: *mut __itt_string_handle,
2186         delta: ::std::os::raw::c_ulonglong,
2187     ),
2188 >;
2189 extern "C" {
2190     pub static mut __itt_counter_inc_delta_v3_ptr__3_0: __itt_counter_inc_delta_v3_ptr__3_0_t;
2191 }
2192 extern "C" {
2193     #[doc = " @ingroup counters"]
2194     #[doc = " @brief Decrement a counter by one."]
2195     #[doc = " The first call with a given name creates a counter by that name and sets its"]
2196     #[doc = " value to zero. Successive calls decrement the counter value."]
2197     #[doc = " @param[in] domain The domain controlling the call. Counter names are not domain specific."]
2198     #[doc = "            The domain argument is used only to enable or disable the API calls."]
2199     #[doc = " @param[in] name The name of the counter"]
__itt_counter_dec_v3(domain: *const __itt_domain, name: *mut __itt_string_handle)2200     pub fn __itt_counter_dec_v3(domain: *const __itt_domain, name: *mut __itt_string_handle);
2201 }
2202 extern "C" {
2203     #[doc = " @ingroup counters"]
2204     #[doc = " @brief Decrement a counter by the value specified in delta."]
2205     #[doc = " @param[in] domain The domain controlling the call. Counter names are not domain specific."]
2206     #[doc = "            The domain argument is used only to enable or disable the API calls."]
2207     #[doc = " @param[in] name The name of the counter"]
2208     #[doc = " @param[in] delta The amount by which to decrement the counter"]
__itt_counter_dec_delta_v3( domain: *const __itt_domain, name: *mut __itt_string_handle, delta: ::std::os::raw::c_ulonglong, )2209     pub fn __itt_counter_dec_delta_v3(
2210         domain: *const __itt_domain,
2211         name: *mut __itt_string_handle,
2212         delta: ::std::os::raw::c_ulonglong,
2213     );
2214 }
2215 pub type __itt_counter_dec_v3_ptr__3_0_t = ::std::option::Option<
2216     unsafe extern "C" fn(domain: *const __itt_domain, name: *mut __itt_string_handle),
2217 >;
2218 extern "C" {
2219     pub static mut __itt_counter_dec_v3_ptr__3_0: __itt_counter_dec_v3_ptr__3_0_t;
2220 }
2221 pub type __itt_counter_dec_delta_v3_ptr__3_0_t = ::std::option::Option<
2222     unsafe extern "C" fn(
2223         domain: *const __itt_domain,
2224         name: *mut __itt_string_handle,
2225         delta: ::std::os::raw::c_ulonglong,
2226     ),
2227 >;
2228 extern "C" {
2229     pub static mut __itt_counter_dec_delta_v3_ptr__3_0: __itt_counter_dec_delta_v3_ptr__3_0_t;
2230 }
2231 extern "C" {
2232     #[doc = " @brief Set the counter value"]
__itt_counter_set_value(id: __itt_counter, value_ptr: *mut ::std::os::raw::c_void)2233     pub fn __itt_counter_set_value(id: __itt_counter, value_ptr: *mut ::std::os::raw::c_void);
2234 }
2235 pub type __itt_counter_set_value_ptr__3_0_t = ::std::option::Option<
2236     unsafe extern "C" fn(id: __itt_counter, value_ptr: *mut ::std::os::raw::c_void),
2237 >;
2238 extern "C" {
2239     pub static mut __itt_counter_set_value_ptr__3_0: __itt_counter_set_value_ptr__3_0_t;
2240 }
2241 extern "C" {
2242     #[doc = " @brief Set the counter value"]
__itt_counter_set_value_ex( id: __itt_counter, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, value_ptr: *mut ::std::os::raw::c_void, )2243     pub fn __itt_counter_set_value_ex(
2244         id: __itt_counter,
2245         clock_domain: *mut __itt_clock_domain,
2246         timestamp: ::std::os::raw::c_ulonglong,
2247         value_ptr: *mut ::std::os::raw::c_void,
2248     );
2249 }
2250 pub type __itt_counter_set_value_ex_ptr__3_0_t = ::std::option::Option<
2251     unsafe extern "C" fn(
2252         id: __itt_counter,
2253         clock_domain: *mut __itt_clock_domain,
2254         timestamp: ::std::os::raw::c_ulonglong,
2255         value_ptr: *mut ::std::os::raw::c_void,
2256     ),
2257 >;
2258 extern "C" {
2259     pub static mut __itt_counter_set_value_ex_ptr__3_0: __itt_counter_set_value_ex_ptr__3_0_t;
2260 }
2261 extern "C" {
__itt_counter_create_typed( name: *const ::std::os::raw::c_char, domain: *const ::std::os::raw::c_char, type_: __itt_metadata_type, ) -> __itt_counter2262     pub fn __itt_counter_create_typed(
2263         name: *const ::std::os::raw::c_char,
2264         domain: *const ::std::os::raw::c_char,
2265         type_: __itt_metadata_type,
2266     ) -> __itt_counter;
2267 }
2268 pub type __itt_counter_create_typed_ptr__3_0_t = ::std::option::Option<
2269     unsafe extern "C" fn(
2270         name: *const ::std::os::raw::c_char,
2271         domain: *const ::std::os::raw::c_char,
2272         type_: __itt_metadata_type,
2273     ) -> __itt_counter,
2274 >;
2275 extern "C" {
2276     pub static mut __itt_counter_create_typed_ptr__3_0: __itt_counter_create_typed_ptr__3_0_t;
2277 }
2278 extern "C" {
2279     #[doc = " @brief Destroy the counter identified by the pointer previously returned by __itt_counter_create() or"]
2280     #[doc = " __itt_counter_create_typed()"]
__itt_counter_destroy(id: __itt_counter)2281     pub fn __itt_counter_destroy(id: __itt_counter);
2282 }
2283 pub type __itt_counter_destroy_ptr__3_0_t =
2284     ::std::option::Option<unsafe extern "C" fn(id: __itt_counter)>;
2285 extern "C" {
2286     pub static mut __itt_counter_destroy_ptr__3_0: __itt_counter_destroy_ptr__3_0_t;
2287 }
2288 extern "C" {
2289     #[doc = " @ingroup markers"]
2290     #[doc = " @brief Create a marker instance."]
2291     #[doc = " @param[in] domain The domain for this marker"]
2292     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2293     #[doc = " @param[in] timestamp The user defined timestamp."]
2294     #[doc = " @param[in] id The instance ID for this marker, or __itt_null"]
2295     #[doc = " @param[in] name The name for this marker"]
2296     #[doc = " @param[in] scope The scope for this marker"]
__itt_marker_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, id: __itt_id, name: *mut __itt_string_handle, scope: __itt_scope, )2297     pub fn __itt_marker_ex(
2298         domain: *const __itt_domain,
2299         clock_domain: *mut __itt_clock_domain,
2300         timestamp: ::std::os::raw::c_ulonglong,
2301         id: __itt_id,
2302         name: *mut __itt_string_handle,
2303         scope: __itt_scope,
2304     );
2305 }
2306 pub type __itt_marker_ex_ptr__3_0_t = ::std::option::Option<
2307     unsafe extern "C" fn(
2308         domain: *const __itt_domain,
2309         clock_domain: *mut __itt_clock_domain,
2310         timestamp: ::std::os::raw::c_ulonglong,
2311         id: __itt_id,
2312         name: *mut __itt_string_handle,
2313         scope: __itt_scope,
2314     ),
2315 >;
2316 extern "C" {
2317     pub static mut __itt_marker_ex_ptr__3_0: __itt_marker_ex_ptr__3_0_t;
2318 }
2319 extern "C" {
2320     #[doc = " @ingroup clockdomain"]
2321     #[doc = " @brief Add a relation to the current task instance."]
2322     #[doc = " The current task instance is the head of the relation."]
2323     #[doc = " @param[in] domain The domain controlling this call"]
2324     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2325     #[doc = " @param[in] timestamp The user defined timestamp."]
2326     #[doc = " @param[in] relation The kind of relation"]
2327     #[doc = " @param[in] tail The ID for the tail of the relation"]
__itt_relation_add_to_current_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, relation: __itt_relation, tail: __itt_id, )2328     pub fn __itt_relation_add_to_current_ex(
2329         domain: *const __itt_domain,
2330         clock_domain: *mut __itt_clock_domain,
2331         timestamp: ::std::os::raw::c_ulonglong,
2332         relation: __itt_relation,
2333         tail: __itt_id,
2334     );
2335 }
2336 extern "C" {
2337     #[doc = " @ingroup clockdomain"]
2338     #[doc = " @brief Add a relation between two instance identifiers."]
2339     #[doc = " @param[in] domain The domain controlling this call"]
2340     #[doc = " @param[in] clock_domain The clock domain controlling the execution of this call."]
2341     #[doc = " @param[in] timestamp The user defined timestamp."]
2342     #[doc = " @param[in] head The ID for the head of the relation"]
2343     #[doc = " @param[in] relation The kind of relation"]
2344     #[doc = " @param[in] tail The ID for the tail of the relation"]
__itt_relation_add_ex( domain: *const __itt_domain, clock_domain: *mut __itt_clock_domain, timestamp: ::std::os::raw::c_ulonglong, head: __itt_id, relation: __itt_relation, tail: __itt_id, )2345     pub fn __itt_relation_add_ex(
2346         domain: *const __itt_domain,
2347         clock_domain: *mut __itt_clock_domain,
2348         timestamp: ::std::os::raw::c_ulonglong,
2349         head: __itt_id,
2350         relation: __itt_relation,
2351         tail: __itt_id,
2352     );
2353 }
2354 pub type __itt_relation_add_to_current_ex_ptr__3_0_t = ::std::option::Option<
2355     unsafe extern "C" fn(
2356         domain: *const __itt_domain,
2357         clock_domain: *mut __itt_clock_domain,
2358         timestamp: ::std::os::raw::c_ulonglong,
2359         relation: __itt_relation,
2360         tail: __itt_id,
2361     ),
2362 >;
2363 extern "C" {
2364     pub static mut __itt_relation_add_to_current_ex_ptr__3_0:
2365         __itt_relation_add_to_current_ex_ptr__3_0_t;
2366 }
2367 pub type __itt_relation_add_ex_ptr__3_0_t = ::std::option::Option<
2368     unsafe extern "C" fn(
2369         domain: *const __itt_domain,
2370         clock_domain: *mut __itt_clock_domain,
2371         timestamp: ::std::os::raw::c_ulonglong,
2372         head: __itt_id,
2373         relation: __itt_relation,
2374         tail: __itt_id,
2375     ),
2376 >;
2377 extern "C" {
2378     pub static mut __itt_relation_add_ex_ptr__3_0: __itt_relation_add_ex_ptr__3_0_t;
2379 }
2380 pub const ___itt_track_group_type___itt_track_group_type_normal: ___itt_track_group_type = 0;
2381 #[doc = " @cond exclude_from_documentation"]
2382 pub type ___itt_track_group_type = u32;
2383 pub use self::___itt_track_group_type as __itt_track_group_type;
2384 #[repr(C)]
2385 #[derive(Debug, Copy, Clone)]
2386 pub struct ___itt_track_group {
2387     #[doc = "< Name of the track group"]
2388     pub name: *mut __itt_string_handle,
2389     #[doc = "< List of child tracks"]
2390     pub track: *mut ___itt_track,
2391     #[doc = "< Type of the track group"]
2392     pub tgtype: __itt_track_group_type,
2393     #[doc = "< Reserved. Must be zero"]
2394     pub extra1: ::std::os::raw::c_int,
2395     #[doc = "< Reserved. Must be zero"]
2396     pub extra2: *mut ::std::os::raw::c_void,
2397     pub next: *mut ___itt_track_group,
2398 }
2399 #[test]
bindgen_test_layout____itt_track_group()2400 fn bindgen_test_layout____itt_track_group() {
2401     assert_eq!(
2402         ::std::mem::size_of::<___itt_track_group>(),
2403         40usize,
2404         concat!("Size of: ", stringify!(___itt_track_group))
2405     );
2406     assert_eq!(
2407         ::std::mem::align_of::<___itt_track_group>(),
2408         8usize,
2409         concat!("Alignment of ", stringify!(___itt_track_group))
2410     );
2411     assert_eq!(
2412         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).name as *const _ as usize },
2413         0usize,
2414         concat!(
2415             "Offset of field: ",
2416             stringify!(___itt_track_group),
2417             "::",
2418             stringify!(name)
2419         )
2420     );
2421     assert_eq!(
2422         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).track as *const _ as usize },
2423         8usize,
2424         concat!(
2425             "Offset of field: ",
2426             stringify!(___itt_track_group),
2427             "::",
2428             stringify!(track)
2429         )
2430     );
2431     assert_eq!(
2432         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).tgtype as *const _ as usize },
2433         16usize,
2434         concat!(
2435             "Offset of field: ",
2436             stringify!(___itt_track_group),
2437             "::",
2438             stringify!(tgtype)
2439         )
2440     );
2441     assert_eq!(
2442         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).extra1 as *const _ as usize },
2443         20usize,
2444         concat!(
2445             "Offset of field: ",
2446             stringify!(___itt_track_group),
2447             "::",
2448             stringify!(extra1)
2449         )
2450     );
2451     assert_eq!(
2452         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).extra2 as *const _ as usize },
2453         24usize,
2454         concat!(
2455             "Offset of field: ",
2456             stringify!(___itt_track_group),
2457             "::",
2458             stringify!(extra2)
2459         )
2460     );
2461     assert_eq!(
2462         unsafe { &(*(::std::ptr::null::<___itt_track_group>())).next as *const _ as usize },
2463         32usize,
2464         concat!(
2465             "Offset of field: ",
2466             stringify!(___itt_track_group),
2467             "::",
2468             stringify!(next)
2469         )
2470     );
2471 }
2472 pub type __itt_track_group = ___itt_track_group;
2473 pub const ___itt_track_type___itt_track_type_normal: ___itt_track_type = 0;
2474 #[doc = " @brief Placeholder for custom track types. Currently, \"normal\" custom track"]
2475 #[doc = " is the only available track type."]
2476 pub type ___itt_track_type = u32;
2477 pub use self::___itt_track_type as __itt_track_type;
2478 #[repr(C)]
2479 #[derive(Debug, Copy, Clone)]
2480 pub struct ___itt_track {
2481     #[doc = "< Name of the track group"]
2482     pub name: *mut __itt_string_handle,
2483     #[doc = "< Parent group to a track"]
2484     pub group: *mut __itt_track_group,
2485     #[doc = "< Type of the track"]
2486     pub ttype: __itt_track_type,
2487     #[doc = "< Reserved. Must be zero"]
2488     pub extra1: ::std::os::raw::c_int,
2489     #[doc = "< Reserved. Must be zero"]
2490     pub extra2: *mut ::std::os::raw::c_void,
2491     pub next: *mut ___itt_track,
2492 }
2493 #[test]
bindgen_test_layout____itt_track()2494 fn bindgen_test_layout____itt_track() {
2495     assert_eq!(
2496         ::std::mem::size_of::<___itt_track>(),
2497         40usize,
2498         concat!("Size of: ", stringify!(___itt_track))
2499     );
2500     assert_eq!(
2501         ::std::mem::align_of::<___itt_track>(),
2502         8usize,
2503         concat!("Alignment of ", stringify!(___itt_track))
2504     );
2505     assert_eq!(
2506         unsafe { &(*(::std::ptr::null::<___itt_track>())).name as *const _ as usize },
2507         0usize,
2508         concat!(
2509             "Offset of field: ",
2510             stringify!(___itt_track),
2511             "::",
2512             stringify!(name)
2513         )
2514     );
2515     assert_eq!(
2516         unsafe { &(*(::std::ptr::null::<___itt_track>())).group as *const _ as usize },
2517         8usize,
2518         concat!(
2519             "Offset of field: ",
2520             stringify!(___itt_track),
2521             "::",
2522             stringify!(group)
2523         )
2524     );
2525     assert_eq!(
2526         unsafe { &(*(::std::ptr::null::<___itt_track>())).ttype as *const _ as usize },
2527         16usize,
2528         concat!(
2529             "Offset of field: ",
2530             stringify!(___itt_track),
2531             "::",
2532             stringify!(ttype)
2533         )
2534     );
2535     assert_eq!(
2536         unsafe { &(*(::std::ptr::null::<___itt_track>())).extra1 as *const _ as usize },
2537         20usize,
2538         concat!(
2539             "Offset of field: ",
2540             stringify!(___itt_track),
2541             "::",
2542             stringify!(extra1)
2543         )
2544     );
2545     assert_eq!(
2546         unsafe { &(*(::std::ptr::null::<___itt_track>())).extra2 as *const _ as usize },
2547         24usize,
2548         concat!(
2549             "Offset of field: ",
2550             stringify!(___itt_track),
2551             "::",
2552             stringify!(extra2)
2553         )
2554     );
2555     assert_eq!(
2556         unsafe { &(*(::std::ptr::null::<___itt_track>())).next as *const _ as usize },
2557         32usize,
2558         concat!(
2559             "Offset of field: ",
2560             stringify!(___itt_track),
2561             "::",
2562             stringify!(next)
2563         )
2564     );
2565 }
2566 pub type __itt_track = ___itt_track;
2567 extern "C" {
2568     #[doc = " @brief Create logical track group."]
__itt_track_group_create( name: *mut __itt_string_handle, track_group_type: __itt_track_group_type, ) -> *mut __itt_track_group2569     pub fn __itt_track_group_create(
2570         name: *mut __itt_string_handle,
2571         track_group_type: __itt_track_group_type,
2572     ) -> *mut __itt_track_group;
2573 }
2574 pub type __itt_track_group_create_ptr__3_0_t = ::std::option::Option<
2575     unsafe extern "C" fn(
2576         name: *mut __itt_string_handle,
2577         track_group_type: __itt_track_group_type,
2578     ) -> *mut __itt_track_group,
2579 >;
2580 extern "C" {
2581     pub static mut __itt_track_group_create_ptr__3_0: __itt_track_group_create_ptr__3_0_t;
2582 }
2583 extern "C" {
2584     #[doc = " @brief Create logical track."]
__itt_track_create( track_group: *mut __itt_track_group, name: *mut __itt_string_handle, track_type: __itt_track_type, ) -> *mut __itt_track2585     pub fn __itt_track_create(
2586         track_group: *mut __itt_track_group,
2587         name: *mut __itt_string_handle,
2588         track_type: __itt_track_type,
2589     ) -> *mut __itt_track;
2590 }
2591 pub type __itt_track_create_ptr__3_0_t = ::std::option::Option<
2592     unsafe extern "C" fn(
2593         track_group: *mut __itt_track_group,
2594         name: *mut __itt_string_handle,
2595         track_type: __itt_track_type,
2596     ) -> *mut __itt_track,
2597 >;
2598 extern "C" {
2599     pub static mut __itt_track_create_ptr__3_0: __itt_track_create_ptr__3_0_t;
2600 }
2601 extern "C" {
2602     #[doc = " @brief Set the logical track."]
__itt_set_track(track: *mut __itt_track)2603     pub fn __itt_set_track(track: *mut __itt_track);
2604 }
2605 pub type __itt_set_track_ptr__3_0_t =
2606     ::std::option::Option<unsafe extern "C" fn(track: *mut __itt_track)>;
2607 extern "C" {
2608     pub static mut __itt_set_track_ptr__3_0: __itt_set_track_ptr__3_0_t;
2609 }
2610 #[doc = " @cond exclude_from_gpa_documentation */"]
2611 #[doc = " @defgroup events Events"]
2612 #[doc = " @ingroup public"]
2613 #[doc = " Events group"]
2614 #[doc = " @{"]
2615 pub type __itt_event = ::std::os::raw::c_int;
2616 extern "C" {
__itt_event_create( name: *const ::std::os::raw::c_char, namelen: ::std::os::raw::c_int, ) -> __itt_event2617     pub fn __itt_event_create(
2618         name: *const ::std::os::raw::c_char,
2619         namelen: ::std::os::raw::c_int,
2620     ) -> __itt_event;
2621 }
2622 pub type __itt_event_create_ptr__3_0_t = ::std::option::Option<
2623     unsafe extern "C" fn(
2624         name: *const ::std::os::raw::c_char,
2625         namelen: ::std::os::raw::c_int,
2626     ) -> __itt_event,
2627 >;
2628 extern "C" {
2629     pub static mut __itt_event_create_ptr__3_0: __itt_event_create_ptr__3_0_t;
2630 }
2631 extern "C" {
2632     #[doc = " @brief Record an event occurrence."]
2633     #[doc = " @return __itt_err upon failure (invalid event id/user event feature not enabled)"]
__itt_event_start(event: __itt_event) -> ::std::os::raw::c_int2634     pub fn __itt_event_start(event: __itt_event) -> ::std::os::raw::c_int;
2635 }
2636 pub type __itt_event_start_ptr__3_0_t =
2637     ::std::option::Option<unsafe extern "C" fn(event: __itt_event) -> ::std::os::raw::c_int>;
2638 extern "C" {
2639     pub static mut __itt_event_start_ptr__3_0: __itt_event_start_ptr__3_0_t;
2640 }
2641 extern "C" {
2642     #[doc = " @brief Record an event end occurrence."]
2643     #[doc = " @note It is optional if events do not have durations."]
2644     #[doc = " @return __itt_err upon failure (invalid event id/user event feature not enabled)"]
__itt_event_end(event: __itt_event) -> ::std::os::raw::c_int2645     pub fn __itt_event_end(event: __itt_event) -> ::std::os::raw::c_int;
2646 }
2647 pub type __itt_event_end_ptr__3_0_t =
2648     ::std::option::Option<unsafe extern "C" fn(event: __itt_event) -> ::std::os::raw::c_int>;
2649 extern "C" {
2650     pub static mut __itt_event_end_ptr__3_0: __itt_event_end_ptr__3_0_t;
2651 }
2652 pub const __itt_av_data_type___itt_e_first: __itt_av_data_type = 0;
2653 pub const __itt_av_data_type___itt_e_char: __itt_av_data_type = 0;
2654 pub const __itt_av_data_type___itt_e_uchar: __itt_av_data_type = 1;
2655 pub const __itt_av_data_type___itt_e_int16: __itt_av_data_type = 2;
2656 pub const __itt_av_data_type___itt_e_uint16: __itt_av_data_type = 3;
2657 pub const __itt_av_data_type___itt_e_int32: __itt_av_data_type = 4;
2658 pub const __itt_av_data_type___itt_e_uint32: __itt_av_data_type = 5;
2659 pub const __itt_av_data_type___itt_e_int64: __itt_av_data_type = 6;
2660 pub const __itt_av_data_type___itt_e_uint64: __itt_av_data_type = 7;
2661 pub const __itt_av_data_type___itt_e_float: __itt_av_data_type = 8;
2662 pub const __itt_av_data_type___itt_e_double: __itt_av_data_type = 9;
2663 pub const __itt_av_data_type___itt_e_last: __itt_av_data_type = 9;
2664 #[doc = " @enum __itt_av_data_type"]
2665 #[doc = " @brief Defines types of arrays data (for C/C++ intrinsic types)"]
2666 pub type __itt_av_data_type = u32;
2667 extern "C" {
__itt_av_save( data: *mut ::std::os::raw::c_void, rank: ::std::os::raw::c_int, dimensions: *const ::std::os::raw::c_int, type_: ::std::os::raw::c_int, filePath: *const ::std::os::raw::c_char, columnOrder: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int2668     pub fn __itt_av_save(
2669         data: *mut ::std::os::raw::c_void,
2670         rank: ::std::os::raw::c_int,
2671         dimensions: *const ::std::os::raw::c_int,
2672         type_: ::std::os::raw::c_int,
2673         filePath: *const ::std::os::raw::c_char,
2674         columnOrder: ::std::os::raw::c_int,
2675     ) -> ::std::os::raw::c_int;
2676 }
2677 pub type __itt_av_save_ptr__3_0_t = ::std::option::Option<
2678     unsafe extern "C" fn(
2679         data: *mut ::std::os::raw::c_void,
2680         rank: ::std::os::raw::c_int,
2681         dimensions: *const ::std::os::raw::c_int,
2682         type_: ::std::os::raw::c_int,
2683         filePath: *const ::std::os::raw::c_char,
2684         columnOrder: ::std::os::raw::c_int,
2685     ) -> ::std::os::raw::c_int,
2686 >;
2687 extern "C" {
2688     pub static mut __itt_av_save_ptr__3_0: __itt_av_save_ptr__3_0_t;
2689 }
2690 extern "C" {
2691     #[doc = " @endcond"]
__itt_enable_attach()2692     pub fn __itt_enable_attach();
2693 }
2694 pub type __itt_enable_attach_ptr__3_0_t = ::std::option::Option<unsafe extern "C" fn()>;
2695 extern "C" {
2696     pub static mut __itt_enable_attach_ptr__3_0: __itt_enable_attach_ptr__3_0_t;
2697 }
2698 extern "C" {
__itt_module_load( start_addr: *mut ::std::os::raw::c_void, end_addr: *mut ::std::os::raw::c_void, path: *const ::std::os::raw::c_char, )2699     pub fn __itt_module_load(
2700         start_addr: *mut ::std::os::raw::c_void,
2701         end_addr: *mut ::std::os::raw::c_void,
2702         path: *const ::std::os::raw::c_char,
2703     );
2704 }
2705 pub type __itt_module_load_ptr__3_0_t = ::std::option::Option<
2706     unsafe extern "C" fn(
2707         start_addr: *mut ::std::os::raw::c_void,
2708         end_addr: *mut ::std::os::raw::c_void,
2709         path: *const ::std::os::raw::c_char,
2710     ),
2711 >;
2712 extern "C" {
2713     pub static mut __itt_module_load_ptr__3_0: __itt_module_load_ptr__3_0_t;
2714 }
2715 extern "C" {
2716     #[doc = " @brief Report module unload"]
2717     #[doc = " This API is used to report necessary information in case of bypassing default system loader."]
2718     #[doc = " Notification should be done just before the module is unloaded from process memory."]
2719     #[doc = " @param[in] addr - base address of loaded module"]
__itt_module_unload(addr: *mut ::std::os::raw::c_void)2720     pub fn __itt_module_unload(addr: *mut ::std::os::raw::c_void);
2721 }
2722 pub type __itt_module_unload_ptr__3_0_t =
2723     ::std::option::Option<unsafe extern "C" fn(addr: *mut ::std::os::raw::c_void)>;
2724 extern "C" {
2725     pub static mut __itt_module_unload_ptr__3_0: __itt_module_unload_ptr__3_0_t;
2726 }
2727 pub const __itt_module_type___itt_module_type_unknown: __itt_module_type = 0;
2728 pub const __itt_module_type___itt_module_type_elf: __itt_module_type = 1;
2729 pub const __itt_module_type___itt_module_type_coff: __itt_module_type = 2;
2730 #[doc = " @cond exclude_from_documentation"]
2731 pub type __itt_module_type = u32;
2732 pub const __itt_section_type_itt_section_type_unknown: __itt_section_type = 0;
2733 pub const __itt_section_type_itt_section_type_bss: __itt_section_type = 1;
2734 pub const __itt_section_type_itt_section_type_data: __itt_section_type = 2;
2735 pub const __itt_section_type_itt_section_type_text: __itt_section_type = 3;
2736 #[doc = " @cond exclude_from_documentation"]
2737 pub type __itt_section_type = u32;
2738 #[repr(C)]
2739 #[derive(Debug, Copy, Clone)]
2740 pub struct ___itt_section_info {
2741     #[doc = "< Section name in UTF8"]
2742     pub name: *const ::std::os::raw::c_char,
2743     #[doc = "< Section content and semantics description"]
2744     pub type_: __itt_section_type,
2745     #[doc = "< Section bit flags that describe attributes using bit mask"]
2746     #[doc = " Zero if disabled, non-zero if enabled"]
2747     pub flags: usize,
2748     #[doc = "< Section load(relocated) start address"]
2749     pub start_addr: *mut ::std::os::raw::c_void,
2750     #[doc = "< Section file offset"]
2751     pub size: usize,
2752     #[doc = "< Section size"]
2753     pub file_offset: usize,
2754 }
2755 #[test]
bindgen_test_layout____itt_section_info()2756 fn bindgen_test_layout____itt_section_info() {
2757     assert_eq!(
2758         ::std::mem::size_of::<___itt_section_info>(),
2759         48usize,
2760         concat!("Size of: ", stringify!(___itt_section_info))
2761     );
2762     assert_eq!(
2763         ::std::mem::align_of::<___itt_section_info>(),
2764         8usize,
2765         concat!("Alignment of ", stringify!(___itt_section_info))
2766     );
2767     assert_eq!(
2768         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).name as *const _ as usize },
2769         0usize,
2770         concat!(
2771             "Offset of field: ",
2772             stringify!(___itt_section_info),
2773             "::",
2774             stringify!(name)
2775         )
2776     );
2777     assert_eq!(
2778         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).type_ as *const _ as usize },
2779         8usize,
2780         concat!(
2781             "Offset of field: ",
2782             stringify!(___itt_section_info),
2783             "::",
2784             stringify!(type_)
2785         )
2786     );
2787     assert_eq!(
2788         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).flags as *const _ as usize },
2789         16usize,
2790         concat!(
2791             "Offset of field: ",
2792             stringify!(___itt_section_info),
2793             "::",
2794             stringify!(flags)
2795         )
2796     );
2797     assert_eq!(
2798         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).start_addr as *const _ as usize },
2799         24usize,
2800         concat!(
2801             "Offset of field: ",
2802             stringify!(___itt_section_info),
2803             "::",
2804             stringify!(start_addr)
2805         )
2806     );
2807     assert_eq!(
2808         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).size as *const _ as usize },
2809         32usize,
2810         concat!(
2811             "Offset of field: ",
2812             stringify!(___itt_section_info),
2813             "::",
2814             stringify!(size)
2815         )
2816     );
2817     assert_eq!(
2818         unsafe { &(*(::std::ptr::null::<___itt_section_info>())).file_offset as *const _ as usize },
2819         40usize,
2820         concat!(
2821             "Offset of field: ",
2822             stringify!(___itt_section_info),
2823             "::",
2824             stringify!(file_offset)
2825         )
2826     );
2827 }
2828 pub type __itt_section_info = ___itt_section_info;
2829 #[repr(C)]
2830 #[derive(Debug, Copy, Clone)]
2831 pub struct ___itt_module_object {
2832     #[doc = "< API version"]
2833     pub version: ::std::os::raw::c_uint,
2834     #[doc = "< Unique identifier. This is unchanged for sections that belong to the same module"]
2835     pub module_id: __itt_id,
2836     #[doc = "< Binary module format"]
2837     pub module_type: __itt_module_type,
2838     #[doc = "< Unique module name or path to module in UTF8"]
2839     #[doc = " Contains module name when module_bufer and module_size exist"]
2840     #[doc = " Contains module path when module_bufer and module_size absent"]
2841     #[doc = " module_name remains the same for the certain module_id"]
2842     pub module_name: *const ::std::os::raw::c_char,
2843     #[doc = "< Module buffer content"]
2844     pub module_buffer: *mut ::std::os::raw::c_void,
2845     #[doc = "< Module buffer size */"]
2846     #[doc = " If module_buffer and module_size do not exist,"]
2847     #[doc = " the binary module exists on the system already."]
2848     #[doc = " The module_name parameter contains the path to the module."]
2849     pub module_size: usize,
2850     #[doc = "< Reference to section information"]
2851     pub section_array: *mut __itt_section_info,
2852     pub section_number: usize,
2853 }
2854 #[test]
bindgen_test_layout____itt_module_object()2855 fn bindgen_test_layout____itt_module_object() {
2856     assert_eq!(
2857         ::std::mem::size_of::<___itt_module_object>(),
2858         80usize,
2859         concat!("Size of: ", stringify!(___itt_module_object))
2860     );
2861     assert_eq!(
2862         ::std::mem::align_of::<___itt_module_object>(),
2863         8usize,
2864         concat!("Alignment of ", stringify!(___itt_module_object))
2865     );
2866     assert_eq!(
2867         unsafe { &(*(::std::ptr::null::<___itt_module_object>())).version as *const _ as usize },
2868         0usize,
2869         concat!(
2870             "Offset of field: ",
2871             stringify!(___itt_module_object),
2872             "::",
2873             stringify!(version)
2874         )
2875     );
2876     assert_eq!(
2877         unsafe { &(*(::std::ptr::null::<___itt_module_object>())).module_id as *const _ as usize },
2878         8usize,
2879         concat!(
2880             "Offset of field: ",
2881             stringify!(___itt_module_object),
2882             "::",
2883             stringify!(module_id)
2884         )
2885     );
2886     assert_eq!(
2887         unsafe {
2888             &(*(::std::ptr::null::<___itt_module_object>())).module_type as *const _ as usize
2889         },
2890         32usize,
2891         concat!(
2892             "Offset of field: ",
2893             stringify!(___itt_module_object),
2894             "::",
2895             stringify!(module_type)
2896         )
2897     );
2898     assert_eq!(
2899         unsafe {
2900             &(*(::std::ptr::null::<___itt_module_object>())).module_name as *const _ as usize
2901         },
2902         40usize,
2903         concat!(
2904             "Offset of field: ",
2905             stringify!(___itt_module_object),
2906             "::",
2907             stringify!(module_name)
2908         )
2909     );
2910     assert_eq!(
2911         unsafe {
2912             &(*(::std::ptr::null::<___itt_module_object>())).module_buffer as *const _ as usize
2913         },
2914         48usize,
2915         concat!(
2916             "Offset of field: ",
2917             stringify!(___itt_module_object),
2918             "::",
2919             stringify!(module_buffer)
2920         )
2921     );
2922     assert_eq!(
2923         unsafe {
2924             &(*(::std::ptr::null::<___itt_module_object>())).module_size as *const _ as usize
2925         },
2926         56usize,
2927         concat!(
2928             "Offset of field: ",
2929             stringify!(___itt_module_object),
2930             "::",
2931             stringify!(module_size)
2932         )
2933     );
2934     assert_eq!(
2935         unsafe {
2936             &(*(::std::ptr::null::<___itt_module_object>())).section_array as *const _ as usize
2937         },
2938         64usize,
2939         concat!(
2940             "Offset of field: ",
2941             stringify!(___itt_module_object),
2942             "::",
2943             stringify!(section_array)
2944         )
2945     );
2946     assert_eq!(
2947         unsafe {
2948             &(*(::std::ptr::null::<___itt_module_object>())).section_number as *const _ as usize
2949         },
2950         72usize,
2951         concat!(
2952             "Offset of field: ",
2953             stringify!(___itt_module_object),
2954             "::",
2955             stringify!(section_number)
2956         )
2957     );
2958 }
2959 pub type __itt_module_object = ___itt_module_object;
2960 extern "C" {
2961     #[doc = " @brief Load module content and its loaded(relocated) sections."]
2962     #[doc = " This API is useful to save a module, or specify its location on the system and report information about loaded sections."]
2963     #[doc = " The target module is saved on the system if module buffer content and size are available."]
2964     #[doc = " If module buffer content and size are unavailable, the module name contains the path to the existing binary module."]
2965     #[doc = " @param[in] module_obj - provides module and section information, along with unique module identifiers (name,module ID)"]
2966     #[doc = " which bind the binary module to particular sections."]
__itt_module_load_with_sections(module_obj: *mut __itt_module_object)2967     pub fn __itt_module_load_with_sections(module_obj: *mut __itt_module_object);
2968 }
2969 pub type __itt_module_load_with_sections_ptr__3_0_t =
2970     ::std::option::Option<unsafe extern "C" fn(module_obj: *mut __itt_module_object)>;
2971 extern "C" {
2972     pub static mut __itt_module_load_with_sections_ptr__3_0:
2973         __itt_module_load_with_sections_ptr__3_0_t;
2974 }
2975 extern "C" {
2976     #[doc = " @brief Unload a module and its loaded(relocated) sections."]
2977     #[doc = " This API notifies that the module and its sections were unloaded."]
2978     #[doc = " @param[in] module_obj - provides module and sections information, along with unique module identifiers (name,module ID)"]
2979     #[doc = " which bind the binary module to particular sections."]
__itt_module_unload_with_sections(module_obj: *mut __itt_module_object)2980     pub fn __itt_module_unload_with_sections(module_obj: *mut __itt_module_object);
2981 }
2982 pub type __itt_module_unload_with_sections_ptr__3_0_t =
2983     ::std::option::Option<unsafe extern "C" fn(module_obj: *mut __itt_module_object)>;
2984 extern "C" {
2985     pub static mut __itt_module_unload_with_sections_ptr__3_0:
2986         __itt_module_unload_with_sections_ptr__3_0_t;
2987 }
2988