1 /*===-- ittnotify_types.h - JIT Profiling API internal types--------*- C -*-===*
3 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 * See https://llvm.org/LICENSE.txt for license information.
5 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 *===----------------------------------------------------------------------===*
9 * NOTE: This file comes in a style different from the rest of LLVM
10 * source base since this is a piece of code shared from Intel(R)
11 * products. Please do not reformat / re-style this code to make
12 * subsequent merges and contributions from the original source base eaiser.
14 *===----------------------------------------------------------------------===*/
15 #ifndef _ITTNOTIFY_TYPES_H_
16 #define _ITTNOTIFY_TYPES_H_
18 typedef enum ___itt_group_id
21 __itt_group_legacy
= 1<<0,
22 __itt_group_control
= 1<<1,
23 __itt_group_thread
= 1<<2,
24 __itt_group_mark
= 1<<3,
25 __itt_group_sync
= 1<<4,
26 __itt_group_fsync
= 1<<5,
27 __itt_group_jit
= 1<<6,
28 __itt_group_model
= 1<<7,
29 __itt_group_splitter_min
= 1<<7,
30 __itt_group_counter
= 1<<8,
31 __itt_group_frame
= 1<<9,
32 __itt_group_stitch
= 1<<10,
33 __itt_group_heap
= 1<<11,
34 __itt_group_splitter_max
= 1<<12,
35 __itt_group_structure
= 1<<12,
36 __itt_group_suppress
= 1<<13,
42 typedef struct ___itt_group_list
50 #define ITT_GROUP_LIST(varname) \
51 static __itt_group_list varname[] = { \
52 { __itt_group_all, "all" }, \
53 { __itt_group_control, "control" }, \
54 { __itt_group_thread, "thread" }, \
55 { __itt_group_mark, "mark" }, \
56 { __itt_group_sync, "sync" }, \
57 { __itt_group_fsync, "fsync" }, \
58 { __itt_group_jit, "jit" }, \
59 { __itt_group_model, "model" }, \
60 { __itt_group_counter, "counter" }, \
61 { __itt_group_frame, "frame" }, \
62 { __itt_group_stitch, "stitch" }, \
63 { __itt_group_heap, "heap" }, \
64 { __itt_group_structure, "structure" }, \
65 { __itt_group_suppress, "suppress" }, \
66 { __itt_group_none, NULL } \
69 #endif /* _ITTNOTIFY_TYPES_H_ */