1 
2 //===----------------------------------------------------------------------===//
3 //
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #include "ittnotify_config.h"
11 
12 #ifndef ITT_FORMAT_DEFINED
13 #ifndef ITT_FORMAT
14 #define ITT_FORMAT
15 #endif /* ITT_FORMAT */
16 #ifndef ITT_NO_PARAMS
17 #define ITT_NO_PARAMS
18 #endif /* ITT_NO_PARAMS */
19 #endif /* ITT_FORMAT_DEFINED */
20 
21 /*
22  * parameters for macro expected:
23  * ITT_STUB(api, type, func_name, arguments, params, func_name_in_dll, group,
24  * printf_fmt)
25  */
26 #ifdef __ITT_INTERNAL_INIT
27 
28 #ifndef __ITT_INTERNAL_BODY
29 #if ITT_PLATFORM == ITT_PLATFORM_WIN
30 ITT_STUB(ITTAPI, __itt_domain *, domain_createA, (const char *name),
31          (ITT_FORMAT name), domain_createA, __itt_group_structure, "\"%s\"")
32 ITT_STUB(ITTAPI, __itt_domain *, domain_createW, (const wchar_t *name),
33          (ITT_FORMAT name), domain_createW, __itt_group_structure, "\"%S\"")
34 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
35 ITT_STUB(ITTAPI, __itt_domain *, domain_create, (const char *name),
36          (ITT_FORMAT name), domain_create, __itt_group_structure, "\"%s\"")
37 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
38 
39 ITT_STUBV(ITTAPI, void, module_load_with_sections,
40           (__itt_module_object * module_obj), (ITT_FORMAT module_obj),
41           module_load_with_sections, __itt_group_module, "%p")
42 ITT_STUBV(ITTAPI, void, module_unload_with_sections,
43           (__itt_module_object * module_obj), (ITT_FORMAT module_obj),
44           module_unload_with_sections, __itt_group_module, "%p")
45 
46 #if ITT_PLATFORM == ITT_PLATFORM_WIN
47 ITT_STUB(ITTAPI, __itt_string_handle *, string_handle_createA,
48          (const char *name), (ITT_FORMAT name), string_handle_createA,
49          __itt_group_structure, "\"%s\"")
50 ITT_STUB(ITTAPI, __itt_string_handle *, string_handle_createW,
51          (const wchar_t *name), (ITT_FORMAT name), string_handle_createW,
52          __itt_group_structure, "\"%S\"")
53 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
54 ITT_STUB(ITTAPI, __itt_string_handle *, string_handle_create,
55          (const char *name), (ITT_FORMAT name), string_handle_create,
56          __itt_group_structure, "\"%s\"")
57 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
58 
59 #if ITT_PLATFORM == ITT_PLATFORM_WIN
60 ITT_STUB(ITTAPI, __itt_counter, counter_createA,
61          (const char *name, const char *domain), (ITT_FORMAT name, domain),
62          counter_createA, __itt_group_counter, "\"%s\", \"%s\"")
63 ITT_STUB(ITTAPI, __itt_counter, counter_createW,
64          (const wchar_t *name, const wchar_t *domain),
65          (ITT_FORMAT name, domain), counter_createW, __itt_group_counter,
66          "\"%s\", \"%s\"")
67 #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */
68 ITT_STUB(ITTAPI, __itt_counter, counter_create,
69          (const char *name, const char *domain), (ITT_FORMAT name, domain),
70          counter_create, __itt_group_counter, "\"%s\", \"%s\"")
71 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
72 
73 #if ITT_PLATFORM == ITT_PLATFORM_WIN
74 ITT_STUB(ITTAPI, __itt_counter, counter_create_typedA,
75          (const char *name, const char *domain, __itt_metadata_type type),
76          (ITT_FORMAT name, domain, type), counter_create_typedA,
77          __itt_group_counter, "\"%s\", \"%s\", %d")
78 ITT_STUB(ITTAPI, __itt_counter, counter_create_typedW,
79          (const wchar_t *name, const wchar_t *domain, __itt_metadata_type type),
80          (ITT_FORMAT name, domain, type), counter_create_typedW,
81          __itt_group_counter, "\"%s\", \"%s\", %d")
82 #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */
83 ITT_STUB(ITTAPI, __itt_counter, counter_create_typed,
84          (const char *name, const char *domain, __itt_metadata_type type),
85          (ITT_FORMAT name, domain, type), counter_create_typed,
86          __itt_group_counter, "\"%s\", \"%s\", %d")
87 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
88 
89 ITT_STUBV(ITTAPI, void, pause, (void), (ITT_NO_PARAMS), pause,
90           __itt_group_control | __itt_group_legacy, "no args")
91 ITT_STUBV(ITTAPI, void, resume, (void), (ITT_NO_PARAMS), resume,
92           __itt_group_control | __itt_group_legacy, "no args")
93 
94 #if ITT_PLATFORM == ITT_PLATFORM_WIN
95 ITT_STUBV(ITTAPI, void, thread_set_nameA, (const char *name), (ITT_FORMAT name),
96           thread_set_nameA, __itt_group_thread, "\"%s\"")
97 ITT_STUBV(ITTAPI, void, thread_set_nameW, (const wchar_t *name),
98           (ITT_FORMAT name), thread_set_nameW, __itt_group_thread, "\"%S\"")
99 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
100 ITT_STUBV(ITTAPI, void, thread_set_name, (const char *name), (ITT_FORMAT name),
101           thread_set_name, __itt_group_thread, "\"%s\"")
102 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
103 ITT_STUBV(ITTAPI, void, thread_ignore, (void), (ITT_NO_PARAMS), thread_ignore,
104           __itt_group_thread, "no args")
105 
106 #if ITT_PLATFORM == ITT_PLATFORM_WIN
107 ITT_STUB(LIBITTAPI, int, thr_name_setA, (const char *name, int namelen),
108          (ITT_FORMAT name, namelen), thr_name_setA,
109          __itt_group_thread | __itt_group_legacy, "\"%s\", %d")
110 ITT_STUB(LIBITTAPI, int, thr_name_setW, (const wchar_t *name, int namelen),
111          (ITT_FORMAT name, namelen), thr_name_setW,
112          __itt_group_thread | __itt_group_legacy, "\"%S\", %d")
113 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
114 ITT_STUB(LIBITTAPI, int, thr_name_set, (const char *name, int namelen),
115          (ITT_FORMAT name, namelen), thr_name_set,
116          __itt_group_thread | __itt_group_legacy, "\"%s\", %d")
117 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
118 ITT_STUBV(LIBITTAPI, void, thr_ignore, (void), (ITT_NO_PARAMS), thr_ignore,
119           __itt_group_thread | __itt_group_legacy, "no args")
120 
121 #if ITT_PLATFORM == ITT_PLATFORM_WIN
122 ITT_STUB(ITTAPI, __itt_histogram *, histogram_createA,
123          (const __itt_domain *domain, const char *name,
124           __itt_metadata_type x_type, __itt_metadata_type y_type),
125          (ITT_FORMAT domain, name, x_type, y_type), histogram_createA,
126          __itt_group_structure, "%p, \"%s\", %d, %d")
127 ITT_STUB(ITTAPI, __itt_histogram *, histogram_createW,
128          (const __itt_domain *domain, const wchar_t *name,
129           __itt_metadata_type x_type, __itt_metadata_type y_type),
130          (ITT_FORMAT domain, name, x_type, y_type), histogram_createW,
131          __itt_group_structure, "%p, \"%s\", %d, %d")
132 #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */
133 ITT_STUB(ITTAPI, __itt_histogram *, histogram_create,
134          (const __itt_domain *domain, const char *name,
135           __itt_metadata_type x_type, __itt_metadata_type y_type),
136          (ITT_FORMAT domain, name, x_type, y_type), histogram_create,
137          __itt_group_structure, "%p, \"%s\", %d, %d")
138 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
139 
140 #endif /* __ITT_INTERNAL_BODY */
141 
142 ITT_STUBV(ITTAPI, void, enable_attach, (void), (ITT_NO_PARAMS), enable_attach,
143           __itt_group_all, "no args")
144 
145 #else /* __ITT_INTERNAL_INIT */
146 
147 ITT_STUBV(ITTAPI, void, detach, (void), (ITT_NO_PARAMS), detach,
148           __itt_group_control | __itt_group_legacy, "no args")
149 
150 #if ITT_PLATFORM == ITT_PLATFORM_WIN
151 ITT_STUBV(ITTAPI, void, sync_createA,
152           (void *addr, const char *objtype, const char *objname, int attribute),
153           (ITT_FORMAT addr, objtype, objname, attribute), sync_createA,
154           __itt_group_sync | __itt_group_fsync, "%p, \"%s\", \"%s\", %x")
155 ITT_STUBV(ITTAPI, void, sync_createW,
156           (void *addr, const wchar_t *objtype, const wchar_t *objname,
157            int attribute),
158           (ITT_FORMAT addr, objtype, objname, attribute), sync_createW,
159           __itt_group_sync | __itt_group_fsync, "%p, \"%S\", \"%S\", %x")
160 ITT_STUBV(ITTAPI, void, sync_renameA, (void *addr, const char *name),
161           (ITT_FORMAT addr, name), sync_renameA,
162           __itt_group_sync | __itt_group_fsync, "%p, \"%s\"")
163 ITT_STUBV(ITTAPI, void, sync_renameW, (void *addr, const wchar_t *name),
164           (ITT_FORMAT addr, name), sync_renameW,
165           __itt_group_sync | __itt_group_fsync, "%p, \"%S\"")
166 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
167 ITT_STUBV(ITTAPI, void, sync_create,
168           (void *addr, const char *objtype, const char *objname, int attribute),
169           (ITT_FORMAT addr, objtype, objname, attribute), sync_create,
170           __itt_group_sync | __itt_group_fsync, "%p, \"%s\", \"%s\", %x")
171 ITT_STUBV(ITTAPI, void, sync_rename, (void *addr, const char *name),
172           (ITT_FORMAT addr, name), sync_rename,
173           __itt_group_sync | __itt_group_fsync, "%p, \"%s\"")
174 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
175 ITT_STUBV(ITTAPI, void, sync_destroy, (void *addr), (ITT_FORMAT addr),
176           sync_destroy, __itt_group_sync | __itt_group_fsync, "%p")
177 
178 ITT_STUBV(ITTAPI, void, sync_prepare, (void *addr), (ITT_FORMAT addr),
179           sync_prepare, __itt_group_sync, "%p")
180 ITT_STUBV(ITTAPI, void, sync_cancel, (void *addr), (ITT_FORMAT addr),
181           sync_cancel, __itt_group_sync, "%p")
182 ITT_STUBV(ITTAPI, void, sync_acquired, (void *addr), (ITT_FORMAT addr),
183           sync_acquired, __itt_group_sync, "%p")
184 ITT_STUBV(ITTAPI, void, sync_releasing, (void *addr), (ITT_FORMAT addr),
185           sync_releasing, __itt_group_sync, "%p")
186 
187 ITT_STUBV(ITTAPI, void, suppress_push, (unsigned int mask), (ITT_FORMAT mask),
188           suppress_push, __itt_group_suppress, "%p")
189 ITT_STUBV(ITTAPI, void, suppress_pop, (void), (ITT_NO_PARAMS), suppress_pop,
190           __itt_group_suppress, "no args")
191 ITT_STUBV(ITTAPI, void, suppress_mark_range,
192           (__itt_suppress_mode_t mode, unsigned int mask, void *address,
193            size_t size),
194           (ITT_FORMAT mode, mask, address, size), suppress_mark_range,
195           __itt_group_suppress, "%d, %p, %p, %d")
196 ITT_STUBV(ITTAPI, void, suppress_clear_range,
197           (__itt_suppress_mode_t mode, unsigned int mask, void *address,
198            size_t size),
199           (ITT_FORMAT mode, mask, address, size), suppress_clear_range,
200           __itt_group_suppress, "%d, %p, %p, %d")
201 
202 ITT_STUBV(ITTAPI, void, fsync_prepare, (void *addr), (ITT_FORMAT addr),
203           sync_prepare, __itt_group_fsync, "%p")
204 ITT_STUBV(ITTAPI, void, fsync_cancel, (void *addr), (ITT_FORMAT addr),
205           sync_cancel, __itt_group_fsync, "%p")
206 ITT_STUBV(ITTAPI, void, fsync_acquired, (void *addr), (ITT_FORMAT addr),
207           sync_acquired, __itt_group_fsync, "%p")
208 ITT_STUBV(ITTAPI, void, fsync_releasing, (void *addr), (ITT_FORMAT addr),
209           sync_releasing, __itt_group_fsync, "%p")
210 
211 ITT_STUBV(ITTAPI, void, model_site_begin,
212           (__itt_model_site * site, __itt_model_site_instance *instance,
213            const char *name),
214           (ITT_FORMAT site, instance, name), model_site_begin,
215           __itt_group_model, "%p, %p, \"%s\"")
216 ITT_STUBV(ITTAPI, void, model_site_end,
217           (__itt_model_site * site, __itt_model_site_instance *instance),
218           (ITT_FORMAT site, instance), model_site_end, __itt_group_model,
219           "%p, %p")
220 ITT_STUBV(ITTAPI, void, model_task_begin,
221           (__itt_model_task * task, __itt_model_task_instance *instance,
222            const char *name),
223           (ITT_FORMAT task, instance, name), model_task_begin,
224           __itt_group_model, "%p, %p, \"%s\"")
225 ITT_STUBV(ITTAPI, void, model_task_end,
226           (__itt_model_task * task, __itt_model_task_instance *instance),
227           (ITT_FORMAT task, instance), model_task_end, __itt_group_model,
228           "%p, %p")
229 ITT_STUBV(ITTAPI, void, model_lock_acquire, (void *lock), (ITT_FORMAT lock),
230           model_lock_acquire, __itt_group_model, "%p")
231 ITT_STUBV(ITTAPI, void, model_lock_release, (void *lock), (ITT_FORMAT lock),
232           model_lock_release, __itt_group_model, "%p")
233 ITT_STUBV(ITTAPI, void, model_record_allocation, (void *addr, size_t size),
234           (ITT_FORMAT addr, size), model_record_allocation, __itt_group_model,
235           "%p, %d")
236 ITT_STUBV(ITTAPI, void, model_record_deallocation, (void *addr),
237           (ITT_FORMAT addr), model_record_deallocation, __itt_group_model, "%p")
238 ITT_STUBV(ITTAPI, void, model_induction_uses, (void *addr, size_t size),
239           (ITT_FORMAT addr, size), model_induction_uses, __itt_group_model,
240           "%p, %d")
241 ITT_STUBV(ITTAPI, void, model_reduction_uses, (void *addr, size_t size),
242           (ITT_FORMAT addr, size), model_reduction_uses, __itt_group_model,
243           "%p, %d")
244 ITT_STUBV(ITTAPI, void, model_observe_uses, (void *addr, size_t size),
245           (ITT_FORMAT addr, size), model_observe_uses, __itt_group_model,
246           "%p, %d")
247 ITT_STUBV(ITTAPI, void, model_clear_uses, (void *addr), (ITT_FORMAT addr),
248           model_clear_uses, __itt_group_model, "%p")
249 
250 #ifndef __ITT_INTERNAL_BODY
251 #if ITT_PLATFORM == ITT_PLATFORM_WIN
252 ITT_STUBV(ITTAPI, void, model_site_beginW, (const wchar_t *name),
253           (ITT_FORMAT name), model_site_beginW, __itt_group_model, "\"%s\"")
254 ITT_STUBV(ITTAPI, void, model_task_beginW, (const wchar_t *name),
255           (ITT_FORMAT name), model_task_beginW, __itt_group_model, "\"%s\"")
256 ITT_STUBV(ITTAPI, void, model_iteration_taskW, (const wchar_t *name),
257           (ITT_FORMAT name), model_iteration_taskW, __itt_group_model, "\"%s\"")
258 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
259 ITT_STUBV(ITTAPI, void, model_site_beginA, (const char *name),
260           (ITT_FORMAT name), model_site_beginA, __itt_group_model, "\"%s\"")
261 ITT_STUBV(ITTAPI, void, model_site_beginAL, (const char *name, size_t len),
262           (ITT_FORMAT name, len), model_site_beginAL, __itt_group_model,
263           "\"%s\", %d")
264 ITT_STUBV(ITTAPI, void, model_task_beginA, (const char *name),
265           (ITT_FORMAT name), model_task_beginA, __itt_group_model, "\"%s\"")
266 ITT_STUBV(ITTAPI, void, model_task_beginAL, (const char *name, size_t len),
267           (ITT_FORMAT name, len), model_task_beginAL, __itt_group_model,
268           "\"%s\", %d")
269 ITT_STUBV(ITTAPI, void, model_iteration_taskA, (const char *name),
270           (ITT_FORMAT name), model_iteration_taskA, __itt_group_model, "\"%s\"")
271 ITT_STUBV(ITTAPI, void, model_iteration_taskAL, (const char *name, size_t len),
272           (ITT_FORMAT name, len), model_iteration_taskAL, __itt_group_model,
273           "\"%s\", %d")
274 ITT_STUBV(ITTAPI, void, model_site_end_2, (void), (ITT_NO_PARAMS),
275           model_site_end_2, __itt_group_model, "no args")
276 ITT_STUBV(ITTAPI, void, model_task_end_2, (void), (ITT_NO_PARAMS),
277           model_task_end_2, __itt_group_model, "no args")
278 ITT_STUBV(ITTAPI, void, model_lock_acquire_2, (void *lock), (ITT_FORMAT lock),
279           model_lock_acquire_2, __itt_group_model, "%p")
280 ITT_STUBV(ITTAPI, void, model_lock_release_2, (void *lock), (ITT_FORMAT lock),
281           model_lock_release_2, __itt_group_model, "%p")
282 ITT_STUBV(ITTAPI, void, model_aggregate_task, (size_t count),
283           (ITT_FORMAT count), model_aggregate_task, __itt_group_model, "%d")
284 ITT_STUBV(ITTAPI, void, model_disable_push, (__itt_model_disable x),
285           (ITT_FORMAT x), model_disable_push, __itt_group_model, "%p")
286 ITT_STUBV(ITTAPI, void, model_disable_pop, (void), (ITT_NO_PARAMS),
287           model_disable_pop, __itt_group_model, "no args")
288 #endif /* __ITT_INTERNAL_BODY */
289 
290 #ifndef __ITT_INTERNAL_BODY
291 #if ITT_PLATFORM == ITT_PLATFORM_WIN
292 ITT_STUB(ITTAPI, __itt_heap_function, heap_function_createA,
293          (const char *name, const char *domain), (ITT_FORMAT name, domain),
294          heap_function_createA, __itt_group_heap, "\"%s\", \"%s\"")
295 ITT_STUB(ITTAPI, __itt_heap_function, heap_function_createW,
296          (const wchar_t *name, const wchar_t *domain),
297          (ITT_FORMAT name, domain), heap_function_createW, __itt_group_heap,
298          "\"%s\", \"%s\"")
299 #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */
300 ITT_STUB(ITTAPI, __itt_heap_function, heap_function_create,
301          (const char *name, const char *domain), (ITT_FORMAT name, domain),
302          heap_function_create, __itt_group_heap, "\"%s\", \"%s\"")
303 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
304 #endif /* __ITT_INTERNAL_BODY */
305 ITT_STUBV(ITTAPI, void, heap_allocate_begin,
306           (__itt_heap_function h, size_t size, int initialized),
307           (ITT_FORMAT h, size, initialized), heap_allocate_begin,
308           __itt_group_heap, "%p, %lu, %d")
309 ITT_STUBV(ITTAPI, void, heap_allocate_end,
310           (__itt_heap_function h, void **addr, size_t size, int initialized),
311           (ITT_FORMAT h, addr, size, initialized), heap_allocate_end,
312           __itt_group_heap, "%p, %p, %lu, %d")
313 ITT_STUBV(ITTAPI, void, heap_free_begin, (__itt_heap_function h, void *addr),
314           (ITT_FORMAT h, addr), heap_free_begin, __itt_group_heap, "%p, %p")
315 ITT_STUBV(ITTAPI, void, heap_free_end, (__itt_heap_function h, void *addr),
316           (ITT_FORMAT h, addr), heap_free_end, __itt_group_heap, "%p, %p")
317 ITT_STUBV(ITTAPI, void, heap_reallocate_begin,
318           (__itt_heap_function h, void *addr, size_t new_size, int initialized),
319           (ITT_FORMAT h, addr, new_size, initialized), heap_reallocate_begin,
320           __itt_group_heap, "%p, %p, %lu, %d")
321 ITT_STUBV(ITTAPI, void, heap_reallocate_end,
322           (__itt_heap_function h, void *addr, void **new_addr, size_t new_size,
323            int initialized),
324           (ITT_FORMAT h, addr, new_addr, new_size, initialized),
325           heap_reallocate_end, __itt_group_heap, "%p, %p, %p, %lu, %d")
326 ITT_STUBV(ITTAPI, void, heap_internal_access_begin, (void), (ITT_NO_PARAMS),
327           heap_internal_access_begin, __itt_group_heap, "no args")
328 ITT_STUBV(ITTAPI, void, heap_internal_access_end, (void), (ITT_NO_PARAMS),
329           heap_internal_access_end, __itt_group_heap, "no args")
330 ITT_STUBV(ITTAPI, void, heap_record_memory_growth_begin, (void),
331           (ITT_NO_PARAMS), heap_record_memory_growth_begin, __itt_group_heap,
332           "no args")
333 ITT_STUBV(ITTAPI, void, heap_record_memory_growth_end, (void), (ITT_NO_PARAMS),
334           heap_record_memory_growth_end, __itt_group_heap, "no args")
335 ITT_STUBV(ITTAPI, void, heap_reset_detection, (unsigned int reset_mask),
336           (ITT_FORMAT reset_mask), heap_reset_detection, __itt_group_heap, "%u")
337 ITT_STUBV(ITTAPI, void, heap_record, (unsigned int record_mask),
338           (ITT_FORMAT record_mask), heap_record, __itt_group_heap, "%u")
339 
340 ITT_STUBV(ITTAPI, void, id_create, (const __itt_domain *domain, __itt_id id),
341           (ITT_FORMAT domain, id), id_create, __itt_group_structure, "%p, %lu")
342 ITT_STUBV(ITTAPI, void, id_destroy, (const __itt_domain *domain, __itt_id id),
343           (ITT_FORMAT domain, id), id_destroy, __itt_group_structure, "%p, %lu")
344 
345 ITT_STUB(ITTAPI, __itt_timestamp, get_timestamp, (void), (ITT_NO_PARAMS),
346          get_timestamp, __itt_group_structure, "no args")
347 
348 ITT_STUBV(ITTAPI, void, region_begin,
349           (const __itt_domain *domain, __itt_id id, __itt_id parent,
350            __itt_string_handle *name),
351           (ITT_FORMAT domain, id, parent, name), region_begin,
352           __itt_group_structure, "%p, %lu, %lu, %p")
353 ITT_STUBV(ITTAPI, void, region_end, (const __itt_domain *domain, __itt_id id),
354           (ITT_FORMAT domain, id), region_end, __itt_group_structure, "%p, %lu")
355 
356 #ifndef __ITT_INTERNAL_BODY
357 ITT_STUBV(ITTAPI, void, frame_begin_v3,
358           (const __itt_domain *domain, __itt_id *id), (ITT_FORMAT domain, id),
359           frame_begin_v3, __itt_group_structure, "%p, %p")
360 ITT_STUBV(ITTAPI, void, frame_end_v3,
361           (const __itt_domain *domain, __itt_id *id), (ITT_FORMAT domain, id),
362           frame_end_v3, __itt_group_structure, "%p, %p")
363 ITT_STUBV(ITTAPI, void, frame_submit_v3,
364           (const __itt_domain *domain, __itt_id *id, __itt_timestamp begin,
365            __itt_timestamp end),
366           (ITT_FORMAT domain, id, begin, end), frame_submit_v3,
367           __itt_group_structure, "%p, %p, %lu, %lu")
368 #endif /* __ITT_INTERNAL_BODY */
369 
370 ITT_STUBV(ITTAPI, void, task_group,
371           (const __itt_domain *domain, __itt_id id, __itt_id parent,
372            __itt_string_handle *name),
373           (ITT_FORMAT domain, id, parent, name), task_group,
374           __itt_group_structure, "%p, %lu, %lu, %p")
375 
376 ITT_STUBV(ITTAPI, void, task_begin,
377           (const __itt_domain *domain, __itt_id id, __itt_id parent,
378            __itt_string_handle *name),
379           (ITT_FORMAT domain, id, parent, name), task_begin,
380           __itt_group_structure, "%p, %lu, %lu, %p")
381 ITT_STUBV(ITTAPI, void, task_begin_fn,
382           (const __itt_domain *domain, __itt_id id, __itt_id parent, void *fn),
383           (ITT_FORMAT domain, id, parent, fn), task_begin_fn,
384           __itt_group_structure, "%p, %lu, %lu, %p")
385 ITT_STUBV(ITTAPI, void, task_end, (const __itt_domain *domain),
386           (ITT_FORMAT domain), task_end, __itt_group_structure, "%p")
387 
388 ITT_STUBV(ITTAPI, void, counter_inc_v3,
389           (const __itt_domain *domain, __itt_string_handle *name),
390           (ITT_FORMAT domain, name), counter_inc_v3, __itt_group_structure,
391           "%p, %p")
392 ITT_STUBV(ITTAPI, void, counter_inc_delta_v3,
393           (const __itt_domain *domain, __itt_string_handle *name,
394            unsigned long long value),
395           (ITT_FORMAT domain, name, value), counter_inc_delta_v3,
396           __itt_group_structure, "%p, %p, %lu")
397 ITT_STUBV(ITTAPI, void, counter_dec_v3,
398           (const __itt_domain *domain, __itt_string_handle *name),
399           (ITT_FORMAT domain, name), counter_dec_v3, __itt_group_structure,
400           "%p, %p")
401 ITT_STUBV(ITTAPI, void, counter_dec_delta_v3,
402           (const __itt_domain *domain, __itt_string_handle *name,
403            unsigned long long value),
404           (ITT_FORMAT domain, name, value), counter_dec_delta_v3,
405           __itt_group_structure, "%p, %p, %lu")
406 
407 ITT_STUBV(ITTAPI, void, marker,
408           (const __itt_domain *domain, __itt_id id, __itt_string_handle *name,
409            __itt_scope scope),
410           (ITT_FORMAT domain, id, name, scope), marker, __itt_group_structure,
411           "%p, %lu, %p, %d")
412 
413 ITT_STUBV(ITTAPI, void, metadata_add,
414           (const __itt_domain *domain, __itt_id id, __itt_string_handle *key,
415            __itt_metadata_type type, size_t count, void *data),
416           (ITT_FORMAT domain, id, key, type, count, data), metadata_add,
417           __itt_group_structure, "%p, %lu, %p, %d, %lu, %p")
418 #if ITT_PLATFORM == ITT_PLATFORM_WIN
419 ITT_STUBV(ITTAPI, void, metadata_str_addA,
420           (const __itt_domain *domain, __itt_id id, __itt_string_handle *key,
421            const char *data, size_t length),
422           (ITT_FORMAT domain, id, key, data, length), metadata_str_addA,
423           __itt_group_structure, "%p, %lu, %p, %p, %lu")
424 ITT_STUBV(ITTAPI, void, metadata_str_addW,
425           (const __itt_domain *domain, __itt_id id, __itt_string_handle *key,
426            const wchar_t *data, size_t length),
427           (ITT_FORMAT domain, id, key, data, length), metadata_str_addW,
428           __itt_group_structure, "%p, %lu, %p, %p, %lu")
429 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
430 ITT_STUBV(ITTAPI, void, metadata_str_add,
431           (const __itt_domain *domain, __itt_id id, __itt_string_handle *key,
432            const char *data, size_t length),
433           (ITT_FORMAT domain, id, key, data, length), metadata_str_add,
434           __itt_group_structure, "%p, %lu, %p, %p, %lu")
435 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
436 
437 ITT_STUBV(ITTAPI, void, relation_add_to_current,
438           (const __itt_domain *domain, __itt_relation relation, __itt_id tail),
439           (ITT_FORMAT domain, relation, tail), relation_add_to_current,
440           __itt_group_structure, "%p, %lu, %p")
441 ITT_STUBV(ITTAPI, void, relation_add,
442           (const __itt_domain *domain, __itt_id head, __itt_relation relation,
443            __itt_id tail),
444           (ITT_FORMAT domain, head, relation, tail), relation_add,
445           __itt_group_structure, "%p, %p, %lu, %p")
446 
447 #ifndef __ITT_INTERNAL_BODY
448 #if ITT_PLATFORM == ITT_PLATFORM_WIN
449 ITT_STUB(LIBITTAPI, __itt_event, event_createA, (const char *name, int namelen),
450          (ITT_FORMAT name, namelen), event_createA,
451          __itt_group_mark | __itt_group_legacy, "\"%s\", %d")
452 ITT_STUB(LIBITTAPI, __itt_event, event_createW,
453          (const wchar_t *name, int namelen), (ITT_FORMAT name, namelen),
454          event_createW, __itt_group_mark | __itt_group_legacy, "\"%S\", %d")
455 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
456 ITT_STUB(LIBITTAPI, __itt_event, event_create, (const char *name, int namelen),
457          (ITT_FORMAT name, namelen), event_create,
458          __itt_group_mark | __itt_group_legacy, "\"%s\", %d")
459 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
460 ITT_STUB(LIBITTAPI, int, event_start, (__itt_event event), (ITT_FORMAT event),
461          event_start, __itt_group_mark | __itt_group_legacy, "%d")
462 ITT_STUB(LIBITTAPI, int, event_end, (__itt_event event), (ITT_FORMAT event),
463          event_end, __itt_group_mark | __itt_group_legacy, "%d")
464 #endif /* __ITT_INTERNAL_BODY */
465 
466 #ifndef __ITT_INTERNAL_BODY
467 #if ITT_PLATFORM == ITT_PLATFORM_WIN
468 ITT_STUBV(ITTAPI, void, sync_set_nameA,
469           (void *addr, const char *objtype, const char *objname, int attribute),
470           (ITT_FORMAT addr, objtype, objname, attribute), sync_set_nameA,
471           __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
472           "%p, \"%s\", \"%s\", %x")
473 ITT_STUBV(ITTAPI, void, sync_set_nameW,
474           (void *addr, const wchar_t *objtype, const wchar_t *objname,
475            int attribute),
476           (ITT_FORMAT addr, objtype, objname, attribute), sync_set_nameW,
477           __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
478           "%p, \"%S\", \"%S\", %x")
479 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
480 ITT_STUBV(ITTAPI, void, sync_set_name,
481           (void *addr, const char *objtype, const char *objname, int attribute),
482           (ITT_FORMAT addr, objtype, objname, attribute), sync_set_name,
483           __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
484           "p, \"%s\", \"%s\", %x")
485 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
486 
487 #if ITT_PLATFORM == ITT_PLATFORM_WIN
488 ITT_STUB(LIBITTAPI, int, notify_sync_nameA,
489          (void *p, const char *objtype, int typelen, const char *objname,
490           int namelen, int attribute),
491          (ITT_FORMAT p, objtype, typelen, objname, namelen, attribute),
492          notify_sync_nameA,
493          __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
494          "%p, \"%s\", %d, \"%s\", %d, %x")
495 ITT_STUB(LIBITTAPI, int, notify_sync_nameW,
496          (void *p, const wchar_t *objtype, int typelen, const wchar_t *objname,
497           int namelen, int attribute),
498          (ITT_FORMAT p, objtype, typelen, objname, namelen, attribute),
499          notify_sync_nameW,
500          __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
501          "%p, \"%S\", %d, \"%S\", %d, %x")
502 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
503 ITT_STUB(LIBITTAPI, int, notify_sync_name,
504          (void *p, const char *objtype, int typelen, const char *objname,
505           int namelen, int attribute),
506          (ITT_FORMAT p, objtype, typelen, objname, namelen, attribute),
507          notify_sync_name,
508          __itt_group_sync | __itt_group_fsync | __itt_group_legacy,
509          "%p, \"%s\", %d, \"%s\", %d, %x")
510 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
511 
512 ITT_STUBV(LIBITTAPI, void, notify_sync_prepare, (void *p), (ITT_FORMAT p),
513           notify_sync_prepare,
514           __itt_group_sync | __itt_group_fsync | __itt_group_legacy, "%p")
515 ITT_STUBV(LIBITTAPI, void, notify_sync_cancel, (void *p), (ITT_FORMAT p),
516           notify_sync_cancel,
517           __itt_group_sync | __itt_group_fsync | __itt_group_legacy, "%p")
518 ITT_STUBV(LIBITTAPI, void, notify_sync_acquired, (void *p), (ITT_FORMAT p),
519           notify_sync_acquired,
520           __itt_group_sync | __itt_group_fsync | __itt_group_legacy, "%p")
521 ITT_STUBV(LIBITTAPI, void, notify_sync_releasing, (void *p), (ITT_FORMAT p),
522           notify_sync_releasing,
523           __itt_group_sync | __itt_group_fsync | __itt_group_legacy, "%p")
524 #endif /* __ITT_INTERNAL_BODY */
525 
526 ITT_STUBV(LIBITTAPI, void, memory_read, (void *addr, size_t size),
527           (ITT_FORMAT addr, size), memory_read, __itt_group_legacy, "%p, %lu")
528 ITT_STUBV(LIBITTAPI, void, memory_write, (void *addr, size_t size),
529           (ITT_FORMAT addr, size), memory_write, __itt_group_legacy, "%p, %lu")
530 ITT_STUBV(LIBITTAPI, void, memory_update, (void *addr, size_t size),
531           (ITT_FORMAT addr, size), memory_update, __itt_group_legacy, "%p, %lu")
532 
533 ITT_STUB(LIBITTAPI, __itt_state_t, state_get, (void), (ITT_NO_PARAMS),
534          state_get, __itt_group_legacy, "no args")
535 ITT_STUB(LIBITTAPI, __itt_state_t, state_set, (__itt_state_t s), (ITT_FORMAT s),
536          state_set, __itt_group_legacy, "%d")
537 ITT_STUB(LIBITTAPI, __itt_obj_state_t, obj_mode_set,
538          (__itt_obj_prop_t p, __itt_obj_state_t s), (ITT_FORMAT p, s),
539          obj_mode_set, __itt_group_legacy, "%d, %d")
540 ITT_STUB(LIBITTAPI, __itt_thr_state_t, thr_mode_set,
541          (__itt_thr_prop_t p, __itt_thr_state_t s), (ITT_FORMAT p, s),
542          thr_mode_set, __itt_group_legacy, "%d, %d")
543 
544 #ifndef __ITT_INTERNAL_BODY
545 #if ITT_PLATFORM == ITT_PLATFORM_WIN
546 ITT_STUB(ITTAPI, __itt_frame, frame_createA, (const char *domain),
547          (ITT_FORMAT domain), frame_createA, __itt_group_frame, "\"%s\"")
548 ITT_STUB(ITTAPI, __itt_frame, frame_createW, (const wchar_t *domain),
549          (ITT_FORMAT domain), frame_createW, __itt_group_frame, "\"%s\"")
550 #else /* ITT_PLATFORM==ITT_PLATFORM_WIN */
551 ITT_STUB(ITTAPI, __itt_frame, frame_create, (const char *domain),
552          (ITT_FORMAT domain), frame_create, __itt_group_frame, "\"%s\"")
553 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
554 
555 #if ITT_PLATFORM == ITT_PLATFORM_WIN
556 ITT_STUB(ITTAPI, __itt_pt_region, pt_region_createA, (const char *name),
557          (ITT_FORMAT name), pt_region_createA, __itt_group_structure, "\"%s\"")
558 ITT_STUB(ITTAPI, __itt_pt_region, pt_region_createW, (const wchar_t *name),
559          (ITT_FORMAT name), pt_region_createW, __itt_group_structure, "\"%S\"")
560 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
561 ITT_STUB(ITTAPI, __itt_pt_region, pt_region_create, (const char *name),
562          (ITT_FORMAT name), pt_region_create, __itt_group_structure, "\"%s\"")
563 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
564 #endif /* __ITT_INTERNAL_BODY */
565 ITT_STUBV(ITTAPI, void, frame_begin, (__itt_frame frame), (ITT_FORMAT frame),
566           frame_begin, __itt_group_frame, "%p")
567 ITT_STUBV(ITTAPI, void, frame_end, (__itt_frame frame), (ITT_FORMAT frame),
568           frame_end, __itt_group_frame, "%p")
569 
570 ITT_STUBV(ITTAPI, void, counter_destroy, (__itt_counter id), (ITT_FORMAT id),
571           counter_destroy, __itt_group_counter, "%p")
572 ITT_STUBV(ITTAPI, void, counter_inc, (__itt_counter id), (ITT_FORMAT id),
573           counter_inc, __itt_group_counter, "%p")
574 ITT_STUBV(ITTAPI, void, counter_inc_delta,
575           (__itt_counter id, unsigned long long value), (ITT_FORMAT id, value),
576           counter_inc_delta, __itt_group_counter, "%p, %lu")
577 ITT_STUBV(ITTAPI, void, counter_dec, (__itt_counter id), (ITT_FORMAT id),
578           counter_dec, __itt_group_counter, "%p")
579 ITT_STUBV(ITTAPI, void, counter_dec_delta,
580           (__itt_counter id, unsigned long long value), (ITT_FORMAT id, value),
581           counter_dec_delta, __itt_group_counter, "%p, %lu")
582 ITT_STUBV(ITTAPI, void, counter_set_value, (__itt_counter id, void *value_ptr),
583           (ITT_FORMAT id, value_ptr), counter_set_value, __itt_group_counter,
584           "%p, %p")
585 ITT_STUBV(ITTAPI, void, counter_set_value_ex,
586           (__itt_counter id, __itt_clock_domain *clock_domain,
587            unsigned long long timestamp, void *value_ptr),
588           (ITT_FORMAT id, clock_domain, timestamp, value_ptr),
589           counter_set_value_ex, __itt_group_counter, "%p, %p, %llu, %p")
590 
591 #ifndef __ITT_INTERNAL_BODY
592 #if ITT_PLATFORM == ITT_PLATFORM_WIN
593 ITT_STUB(ITTAPI, __itt_mark_type, mark_createA, (const char *name),
594          (ITT_FORMAT name), mark_createA, __itt_group_mark, "\"%s\"")
595 ITT_STUB(ITTAPI, __itt_mark_type, mark_createW, (const wchar_t *name),
596          (ITT_FORMAT name), mark_createW, __itt_group_mark, "\"%S\"")
597 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
598 ITT_STUB(ITTAPI, __itt_mark_type, mark_create, (const char *name),
599          (ITT_FORMAT name), mark_create, __itt_group_mark, "\"%s\"")
600 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
601 #endif /* __ITT_INTERNAL_BODY */
602 #if ITT_PLATFORM == ITT_PLATFORM_WIN
603 ITT_STUB(ITTAPI, int, markA, (__itt_mark_type mt, const char *parameter),
604          (ITT_FORMAT mt, parameter), markA, __itt_group_mark, "%d, \"%s\"")
605 ITT_STUB(ITTAPI, int, markW, (__itt_mark_type mt, const wchar_t *parameter),
606          (ITT_FORMAT mt, parameter), markW, __itt_group_mark, "%d, \"%S\"")
607 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
608 ITT_STUB(ITTAPI, int, mark, (__itt_mark_type mt, const char *parameter),
609          (ITT_FORMAT mt, parameter), mark, __itt_group_mark, "%d, \"%s\"")
610 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
611 ITT_STUB(ITTAPI, int, mark_off, (__itt_mark_type mt), (ITT_FORMAT mt), mark_off,
612          __itt_group_mark, "%d")
613 #if ITT_PLATFORM == ITT_PLATFORM_WIN
614 ITT_STUB(ITTAPI, int, mark_globalA, (__itt_mark_type mt, const char *parameter),
615          (ITT_FORMAT mt, parameter), mark_globalA, __itt_group_mark,
616          "%d, \"%s\"")
617 ITT_STUB(ITTAPI, int, mark_globalW,
618          (__itt_mark_type mt, const wchar_t *parameter),
619          (ITT_FORMAT mt, parameter), mark_globalW, __itt_group_mark,
620          "%d, \"%S\"")
621 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
622 ITT_STUB(ITTAPI, int, mark_global, (__itt_mark_type mt, const char *parameter),
623          (ITT_FORMAT mt, parameter), mark_global, __itt_group_mark,
624          "%d, \"%S\"")
625 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
626 ITT_STUB(ITTAPI, int, mark_global_off, (__itt_mark_type mt), (ITT_FORMAT mt),
627          mark_global_off, __itt_group_mark, "%d")
628 
629 #ifndef __ITT_INTERNAL_BODY
630 ITT_STUB(ITTAPI, __itt_caller, stack_caller_create, (void), (ITT_NO_PARAMS),
631          stack_caller_create, __itt_group_stitch, "no args")
632 #endif /* __ITT_INTERNAL_BODY */
633 ITT_STUBV(ITTAPI, void, stack_caller_destroy, (__itt_caller id),
634           (ITT_FORMAT id), stack_caller_destroy, __itt_group_stitch, "%p")
635 ITT_STUBV(ITTAPI, void, stack_callee_enter, (__itt_caller id), (ITT_FORMAT id),
636           stack_callee_enter, __itt_group_stitch, "%p")
637 ITT_STUBV(ITTAPI, void, stack_callee_leave, (__itt_caller id), (ITT_FORMAT id),
638           stack_callee_leave, __itt_group_stitch, "%p")
639 
640 ITT_STUB(ITTAPI, __itt_clock_domain *, clock_domain_create,
641          (__itt_get_clock_info_fn fn, void *fn_data), (ITT_FORMAT fn, fn_data),
642          clock_domain_create, __itt_group_structure, "%p, %p")
643 ITT_STUBV(ITTAPI, void, clock_domain_reset, (void), (ITT_NO_PARAMS),
644           clock_domain_reset, __itt_group_structure, "no args")
645 ITT_STUBV(ITTAPI, void, id_create_ex,
646           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
647            unsigned long long timestamp, __itt_id id),
648           (ITT_FORMAT domain, clock_domain, timestamp, id), id_create_ex,
649           __itt_group_structure, "%p, %p, %lu, %lu")
650 ITT_STUBV(ITTAPI, void, id_destroy_ex,
651           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
652            unsigned long long timestamp, __itt_id id),
653           (ITT_FORMAT domain, clock_domain, timestamp, id), id_destroy_ex,
654           __itt_group_structure, "%p, %p, %lu, %lu")
655 ITT_STUBV(ITTAPI, void, task_begin_ex,
656           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
657            unsigned long long timestamp, __itt_id id, __itt_id parentid,
658            __itt_string_handle *name),
659           (ITT_FORMAT domain, clock_domain, timestamp, id, parentid, name),
660           task_begin_ex, __itt_group_structure, "%p, %p, %lu, %lu, %lu, %p")
661 ITT_STUBV(ITTAPI, void, task_begin_fn_ex,
662           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
663            unsigned long long timestamp, __itt_id id, __itt_id parentid,
664            void *fn),
665           (ITT_FORMAT domain, clock_domain, timestamp, id, parentid, fn),
666           task_begin_fn_ex, __itt_group_structure, "%p, %p, %lu, %lu, %lu, %p")
667 ITT_STUBV(ITTAPI, void, task_end_ex,
668           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
669            unsigned long long timestamp),
670           (ITT_FORMAT domain, clock_domain, timestamp), task_end_ex,
671           __itt_group_structure, "%p, %p, %lu")
672 ITT_STUBV(ITTAPI, void, task_begin_overlapped,
673           (const __itt_domain *domain, __itt_id id, __itt_id parent,
674            __itt_string_handle *name),
675           (ITT_FORMAT domain, id, parent, name), task_begin_overlapped,
676           __itt_group_structure, "%p, %lu, %lu, %p")
677 ITT_STUBV(ITTAPI, void, task_begin_overlapped_ex,
678           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
679            unsigned long long timestamp, __itt_id id, __itt_id parentid,
680            __itt_string_handle *name),
681           (ITT_FORMAT domain, clock_domain, timestamp, id, parentid, name),
682           task_begin_overlapped_ex, __itt_group_structure,
683           "%p, %p, %lu, %lu, %lu, %p")
684 ITT_STUBV(ITTAPI, void, task_end_overlapped,
685           (const __itt_domain *domain, __itt_id id), (ITT_FORMAT domain, id),
686           task_end_overlapped, __itt_group_structure, "%p, %lu")
687 ITT_STUBV(ITTAPI, void, task_end_overlapped_ex,
688           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
689            unsigned long long timestamp, __itt_id id),
690           (ITT_FORMAT domain, clock_domain, timestamp, id),
691           task_end_overlapped_ex, __itt_group_structure, "%p, %p, %lu, %lu")
692 ITT_STUBV(ITTAPI, void, marker_ex,
693           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
694            unsigned long long timestamp, __itt_id id, __itt_string_handle *name,
695            __itt_scope scope),
696           (ITT_FORMAT domain, clock_domain, timestamp, id, name, scope),
697           marker_ex, __itt_group_structure, "%p, %p, %lu, %lu, %p, %d")
698 ITT_STUBV(ITTAPI, void, metadata_add_with_scope,
699           (const __itt_domain *domain, __itt_scope scope,
700            __itt_string_handle *key, __itt_metadata_type type, size_t count,
701            void *data),
702           (ITT_FORMAT domain, scope, key, type, count, data),
703           metadata_add_with_scope, __itt_group_structure,
704           "%p, %d, %p, %d, %lu, %p")
705 #if ITT_PLATFORM == ITT_PLATFORM_WIN
706 ITT_STUBV(ITTAPI, void, metadata_str_add_with_scopeA,
707           (const __itt_domain *domain, __itt_scope scope,
708            __itt_string_handle *key, const char *data, size_t length),
709           (ITT_FORMAT domain, scope, key, data, length),
710           metadata_str_add_with_scopeA, __itt_group_structure,
711           "%p, %d, %p, %p, %lu")
712 ITT_STUBV(ITTAPI, void, metadata_str_add_with_scopeW,
713           (const __itt_domain *domain, __itt_scope scope,
714            __itt_string_handle *key, const wchar_t *data, size_t length),
715           (ITT_FORMAT domain, scope, key, data, length),
716           metadata_str_add_with_scopeW, __itt_group_structure,
717           "%p, %d, %p, %p, %lu")
718 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
719 ITT_STUBV(ITTAPI, void, metadata_str_add_with_scope,
720           (const __itt_domain *domain, __itt_scope scope,
721            __itt_string_handle *key, const char *data, size_t length),
722           (ITT_FORMAT domain, scope, key, data, length),
723           metadata_str_add_with_scope, __itt_group_structure,
724           "%p, %d, %p, %p, %lu")
725 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
726 ITT_STUBV(ITTAPI, void, relation_add_to_current_ex,
727           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
728            unsigned long long timestamp, __itt_relation relation,
729            __itt_id tail),
730           (ITT_FORMAT domain, clock_domain, timestamp, relation, tail),
731           relation_add_to_current_ex, __itt_group_structure,
732           "%p, %p, %lu, %d, %lu")
733 ITT_STUBV(ITTAPI, void, relation_add_ex,
734           (const __itt_domain *domain, __itt_clock_domain *clock_domain,
735            unsigned long long timestamp, __itt_id head, __itt_relation relation,
736            __itt_id tail),
737           (ITT_FORMAT domain, clock_domain, timestamp, head, relation, tail),
738           relation_add_ex, __itt_group_structure, "%p, %p, %lu, %lu, %d, %lu")
739 ITT_STUB(ITTAPI, __itt_track_group *, track_group_create,
740          (__itt_string_handle * name, __itt_track_group_type track_group_type),
741          (ITT_FORMAT name, track_group_type), track_group_create,
742          __itt_group_structure, "%p, %d")
743 ITT_STUB(ITTAPI, __itt_track *, track_create,
744          (__itt_track_group * track_group, __itt_string_handle *name,
745           __itt_track_type track_type),
746          (ITT_FORMAT track_group, name, track_type), track_create,
747          __itt_group_structure, "%p, %p, %d")
748 ITT_STUBV(ITTAPI, void, set_track, (__itt_track * track), (ITT_FORMAT track),
749           set_track, __itt_group_structure, "%p")
750 
751 #ifndef __ITT_INTERNAL_BODY
752 ITT_STUB(ITTAPI, const char *, api_version, (void), (ITT_NO_PARAMS),
753          api_version, __itt_group_all & ~__itt_group_legacy, "no args")
754 #endif /* __ITT_INTERNAL_BODY */
755 
756 #ifndef __ITT_INTERNAL_BODY
757 #if ITT_PLATFORM == ITT_PLATFORM_WIN
758 ITT_STUB(ITTAPI, int, av_saveA,
759          (void *data, int rank, const int *dimensions, int type,
760           const char *filePath, int columnOrder),
761          (ITT_FORMAT data, rank, dimensions, type, filePath, columnOrder),
762          av_saveA, __itt_group_arrays, "%p, %d, %p, %d, \"%s\", %d")
763 ITT_STUB(ITTAPI, int, av_saveW,
764          (void *data, int rank, const int *dimensions, int type,
765           const wchar_t *filePath, int columnOrder),
766          (ITT_FORMAT data, rank, dimensions, type, filePath, columnOrder),
767          av_saveW, __itt_group_arrays, "%p, %d, %p, %d, \"%S\", %d")
768 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
769 ITT_STUB(ITTAPI, int, av_save,
770          (void *data, int rank, const int *dimensions, int type,
771           const char *filePath, int columnOrder),
772          (ITT_FORMAT data, rank, dimensions, type, filePath, columnOrder),
773          av_save, __itt_group_arrays, "%p, %d, %p, %d, \"%s\", %d")
774 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
775 #endif /* __ITT_INTERNAL_BODY */
776 
777 #if ITT_PLATFORM == ITT_PLATFORM_WIN
778 ITT_STUBV(ITTAPI, void, module_loadA,
779           (void *start_addr, void *end_addr, const char *path),
780           (ITT_FORMAT start_addr, end_addr, path), module_loadA,
781           __itt_group_module, "%p, %p, %p")
782 ITT_STUBV(ITTAPI, void, module_loadW,
783           (void *start_addr, void *end_addr, const wchar_t *path),
784           (ITT_FORMAT start_addr, end_addr, path), module_loadW,
785           __itt_group_module, "%p, %p, %p")
786 #else /* ITT_PLATFORM!=ITT_PLATFORM_WIN */
787 ITT_STUBV(ITTAPI, void, module_load,
788           (void *start_addr, void *end_addr, const char *path),
789           (ITT_FORMAT start_addr, end_addr, path), module_load,
790           __itt_group_module, "%p, %p, %p")
791 #endif /* ITT_PLATFORM==ITT_PLATFORM_WIN */
792 ITT_STUBV(ITTAPI, void, module_unload, (void *start_addr),
793           (ITT_FORMAT start_addr), module_unload, __itt_group_module, "%p")
794 
795 ITT_STUBV(ITTAPI, void, histogram_submit,
796           (__itt_histogram * hist, size_t length, void *x_data, void *y_data),
797           (ITT_FORMAT hist, length, x_data, y_data), histogram_submit,
798           __itt_group_structure, "%p, %lu, %p, %p")
799 
800 #endif /* __ITT_INTERNAL_INIT */
801