New header file containing profile info enums shared between the C++ analysis
[oota-llvm.git] / include / llvm / Analysis / ProfileInfoTypes.h
1 /*===-- ProfileInfoTypes.h - Profiling info shared constants ------*- C -*-===*\
2 |*
3 |*                     The LLVM Compiler Infrastructure
4 |*
5 |* This file was developed by the LLVM research group and is distributed under
6 |* the University of Illinois Open Source License. See LICENSE.TXT for details.
7 |* 
8 |*===----------------------------------------------------------------------===*|
9 |* 
10 |* This file defines constants shared by the various different profiling
11 |* runtime libraries and the LLVM C++ profile info loader. It must be a
12 |* C header because, at present, the profiling runtimes are written in C.
13 |*
14 \*===----------------------------------------------------------------------===*/
15
16 #ifndef LLVM_ANALYSIS_PROFILEINFOTYPES_H
17 #define LLVM_ANALYSIS_PROFILEINFOTYPES_H
18
19 enum ProfilingType {
20   ArgumentInfo  = 1,   /* The command line argument block */
21   FunctionInfo  = 2,   /* Function profiling information  */
22   BlockInfo     = 3,   /* Block profiling information     */
23   EdgeInfo      = 4,   /* Edge profiling information      */
24   PathInfo      = 5,   /* Path profiling information      */
25   BBTraceInfo   = 6    /* Basic block trace information   */
26 };
27
28 #endif /* LLVM_ANALYSIS_PROFILEINFOTYPES_H */