1/* This file contains the definitions for timing variables used to
2   measure run-time performance of the compiler.
3   Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
4   Free Software Foundation, Inc.
5   Contributed by Alex Samuel <samuel@codesourcery.com>
6
7   This file is part of GCC.
8
9   GCC is free software; you can redistribute it and/or modify
10   it under the terms of the GNU General Public License as published by
11   the Free Software Foundation; either version 2, or (at your option)
12   any later version.
13
14   GCC is distributed in the hope that it will be useful,
15   but WITHOUT ANY WARRANTY; without even the implied warranty of
16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17   GNU General Public License for more details.
18
19   You should have received a copy of the GNU General Public License
20   along with GCC; see the file COPYING.  If not, write to
21   the Free Software Foundation, 51 Franklin Street, Fifth Floor,
22   Boston, MA 02110-1301, USA.  */
23
24/* This file contains timing variable definitions, used by timevar.h
25   and timevar.c.
26
27   Syntax:
28
29     DEFTIMEVAR (id, name)
30
31   where ID is the enumeral value used to identify the timing
32   variable, and NAME is a character string describing its purpose.  */
33
34/* The total execution time.  */
35DEFTIMEVAR (TV_TOTAL                 , "total time")
36
37/* Time spent garbage-collecting.  */
38DEFTIMEVAR (TV_GC                    , "garbage collection")
39
40/* Time spent generating dump files.  */
41DEFTIMEVAR (TV_DUMP                  , "dump files")
42
43DEFTIMEVAR (TV_CGRAPH                , "callgraph construction")
44DEFTIMEVAR (TV_CGRAPHOPT             , "callgraph optimization")
45DEFTIMEVAR (TV_IPA_CONSTANT_PROP     , "ipa cp")
46DEFTIMEVAR (TV_IPA_REFERENCE         , "ipa reference")
47DEFTIMEVAR (TV_IPA_PURE_CONST        , "ipa pure const")
48DEFTIMEVAR (TV_IPA_TYPE_ESCAPE       , "ipa type escape")
49DEFTIMEVAR (TV_IPA_PTA               , "ipa points-to")
50/* Time spent by constructing CFG.  */
51DEFTIMEVAR (TV_CFG                   , "cfg construction")
52/* Time spent by cleaning up CFG.  */
53DEFTIMEVAR (TV_CLEANUP_CFG           , "cfg cleanup")
54DEFTIMEVAR (TV_CFG_VERIFY            , "CFG verifier")
55DEFTIMEVAR (TV_DELETE_TRIVIALLY_DEAD , "trivially dead code")
56/* Time spent by life analysis.  */
57DEFTIMEVAR (TV_LIFE		     , "life analysis")
58DEFTIMEVAR (TV_LIFE_UPDATE	     , "life info update")
59
60DEFTIMEVAR (TV_ALIAS_ANALYSIS	     , "alias analysis")
61DEFTIMEVAR (TV_REG_SCAN		     , "register scan")
62DEFTIMEVAR (TV_REBUILD_JUMP	     , "rebuild jump labels")
63/* Timing in various stages of the compiler.  */
64DEFTIMEVAR (TV_CPP		     , "preprocessing")
65DEFTIMEVAR (TV_LEX		     , "lexical analysis")
66DEFTIMEVAR (TV_PARSE                 , "parser")
67DEFTIMEVAR (TV_NAME_LOOKUP           , "name lookup")
68DEFTIMEVAR (TV_INLINE_HEURISTICS     , "inline heuristics")
69DEFTIMEVAR (TV_INTEGRATION           , "integration")
70DEFTIMEVAR (TV_TREE_GIMPLIFY	     , "tree gimplify")
71DEFTIMEVAR (TV_TREE_EH		     , "tree eh")
72DEFTIMEVAR (TV_TREE_CFG		     , "tree CFG construction")
73DEFTIMEVAR (TV_TREE_CLEANUP_CFG	     , "tree CFG cleanup")
74DEFTIMEVAR (TV_TREE_VRP              , "tree VRP")
75DEFTIMEVAR (TV_TREE_COPY_PROP        , "tree copy propagation")
76DEFTIMEVAR (TV_TREE_STORE_COPY_PROP  , "tree store copy prop")
77DEFTIMEVAR (TV_FIND_REFERENCED_VARS  , "tree find ref. vars")
78DEFTIMEVAR (TV_TREE_PTA		     , "tree PTA")
79DEFTIMEVAR (TV_TREE_MAY_ALIAS        , "tree alias analysis")
80DEFTIMEVAR (TV_TREE_INSERT_PHI_NODES , "tree PHI insertion")
81DEFTIMEVAR (TV_TREE_SSA_REWRITE_BLOCKS, "tree SSA rewrite")
82DEFTIMEVAR (TV_TREE_SSA_OTHER	     , "tree SSA other")
83DEFTIMEVAR (TV_TREE_SSA_INCREMENTAL  , "tree SSA incremental")
84DEFTIMEVAR (TV_TREE_OPS	             , "tree operand scan")
85DEFTIMEVAR (TV_TREE_SSA_DOMINATOR_OPTS   , "dominator optimization")
86DEFTIMEVAR (TV_TREE_SRA              , "tree SRA")
87DEFTIMEVAR (TV_TREE_STORE_CCP	     , "tree STORE-CCP")
88DEFTIMEVAR (TV_TREE_CCP		     , "tree CCP")
89DEFTIMEVAR (TV_TREE_PHI_CPROP	     , "tree PHI const/copy prop")
90DEFTIMEVAR (TV_TREE_SPLIT_EDGES      , "tree split crit edges")
91DEFTIMEVAR (TV_TREE_REASSOC          , "tree reassociation")
92DEFTIMEVAR (TV_TREE_PRE		     , "tree PRE")
93DEFTIMEVAR (TV_TREE_REDPHI	     , "tree redundant PHIs")
94DEFTIMEVAR (TV_TREE_FRE		     , "tree FRE")
95DEFTIMEVAR (TV_TREE_SINK             , "tree code sinking")
96DEFTIMEVAR (TV_TREE_PHIOPT	     , "tree linearize phis")
97DEFTIMEVAR (TV_TREE_FORWPROP	     , "tree forward propagate")
98DEFTIMEVAR (TV_TREE_DCE		     , "tree conservative DCE")
99DEFTIMEVAR (TV_TREE_CD_DCE	     , "tree aggressive DCE")
100DEFTIMEVAR (TV_TREE_DSE		     , "tree DSE")
101DEFTIMEVAR (TV_TREE_MERGE_PHI	     , "PHI merge")
102DEFTIMEVAR (TV_TREE_LOOP	     , "tree loop optimization")
103DEFTIMEVAR (TV_TREE_LOOP_BOUNDS	     , "tree loop bounds")
104DEFTIMEVAR (TV_LIM                   , "loop invariant motion")
105DEFTIMEVAR (TV_TREE_LOOP_IVCANON     , "tree canonical iv")
106DEFTIMEVAR (TV_SCEV_CONST            , "scev constant prop")
107DEFTIMEVAR (TV_TREE_LOOP_UNSWITCH    , "tree loop unswitching")
108DEFTIMEVAR (TV_COMPLETE_UNROLL       , "complete unrolling")
109DEFTIMEVAR (TV_TREE_VECTORIZATION    , "tree vectorization")
110DEFTIMEVAR (TV_TREE_LINEAR_TRANSFORM , "tree loop linear")
111DEFTIMEVAR (TV_TREE_PREFETCH	     , "tree prefetching")
112DEFTIMEVAR (TV_TREE_LOOP_IVOPTS	     , "tree iv optimization")
113DEFTIMEVAR (TV_TREE_LOOP_INIT	     , "tree loop init")
114DEFTIMEVAR (TV_TREE_LOOP_FINI	     , "tree loop fini")
115DEFTIMEVAR (TV_TREE_CH		     , "tree copy headers")
116DEFTIMEVAR (TV_TREE_SSA_UNCPROP	     , "tree SSA uncprop")
117DEFTIMEVAR (TV_TREE_SSA_TO_NORMAL    , "tree SSA to normal")
118DEFTIMEVAR (TV_TREE_NRV		     , "tree NRV optimization")
119DEFTIMEVAR (TV_TREE_COPY_RENAME	     , "tree rename SSA copies")
120DEFTIMEVAR (TV_TREE_SSA_VERIFY       , "tree SSA verifier")
121DEFTIMEVAR (TV_TREE_STMT_VERIFY      , "tree STMT verifier")
122DEFTIMEVAR (TV_CGRAPH_VERIFY         , "callgraph verifier")
123DEFTIMEVAR (TV_DOM_FRONTIERS         , "dominance frontiers")
124DEFTIMEVAR (TV_DOMINANCE             , "dominance computation")
125DEFTIMEVAR (TV_CONTROL_DEPENDENCES   , "control dependences")
126DEFTIMEVAR (TV_OVERLOAD              , "overload resolution")
127DEFTIMEVAR (TV_TEMPLATE_INSTANTIATION, "template instantiation")
128DEFTIMEVAR (TV_EXPAND		     , "expand")
129DEFTIMEVAR (TV_VARCONST              , "varconst")
130DEFTIMEVAR (TV_JUMP                  , "jump")
131DEFTIMEVAR (TV_CSE                   , "CSE")
132DEFTIMEVAR (TV_LOOP                  , "loop analysis")
133DEFTIMEVAR (TV_GCSE                  , "global CSE")
134DEFTIMEVAR (TV_CPROP1                , "CPROP 1")
135DEFTIMEVAR (TV_PRE                   , "PRE")
136DEFTIMEVAR (TV_HOIST                 , "code hoisting")
137DEFTIMEVAR (TV_CPROP2                , "CPROP 2")
138DEFTIMEVAR (TV_LSM                   , "LSM")
139DEFTIMEVAR (TV_BYPASS                , "bypass jumps")
140DEFTIMEVAR (TV_TRACER                , "tracer")
141DEFTIMEVAR (TV_WEB                   , "web")
142DEFTIMEVAR (TV_CSE2                  , "CSE 2")
143DEFTIMEVAR (TV_BRANCH_PROB           , "branch prediction")
144DEFTIMEVAR (TV_VPT                   , "value profile opts")
145DEFTIMEVAR (TV_FLOW                  , "flow analysis")
146DEFTIMEVAR (TV_COMBINE               , "combiner")
147DEFTIMEVAR (TV_IFCVT		     , "if-conversion")
148DEFTIMEVAR (TV_SEE                   , "see")
149DEFTIMEVAR (TV_REGMOVE               , "regmove")
150DEFTIMEVAR (TV_MODE_SWITCH           , "mode switching")
151DEFTIMEVAR (TV_SMS		     , "sms modulo scheduling")
152DEFTIMEVAR (TV_SCHED                 , "scheduling")
153DEFTIMEVAR (TV_LOCAL_ALLOC           , "local alloc")
154DEFTIMEVAR (TV_GLOBAL_ALLOC          , "global alloc")
155DEFTIMEVAR (TV_RELOAD_CSE_REGS       , "reload CSE regs")
156DEFTIMEVAR (TV_SEQABSTR              , "sequence abstraction")
157DEFTIMEVAR (TV_GCSE_AFTER_RELOAD      , "load CSE after reload")
158DEFTIMEVAR (TV_FLOW2                 , "flow 2")
159DEFTIMEVAR (TV_IFCVT2		     , "if-conversion 2")
160DEFTIMEVAR (TV_PEEPHOLE2             , "peephole 2")
161DEFTIMEVAR (TV_RENAME_REGISTERS      , "rename registers")
162DEFTIMEVAR (TV_SCHED2                , "scheduling 2")
163DEFTIMEVAR (TV_MACH_DEP              , "machine dep reorg")
164DEFTIMEVAR (TV_DBR_SCHED             , "delay branch sched")
165DEFTIMEVAR (TV_REORDER_BLOCKS        , "reorder blocks")
166DEFTIMEVAR (TV_SHORTEN_BRANCH        , "shorten branches")
167DEFTIMEVAR (TV_REG_STACK             , "reg stack")
168DEFTIMEVAR (TV_FINAL                 , "final")
169DEFTIMEVAR (TV_SYMOUT                , "symout")
170DEFTIMEVAR (TV_VAR_TRACKING          , "variable tracking")
171
172/* Everything else in rest_of_compilation not included above.  */
173DEFTIMEVAR (TV_REST_OF_COMPILATION   , "rest of compilation")
174