[InstCombine] Signed saturation patterns
[llvm-complete.git] / lib / ExecutionEngine / IntelJITEvents / ittnotify_types.h
blob15008fe93e607bfa62fe7e7d24387af62b539dc0
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
20 __itt_group_none = 0,
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,
37 __itt_group_all = -1
38 } __itt_group_id;
40 #pragma pack(push, 8)
42 typedef struct ___itt_group_list
44 __itt_group_id id;
45 const char* name;
46 } __itt_group_list;
48 #pragma pack(pop)
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_ */