3 * File name: ir/common/statistics.h
4 * Purpose: Compute statistics about firm library.
5 * Author: Goetz Lindenmaier
9 * Copyright: (c) 2004 Universität Karlsruhe
10 * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
16 * This file defines a set ouf routines to output statistics
17 * about the firm library. These statistics include
18 * - number of datastructures allocated, as entities, types, nodes...
19 * - memory consumption of data structures
20 * - effectiveness of optimizations
23 * This file is thought for compiler optimization, not to run it in a
24 * production compiler. I.e., the routines may be inefficient.
27 # ifndef _STATISTICS_H_
28 # define _STATISTICS_H_
30 /* Statistics about allocated datastructures: counts. */
32 * 0: information about the whole program
33 * 1: information per type/procedure
36 void print_all_counts(int verbosity);
38 /** Prints number of irgraphs, number of nodes in them and
39 * totals in intRAprocedural view. */
40 void print_graph_counts(int verbosity);
42 /** Prints number of types, number of entities and totals.
43 * Does not consider frame types or types to representent call by
44 * value arguments/results. */
45 void print_type_counts(int verbosity);
47 /** Prints number of tarvals.
49 void print_tarval_counts(int verbosity);
51 /** Prints number of idents.
53 void print_ident_counts(int verbosity);
56 # endif /* _STATISTICS_H_ */