beifg: Remove the unused function be_ifg_nodes_break().
[libfirm] / include / libfirm / firmstat.h
1 /*
2  * This file is part of libFirm.
3  * Copyright (C) 2012 University of Karlsruhe.
4  */
5
6 /**
7  * @file
8  * @brief   Statistics for Firm.
9  * @author  Michael Beck
10  */
11 #ifndef FIRM_STAT_FIRMSTAT_H
12 #define FIRM_STAT_FIRMSTAT_H
13
14 #include "firm_types.h"
15 #include "begin.h"
16
17 /**
18  * Dump a snapshot of the statistic values.
19  * Never called from libFirm should be called from user.
20  *
21  * @param fname  base name of the statistic output file
22  * @param phase  a phase name. Prefix will be firmstat-\<phase\>-
23  */
24 FIRM_API void stat_dump_snapshot(const char *fname, const char *phase);
25
26 /**
27  * Creates an ir_prog pass for stat_dump_snapshot().
28  *
29  * @param name    the name of this pass or NULL
30  * @param fname   base name of the statistic output file
31  * @param phase   a phase name. Prefix will be firmstat-\<phase\>-
32  *
33  * @return  the newly created ir_prog pass
34  */
35 FIRM_API ir_prog_pass_t *stat_dump_snapshot_pass(
36         const char *name, const char *fname, const char *phase);
37
38 /**
39  * initialize the statistics module.
40  * Should be called directly after ir_init
41  */
42 FIRM_API void firm_init_stat(void);
43
44 /**
45  * terminates the statistics module, frees all memory
46  */
47 FIRM_API void stat_term(void);
48
49 /**
50  * returns 1 if statistic module is active, 0 otherwise
51  */
52 FIRM_API int stat_is_active(void);
53
54 #include "end.h"
55
56 #endif