LLVM  6.0.0svn
ittnotify_types.h
Go to the documentation of this file.
1 /*===-- ittnotify_types.h - JIT Profiling API internal types--------*- C -*-===*
2  *
3  * The LLVM Compiler Infrastructure
4  *
5  * This file is distributed under the University of Illinois Open Source
6  * License. See LICENSE.TXT for details.
7  *
8  *===----------------------------------------------------------------------===*
9  *
10  * NOTE: This file comes in a style different from the rest of LLVM
11  * source base since this is a piece of code shared from Intel(R)
12  * products. Please do not reformat / re-style this code to make
13  * subsequent merges and contributions from the original source base eaiser.
14  *
15  *===----------------------------------------------------------------------===*/
16 #ifndef _ITTNOTIFY_TYPES_H_
17 #define _ITTNOTIFY_TYPES_H_
18 
19 typedef enum ___itt_group_id
20 {
40 
41 #pragma pack(push, 8)
42 
43 typedef struct ___itt_group_list
44 {
46  const char* name;
48 
49 #pragma pack(pop)
50 
51 #define ITT_GROUP_LIST(varname) \
52  static __itt_group_list varname[] = { \
53  { __itt_group_all, "all" }, \
54  { __itt_group_control, "control" }, \
55  { __itt_group_thread, "thread" }, \
56  { __itt_group_mark, "mark" }, \
57  { __itt_group_sync, "sync" }, \
58  { __itt_group_fsync, "fsync" }, \
59  { __itt_group_jit, "jit" }, \
60  { __itt_group_model, "model" }, \
61  { __itt_group_counter, "counter" }, \
62  { __itt_group_frame, "frame" }, \
63  { __itt_group_stitch, "stitch" }, \
64  { __itt_group_heap, "heap" }, \
65  { __itt_group_structure, "structure" }, \
66  { __itt_group_suppress, "suppress" }, \
67  { __itt_group_none, NULL } \
68  }
69 
70 #endif /* _ITTNOTIFY_TYPES_H_ */
enum ___itt_group_id __itt_group_id
const char * name
struct ___itt_group_list __itt_group_list
___itt_group_id
__itt_group_id id