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, 2006, 2007, 2008,
5 Free Software Foundation
, Inc.
6 Contributed by Alex Samuel
<samuel@codesourcery.com
>
8 This file is part of GCC.
10 GCC is free software
; you can redistribute it and
/or modify
11 it under the terms of the GNU General Public License as published by
12 the Free Software Foundation
; either version
3, or (at your option
)
15 GCC is distributed in the hope that it will be useful
,
16 but WITHOUT ANY WARRANTY
; without even the implied warranty of
17 MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
20 You should have received a copy of the GNU General Public License
21 along with GCC
; see the file COPYING3. If not see
22 <http
://www.gnu.org
/licenses
/>.
*/
24 /* This file contains timing variable definitions
, used by timevar.h
31 where ID is the enumeral value used to identify the timing
32 variable
, and NAME is a character string describing its purpose.
*/
34 /* The total execution time.
*/
35 DEFTIMEVAR (TV_TOTAL
, "total time")
37 /* Time spent garbage
-collecting.
*/
38 DEFTIMEVAR (TV_GC
, "garbage collection")
40 /* Time spent generating dump files.
*/
41 DEFTIMEVAR (TV_DUMP
, "dump files")
43 /* Time spent saving
/restoring PCH state.
*/
44 DEFTIMEVAR (TV_PCH_SAVE
, "PCH main state save")
45 DEFTIMEVAR (TV_PCH_CPP_SAVE
, "PCH preprocessor state save")
46 DEFTIMEVAR (TV_PCH_PTR_REALLOC
, "PCH pointer reallocation")
47 DEFTIMEVAR (TV_PCH_PTR_SORT
, "PCH pointer sort")
48 DEFTIMEVAR (TV_PCH_RESTORE
, "PCH main state restore")
49 DEFTIMEVAR (TV_PCH_CPP_RESTORE
, "PCH preprocessor state restore")
51 DEFTIMEVAR (TV_CGRAPH
, "callgraph construction")
52 DEFTIMEVAR (TV_CGRAPHOPT
, "callgraph optimization")
53 DEFTIMEVAR (TV_VARPOOL
, "varpool construction")
54 DEFTIMEVAR (TV_IPA_CONSTANT_PROP
, "ipa cp")
55 DEFTIMEVAR (TV_IPA_FNSPLIT
, "ipa function splitting")
56 DEFTIMEVAR (TV_IPA_OPT
, "ipa various optimizations")
57 DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN
, "ipa lto gimple in")
58 DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT
, "ipa lto gimple out")
59 DEFTIMEVAR (TV_IPA_LTO_DECL_IN
, "ipa lto decl in")
60 DEFTIMEVAR (TV_IPA_LTO_DECL_OUT
, "ipa lto decl out")
61 DEFTIMEVAR (TV_IPA_LTO_DECL_INIT_IO
, "ipa lto decl init I/O")
62 DEFTIMEVAR (TV_IPA_LTO_CGRAPH_IO
, "ipa lto cgraph I/O")
63 DEFTIMEVAR (TV_IPA_LTO_DECL_MERGE
, "ipa lto decl merge")
64 DEFTIMEVAR (TV_IPA_LTO_CGRAPH_MERGE
, "ipa lto cgraph merge")
65 DEFTIMEVAR (TV_LTO
, "lto")
66 DEFTIMEVAR (TV_WHOPR_WPA
, "whopr wpa")
67 DEFTIMEVAR (TV_WHOPR_WPA_IO
, "whopr wpa I/O")
68 DEFTIMEVAR (TV_WHOPR_LTRANS
, "whopr ltrans")
69 DEFTIMEVAR (TV_WHOPR_WPA_LTRANS_EXEC
, "whopr wpa->ltrans")
70 DEFTIMEVAR (TV_IPA_REFERENCE
, "ipa reference")
71 DEFTIMEVAR (TV_IPA_PROFILE
, "ipa profile")
72 DEFTIMEVAR (TV_IPA_PURE_CONST
, "ipa pure const")
73 DEFTIMEVAR (TV_IPA_PTA
, "ipa points-to")
74 DEFTIMEVAR (TV_IPA_SRA
, "ipa SRA")
75 DEFTIMEVAR (TV_IPA_FREE_LANG_DATA
, "ipa free lang data")
76 /* Time spent by constructing CFG.
*/
77 DEFTIMEVAR (TV_CFG
, "cfg construction")
78 /* Time spent by cleaning up CFG.
*/
79 DEFTIMEVAR (TV_CLEANUP_CFG
, "cfg cleanup")
80 DEFTIMEVAR (TV_CFG_VERIFY
, "CFG verifier")
81 DEFTIMEVAR (TV_DELETE_TRIVIALLY_DEAD
, "trivially dead code")
82 /* Time spent by life analysis.
*/
83 DEFTIMEVAR (TV_LIFE
, "life analysis")
84 DEFTIMEVAR (TV_LIFE_UPDATE
, "life info update")
86 /* Time spent in dataflow problems.
*/
87 DEFTIMEVAR (TV_DF_SCAN
, "df scan insns")
88 DEFTIMEVAR (TV_DF_MD
, "df multiple defs")
89 DEFTIMEVAR (TV_DF_RD
, "df reaching defs")
90 DEFTIMEVAR (TV_DF_LR
, "df live regs")
91 DEFTIMEVAR (TV_DF_LIVE
, "df live&initialized regs")
92 DEFTIMEVAR (TV_DF_UREC
, "df uninitialized regs 2")
93 DEFTIMEVAR (TV_DF_CHAIN
, "df use-def / def-use chains")
94 DEFTIMEVAR (TV_DF_WORD_LR
, "df live reg subwords")
95 DEFTIMEVAR (TV_DF_NOTE
, "df reg dead/unused notes")
96 DEFTIMEVAR (TV_REG_STATS
, "register information")
98 DEFTIMEVAR (TV_ALIAS_ANALYSIS
, "alias analysis")
99 DEFTIMEVAR (TV_ALIAS_STMT_WALK
, "alias stmt walking")
100 DEFTIMEVAR (TV_REG_SCAN
, "register scan")
101 DEFTIMEVAR (TV_REBUILD_JUMP
, "rebuild jump labels")
102 /* Timing in various stages of the compiler.
*/
103 DEFTIMEVAR (TV_CPP
, "preprocessing")
104 DEFTIMEVAR (TV_LEX
, "lexical analysis")
105 DEFTIMEVAR (TV_PARSE
, "parser")
106 DEFTIMEVAR (TV_NAME_LOOKUP
, "name lookup")
107 DEFTIMEVAR (TV_INLINE_HEURISTICS
, "inline heuristics")
108 DEFTIMEVAR (TV_INTEGRATION
, "integration")
109 DEFTIMEVAR (TV_TREE_GIMPLIFY
, "tree gimplify")
110 DEFTIMEVAR (TV_TREE_EH
, "tree eh")
111 DEFTIMEVAR (TV_TREE_CFG
, "tree CFG construction")
112 DEFTIMEVAR (TV_TREE_CLEANUP_CFG
, "tree CFG cleanup")
113 DEFTIMEVAR (TV_TREE_VRP
, "tree VRP")
114 DEFTIMEVAR (TV_TREE_COPY_PROP
, "tree copy propagation")
115 DEFTIMEVAR (TV_FIND_REFERENCED_VARS
, "tree find ref. vars")
116 DEFTIMEVAR (TV_TREE_PTA
, "tree PTA")
117 DEFTIMEVAR (TV_TREE_INSERT_PHI_NODES
, "tree PHI insertion")
118 DEFTIMEVAR (TV_TREE_SSA_REWRITE_BLOCKS
, "tree SSA rewrite")
119 DEFTIMEVAR (TV_TREE_SSA_OTHER
, "tree SSA other")
120 DEFTIMEVAR (TV_TREE_SSA_INCREMENTAL
, "tree SSA incremental")
121 DEFTIMEVAR (TV_TREE_OPS
, "tree operand scan")
122 DEFTIMEVAR (TV_TREE_SSA_DOMINATOR_OPTS
, "dominator optimization")
123 DEFTIMEVAR (TV_TREE_SRA
, "tree SRA")
124 DEFTIMEVAR (TV_TREE_CCP
, "tree CCP")
125 DEFTIMEVAR (TV_TREE_PHI_CPROP
, "tree PHI const/copy prop")
126 DEFTIMEVAR (TV_TREE_SPLIT_EDGES
, "tree split crit edges")
127 DEFTIMEVAR (TV_TREE_REASSOC
, "tree reassociation")
128 DEFTIMEVAR (TV_TREE_PRE
, "tree PRE")
129 DEFTIMEVAR (TV_TREE_FRE
, "tree FRE")
130 DEFTIMEVAR (TV_TREE_SINK
, "tree code sinking")
131 DEFTIMEVAR (TV_TREE_PHIOPT
, "tree linearize phis")
132 DEFTIMEVAR (TV_TREE_FORWPROP
, "tree forward propagate")
133 DEFTIMEVAR (TV_TREE_PHIPROP
, "tree phiprop")
134 DEFTIMEVAR (TV_TREE_DCE
, "tree conservative DCE")
135 DEFTIMEVAR (TV_TREE_CD_DCE
, "tree aggressive DCE")
136 DEFTIMEVAR (TV_TREE_CALL_CDCE
, "tree buildin call DCE")
137 DEFTIMEVAR (TV_TREE_DSE
, "tree DSE")
138 DEFTIMEVAR (TV_TREE_MERGE_PHI
, "PHI merge")
139 DEFTIMEVAR (TV_TREE_LOOP
, "tree loop optimization")
140 DEFTIMEVAR (TV_TREE_LOOP_BOUNDS
, "tree loop bounds")
141 DEFTIMEVAR (TV_LIM
, "tree loop invariant motion")
142 DEFTIMEVAR (TV_TREE_LOOP_IVCANON
, "tree canonical iv")
143 DEFTIMEVAR (TV_SCEV_CONST
, "scev constant prop")
144 DEFTIMEVAR (TV_TREE_LOOP_UNSWITCH
, "tree loop unswitching")
145 DEFTIMEVAR (TV_COMPLETE_UNROLL
, "complete unrolling")
146 DEFTIMEVAR (TV_TREE_PARALLELIZE_LOOPS
, "tree parallelize loops")
147 DEFTIMEVAR (TV_TREE_VECTORIZATION
, "tree vectorization")
148 DEFTIMEVAR (TV_TREE_SLP_VECTORIZATION
, "tree slp vectorization")
149 DEFTIMEVAR (TV_GRAPHITE
, "Graphite")
150 DEFTIMEVAR (TV_GRAPHITE_TRANSFORMS
, "Graphite loop transforms")
151 DEFTIMEVAR (TV_GRAPHITE_DATA_DEPS
, "Graphite data dep analysis")
152 DEFTIMEVAR (TV_GRAPHITE_CODE_GEN
, "Graphite code generation")
153 DEFTIMEVAR (TV_TREE_LINEAR_TRANSFORM
, "tree loop linear")
154 DEFTIMEVAR (TV_TREE_LOOP_DISTRIBUTION
, "tree loop distribution")
155 DEFTIMEVAR (TV_CHECK_DATA_DEPS
, "tree check data dependences")
156 DEFTIMEVAR (TV_TREE_PREFETCH
, "tree prefetching")
157 DEFTIMEVAR (TV_TREE_LOOP_IVOPTS
, "tree iv optimization")
158 DEFTIMEVAR (TV_PREDCOM
, "predictive commoning")
159 DEFTIMEVAR (TV_TREE_LOOP_INIT
, "tree loop init")
160 DEFTIMEVAR (TV_TREE_LOOP_FINI
, "tree loop fini")
161 DEFTIMEVAR (TV_TREE_CH
, "tree copy headers")
162 DEFTIMEVAR (TV_TREE_SSA_UNCPROP
, "tree SSA uncprop")
163 DEFTIMEVAR (TV_TREE_SSA_TO_NORMAL
, "tree SSA to normal")
164 DEFTIMEVAR (TV_TREE_NRV
, "tree NRV optimization")
165 DEFTIMEVAR (TV_TREE_COPY_RENAME
, "tree rename SSA copies")
166 DEFTIMEVAR (TV_TREE_SSA_VERIFY
, "tree SSA verifier")
167 DEFTIMEVAR (TV_TREE_STMT_VERIFY
, "tree STMT verifier")
168 DEFTIMEVAR (TV_TREE_SWITCH_CONVERSION
, "tree switch initialization conversion")
169 DEFTIMEVAR (TV_CGRAPH_VERIFY
, "callgraph verifier")
170 DEFTIMEVAR (TV_DOM_FRONTIERS
, "dominance frontiers")
171 DEFTIMEVAR (TV_DOMINANCE
, "dominance computation")
172 DEFTIMEVAR (TV_CONTROL_DEPENDENCES
, "control dependences")
173 DEFTIMEVAR (TV_OVERLOAD
, "overload resolution")
174 DEFTIMEVAR (TV_TEMPLATE_INSTANTIATION
, "template instantiation")
175 DEFTIMEVAR (TV_OUT_OF_SSA
, "out of ssa")
176 DEFTIMEVAR (TV_VAR_EXPAND
, "expand vars")
177 DEFTIMEVAR (TV_EXPAND
, "expand")
178 DEFTIMEVAR (TV_POST_EXPAND
, "post expand cleanups")
179 DEFTIMEVAR (TV_VARCONST
, "varconst")
180 DEFTIMEVAR (TV_LOWER_SUBREG
, "lower subreg")
181 DEFTIMEVAR (TV_JUMP
, "jump")
182 DEFTIMEVAR (TV_FWPROP
, "forward prop")
183 DEFTIMEVAR (TV_CSE
, "CSE")
184 DEFTIMEVAR (TV_DCE
, "dead code elimination")
185 DEFTIMEVAR (TV_DSE1
, "dead store elim1")
186 DEFTIMEVAR (TV_DSE2
, "dead store elim2")
187 DEFTIMEVAR (TV_LOOP
, "loop analysis")
188 DEFTIMEVAR (TV_LOOP_MOVE_INVARIANTS
, "loop invariant motion")
189 DEFTIMEVAR (TV_LOOP_UNSWITCH
, "loop unswitching")
190 DEFTIMEVAR (TV_LOOP_UNROLL
, "loop unrolling")
191 DEFTIMEVAR (TV_LOOP_DOLOOP
, "loop doloop")
192 DEFTIMEVAR (TV_CPROP
, "CPROP")
193 DEFTIMEVAR (TV_PRE
, "PRE")
194 DEFTIMEVAR (TV_HOIST
, "code hoisting")
195 DEFTIMEVAR (TV_LSM
, "LSM")
196 DEFTIMEVAR (TV_TRACER
, "tracer")
197 DEFTIMEVAR (TV_WEB
, "web")
198 DEFTIMEVAR (TV_AUTO_INC_DEC
, "auto inc dec")
199 DEFTIMEVAR (TV_CSE2
, "CSE 2")
200 DEFTIMEVAR (TV_BRANCH_PROB
, "branch prediction")
201 DEFTIMEVAR (TV_VPT
, "value profile opts")
202 DEFTIMEVAR (TV_COMBINE
, "combiner")
203 DEFTIMEVAR (TV_IFCVT
, "if-conversion")
204 DEFTIMEVAR (TV_REGMOVE
, "regmove")
205 DEFTIMEVAR (TV_MODE_SWITCH
, "mode switching")
206 DEFTIMEVAR (TV_SMS
, "sms modulo scheduling")
207 DEFTIMEVAR (TV_SCHED
, "scheduling")
208 DEFTIMEVAR (TV_LOCAL_ALLOC
, "local alloc")
209 DEFTIMEVAR (TV_GLOBAL_ALLOC
, "global alloc")
210 DEFTIMEVAR (TV_IRA
, "integrated RA")
211 DEFTIMEVAR (TV_RELOAD
, "reload")
212 DEFTIMEVAR (TV_RELOAD_CSE_REGS
, "reload CSE regs")
213 DEFTIMEVAR (TV_SEQABSTR
, "sequence abstraction")
214 DEFTIMEVAR (TV_GCSE_AFTER_RELOAD
, "load CSE after reload")
215 DEFTIMEVAR (TV_ZEE
, "zee")
216 DEFTIMEVAR (TV_THREAD_PROLOGUE_AND_EPILOGUE
, "thread pro- & epilogue")
217 DEFTIMEVAR (TV_IFCVT2
, "if-conversion 2")
218 DEFTIMEVAR (TV_COMBINE_STACK_ADJUST
, "combine stack adjustments")
219 DEFTIMEVAR (TV_PEEPHOLE2
, "peephole 2")
220 DEFTIMEVAR (TV_RENAME_REGISTERS
, "rename registers")
221 DEFTIMEVAR (TV_CPROP_REGISTERS
, "hard reg cprop")
222 DEFTIMEVAR (TV_SCHED2
, "scheduling 2")
223 DEFTIMEVAR (TV_MACH_DEP
, "machine dep reorg")
224 DEFTIMEVAR (TV_DBR_SCHED
, "delay branch sched")
225 DEFTIMEVAR (TV_REORDER_BLOCKS
, "reorder blocks")
226 DEFTIMEVAR (TV_SHORTEN_BRANCH
, "shorten branches")
227 DEFTIMEVAR (TV_REG_STACK
, "reg stack")
228 DEFTIMEVAR (TV_FINAL
, "final")
229 DEFTIMEVAR (TV_VAROUT
, "variable output")
230 DEFTIMEVAR (TV_SYMOUT
, "symout")
231 DEFTIMEVAR (TV_VAR_TRACKING
, "variable tracking")
232 DEFTIMEVAR (TV_VAR_TRACKING_DATAFLOW
, "var-tracking dataflow")
233 DEFTIMEVAR (TV_VAR_TRACKING_EMIT
, "var-tracking emit")
234 DEFTIMEVAR (TV_TREE_IFCOMBINE
, "tree if-combine")
235 DEFTIMEVAR (TV_TREE_UNINIT
, "uninit var analysis")
236 DEFTIMEVAR (TV_PLUGIN_INIT
, "plugin initialization")
237 DEFTIMEVAR (TV_PLUGIN_RUN
, "plugin execution")
239 /* Everything else in rest_of_compilation not included above.
*/
240 DEFTIMEVAR (TV_EARLY_LOCAL
, "early local passes")
241 DEFTIMEVAR (TV_OPTIMIZE
, "unaccounted optimizations")
242 DEFTIMEVAR (TV_REST_OF_COMPILATION
, "rest of compilation")
243 DEFTIMEVAR (TV_POSTRELOAD
, "unaccounted post reload")
244 DEFTIMEVAR (TV_REMOVE_UNUSED
, "remove unused locals")
245 DEFTIMEVAR (TV_ADDRESS_TAKEN
, "address taken")
246 DEFTIMEVAR (TV_TODO
, "unaccounted todo")
247 DEFTIMEVAR (TV_VERIFY_LOOP_CLOSED
, "verify loop closed")
248 DEFTIMEVAR (TV_VERIFY_RTL_SHARING
, "verify RTL sharing")
249 DEFTIMEVAR (TV_REBUILD_FREQUENCIES
, "rebuild frequencies")
250 DEFTIMEVAR (TV_REPAIR_LOOPS
, "repair loop structures")