190075Sobrien/* This file contains the definitions for timing variables used to
290075Sobrien   measure run-time performance of the compiler.
3169689Skan   Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
4169689Skan   Free Software Foundation, Inc.
590075Sobrien   Contributed by Alex Samuel <samuel@codesourcery.com>
690075Sobrien
790075Sobrien   This file is part of GCC.
890075Sobrien
990075Sobrien   GCC is free software; you can redistribute it and/or modify
1090075Sobrien   it under the terms of the GNU General Public License as published by
1190075Sobrien   the Free Software Foundation; either version 2, or (at your option)
1290075Sobrien   any later version.
1390075Sobrien
1490075Sobrien   GCC is distributed in the hope that it will be useful,
1590075Sobrien   but WITHOUT ANY WARRANTY; without even the implied warranty of
1690075Sobrien   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1790075Sobrien   GNU General Public License for more details.
1890075Sobrien
1990075Sobrien   You should have received a copy of the GNU General Public License
2090075Sobrien   along with GCC; see the file COPYING.  If not, write to
21169689Skan   the Free Software Foundation, 51 Franklin Street, Fifth Floor,
22169689Skan   Boston, MA 02110-1301, USA.  */
2390075Sobrien
2490075Sobrien/* This file contains timing variable definitions, used by timevar.h
2590075Sobrien   and timevar.c.
2690075Sobrien
2790075Sobrien   Syntax:
2890075Sobrien
2990075Sobrien     DEFTIMEVAR (id, name)
3090075Sobrien
3190075Sobrien   where ID is the enumeral value used to identify the timing
3290075Sobrien   variable, and NAME is a character string describing its purpose.  */
3390075Sobrien
3490075Sobrien/* The total execution time.  */
3590075SobrienDEFTIMEVAR (TV_TOTAL                 , "total time")
3690075Sobrien
3790075Sobrien/* Time spent garbage-collecting.  */
3890075SobrienDEFTIMEVAR (TV_GC                    , "garbage collection")
3990075Sobrien
4090075Sobrien/* Time spent generating dump files.  */
4190075SobrienDEFTIMEVAR (TV_DUMP                  , "dump files")
4290075Sobrien
43132718SkanDEFTIMEVAR (TV_CGRAPH                , "callgraph construction")
44132718SkanDEFTIMEVAR (TV_CGRAPHOPT             , "callgraph optimization")
45169689SkanDEFTIMEVAR (TV_IPA_CONSTANT_PROP     , "ipa cp")
46169689SkanDEFTIMEVAR (TV_IPA_REFERENCE         , "ipa reference")
47169689SkanDEFTIMEVAR (TV_IPA_PURE_CONST        , "ipa pure const")
48169689SkanDEFTIMEVAR (TV_IPA_TYPE_ESCAPE       , "ipa type escape")
49169689SkanDEFTIMEVAR (TV_IPA_PTA               , "ipa points-to")
5090075Sobrien/* Time spent by constructing CFG.  */
5190075SobrienDEFTIMEVAR (TV_CFG                   , "cfg construction")
5290075Sobrien/* Time spent by cleaning up CFG.  */
5390075SobrienDEFTIMEVAR (TV_CLEANUP_CFG           , "cfg cleanup")
54169689SkanDEFTIMEVAR (TV_CFG_VERIFY            , "CFG verifier")
55117395SkanDEFTIMEVAR (TV_DELETE_TRIVIALLY_DEAD , "trivially dead code")
5690075Sobrien/* Time spent by life analysis.  */
5790075SobrienDEFTIMEVAR (TV_LIFE		     , "life analysis")
5890075SobrienDEFTIMEVAR (TV_LIFE_UPDATE	     , "life info update")
59132718Skan
60132718SkanDEFTIMEVAR (TV_ALIAS_ANALYSIS	     , "alias analysis")
61132718SkanDEFTIMEVAR (TV_REG_SCAN		     , "register scan")
62132718SkanDEFTIMEVAR (TV_REBUILD_JUMP	     , "rebuild jump labels")
6390075Sobrien/* Timing in various stages of the compiler.  */
6490075SobrienDEFTIMEVAR (TV_CPP		     , "preprocessing")
6590075SobrienDEFTIMEVAR (TV_LEX		     , "lexical analysis")
6690075SobrienDEFTIMEVAR (TV_PARSE                 , "parser")
67117395SkanDEFTIMEVAR (TV_NAME_LOOKUP           , "name lookup")
68169689SkanDEFTIMEVAR (TV_INLINE_HEURISTICS     , "inline heuristics")
69169689SkanDEFTIMEVAR (TV_INTEGRATION           , "integration")
70169689SkanDEFTIMEVAR (TV_TREE_GIMPLIFY	     , "tree gimplify")
71169689SkanDEFTIMEVAR (TV_TREE_EH		     , "tree eh")
72169689SkanDEFTIMEVAR (TV_TREE_CFG		     , "tree CFG construction")
73169689SkanDEFTIMEVAR (TV_TREE_CLEANUP_CFG	     , "tree CFG cleanup")
74169689SkanDEFTIMEVAR (TV_TREE_VRP              , "tree VRP")
75169689SkanDEFTIMEVAR (TV_TREE_COPY_PROP        , "tree copy propagation")
76169689SkanDEFTIMEVAR (TV_TREE_STORE_COPY_PROP  , "tree store copy prop")
77169689SkanDEFTIMEVAR (TV_FIND_REFERENCED_VARS  , "tree find ref. vars")
78169689SkanDEFTIMEVAR (TV_TREE_PTA		     , "tree PTA")
79169689SkanDEFTIMEVAR (TV_TREE_MAY_ALIAS        , "tree alias analysis")
80169689SkanDEFTIMEVAR (TV_TREE_INSERT_PHI_NODES , "tree PHI insertion")
81169689SkanDEFTIMEVAR (TV_TREE_SSA_REWRITE_BLOCKS, "tree SSA rewrite")
82169689SkanDEFTIMEVAR (TV_TREE_SSA_OTHER	     , "tree SSA other")
83169689SkanDEFTIMEVAR (TV_TREE_SSA_INCREMENTAL  , "tree SSA incremental")
84169689SkanDEFTIMEVAR (TV_TREE_OPS	             , "tree operand scan")
85169689SkanDEFTIMEVAR (TV_TREE_SSA_DOMINATOR_OPTS   , "dominator optimization")
86169689SkanDEFTIMEVAR (TV_TREE_SRA              , "tree SRA")
87169689SkanDEFTIMEVAR (TV_TREE_STORE_CCP	     , "tree STORE-CCP")
88169689SkanDEFTIMEVAR (TV_TREE_CCP		     , "tree CCP")
89169689SkanDEFTIMEVAR (TV_TREE_PHI_CPROP	     , "tree PHI const/copy prop")
90169689SkanDEFTIMEVAR (TV_TREE_SPLIT_EDGES      , "tree split crit edges")
91169689SkanDEFTIMEVAR (TV_TREE_REASSOC          , "tree reassociation")
92169689SkanDEFTIMEVAR (TV_TREE_PRE		     , "tree PRE")
93169689SkanDEFTIMEVAR (TV_TREE_REDPHI	     , "tree redundant PHIs")
94169689SkanDEFTIMEVAR (TV_TREE_FRE		     , "tree FRE")
95169689SkanDEFTIMEVAR (TV_TREE_SINK             , "tree code sinking")
96169689SkanDEFTIMEVAR (TV_TREE_PHIOPT	     , "tree linearize phis")
97169689SkanDEFTIMEVAR (TV_TREE_FORWPROP	     , "tree forward propagate")
98169689SkanDEFTIMEVAR (TV_TREE_DCE		     , "tree conservative DCE")
99169689SkanDEFTIMEVAR (TV_TREE_CD_DCE	     , "tree aggressive DCE")
100169689SkanDEFTIMEVAR (TV_TREE_DSE		     , "tree DSE")
101169689SkanDEFTIMEVAR (TV_TREE_MERGE_PHI	     , "PHI merge")
102169689SkanDEFTIMEVAR (TV_TREE_LOOP	     , "tree loop optimization")
103169689SkanDEFTIMEVAR (TV_TREE_LOOP_BOUNDS	     , "tree loop bounds")
104169689SkanDEFTIMEVAR (TV_LIM                   , "loop invariant motion")
105169689SkanDEFTIMEVAR (TV_TREE_LOOP_IVCANON     , "tree canonical iv")
106169689SkanDEFTIMEVAR (TV_SCEV_CONST            , "scev constant prop")
107169689SkanDEFTIMEVAR (TV_TREE_LOOP_UNSWITCH    , "tree loop unswitching")
108169689SkanDEFTIMEVAR (TV_COMPLETE_UNROLL       , "complete unrolling")
109169689SkanDEFTIMEVAR (TV_TREE_VECTORIZATION    , "tree vectorization")
110169689SkanDEFTIMEVAR (TV_TREE_LINEAR_TRANSFORM , "tree loop linear")
111169689SkanDEFTIMEVAR (TV_TREE_PREFETCH	     , "tree prefetching")
112169689SkanDEFTIMEVAR (TV_TREE_LOOP_IVOPTS	     , "tree iv optimization")
113169689SkanDEFTIMEVAR (TV_TREE_LOOP_INIT	     , "tree loop init")
114169689SkanDEFTIMEVAR (TV_TREE_LOOP_FINI	     , "tree loop fini")
115169689SkanDEFTIMEVAR (TV_TREE_CH		     , "tree copy headers")
116169689SkanDEFTIMEVAR (TV_TREE_SSA_UNCPROP	     , "tree SSA uncprop")
117169689SkanDEFTIMEVAR (TV_TREE_SSA_TO_NORMAL    , "tree SSA to normal")
118169689SkanDEFTIMEVAR (TV_TREE_NRV		     , "tree NRV optimization")
119169689SkanDEFTIMEVAR (TV_TREE_COPY_RENAME	     , "tree rename SSA copies")
120169689SkanDEFTIMEVAR (TV_TREE_SSA_VERIFY       , "tree SSA verifier")
121169689SkanDEFTIMEVAR (TV_TREE_STMT_VERIFY      , "tree STMT verifier")
122169689SkanDEFTIMEVAR (TV_CGRAPH_VERIFY         , "callgraph verifier")
123169689SkanDEFTIMEVAR (TV_DOM_FRONTIERS         , "dominance frontiers")
124169689SkanDEFTIMEVAR (TV_DOMINANCE             , "dominance computation")
125169689SkanDEFTIMEVAR (TV_CONTROL_DEPENDENCES   , "control dependences")
126117395SkanDEFTIMEVAR (TV_OVERLOAD              , "overload resolution")
127117395SkanDEFTIMEVAR (TV_TEMPLATE_INSTANTIATION, "template instantiation")
12890075SobrienDEFTIMEVAR (TV_EXPAND		     , "expand")
12990075SobrienDEFTIMEVAR (TV_VARCONST              , "varconst")
13090075SobrienDEFTIMEVAR (TV_JUMP                  , "jump")
13190075SobrienDEFTIMEVAR (TV_CSE                   , "CSE")
132169689SkanDEFTIMEVAR (TV_LOOP                  , "loop analysis")
13390075SobrienDEFTIMEVAR (TV_GCSE                  , "global CSE")
134169689SkanDEFTIMEVAR (TV_CPROP1                , "CPROP 1")
135169689SkanDEFTIMEVAR (TV_PRE                   , "PRE")
136169689SkanDEFTIMEVAR (TV_HOIST                 , "code hoisting")
137169689SkanDEFTIMEVAR (TV_CPROP2                , "CPROP 2")
138169689SkanDEFTIMEVAR (TV_LSM                   , "LSM")
139132718SkanDEFTIMEVAR (TV_BYPASS                , "bypass jumps")
140117395SkanDEFTIMEVAR (TV_TRACER                , "tracer")
141132718SkanDEFTIMEVAR (TV_WEB                   , "web")
14290075SobrienDEFTIMEVAR (TV_CSE2                  , "CSE 2")
14390075SobrienDEFTIMEVAR (TV_BRANCH_PROB           , "branch prediction")
144132718SkanDEFTIMEVAR (TV_VPT                   , "value profile opts")
14590075SobrienDEFTIMEVAR (TV_FLOW                  , "flow analysis")
14690075SobrienDEFTIMEVAR (TV_COMBINE               , "combiner")
14790075SobrienDEFTIMEVAR (TV_IFCVT		     , "if-conversion")
148169689SkanDEFTIMEVAR (TV_SEE                   , "see")
14990075SobrienDEFTIMEVAR (TV_REGMOVE               , "regmove")
15090075SobrienDEFTIMEVAR (TV_MODE_SWITCH           , "mode switching")
151169689SkanDEFTIMEVAR (TV_SMS		     , "sms modulo scheduling")
15290075SobrienDEFTIMEVAR (TV_SCHED                 , "scheduling")
15390075SobrienDEFTIMEVAR (TV_LOCAL_ALLOC           , "local alloc")
15490075SobrienDEFTIMEVAR (TV_GLOBAL_ALLOC          , "global alloc")
15590075SobrienDEFTIMEVAR (TV_RELOAD_CSE_REGS       , "reload CSE regs")
156169689SkanDEFTIMEVAR (TV_SEQABSTR              , "sequence abstraction")
157169689SkanDEFTIMEVAR (TV_GCSE_AFTER_RELOAD      , "load CSE after reload")
15890075SobrienDEFTIMEVAR (TV_FLOW2                 , "flow 2")
15990075SobrienDEFTIMEVAR (TV_IFCVT2		     , "if-conversion 2")
16090075SobrienDEFTIMEVAR (TV_PEEPHOLE2             , "peephole 2")
16190075SobrienDEFTIMEVAR (TV_RENAME_REGISTERS      , "rename registers")
16290075SobrienDEFTIMEVAR (TV_SCHED2                , "scheduling 2")
16390075SobrienDEFTIMEVAR (TV_MACH_DEP              , "machine dep reorg")
16490075SobrienDEFTIMEVAR (TV_DBR_SCHED             , "delay branch sched")
16590075SobrienDEFTIMEVAR (TV_REORDER_BLOCKS        , "reorder blocks")
16690075SobrienDEFTIMEVAR (TV_SHORTEN_BRANCH        , "shorten branches")
16790075SobrienDEFTIMEVAR (TV_REG_STACK             , "reg stack")
16890075SobrienDEFTIMEVAR (TV_FINAL                 , "final")
16990075SobrienDEFTIMEVAR (TV_SYMOUT                , "symout")
170169689SkanDEFTIMEVAR (TV_VAR_TRACKING          , "variable tracking")
17190075Sobrien
17290075Sobrien/* Everything else in rest_of_compilation not included above.  */
17390075SobrienDEFTIMEVAR (TV_REST_OF_COMPILATION   , "rest of compilation")
174