http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45422
--- Comment #31 from davidxl <xinliangli at gmail dot com> 2011-01-21 20:08:11 UTC --- Comparing this timing with 4.6 results (164s), looks like many other passes become slower other than ivopt (e.g IRA increases from 3.5s to 11s etc -- ivopt only account for a small part of the 110s increase. David (In reply to comment #18) > FYI, these are the 4.5 branch timings: > > Execution times (seconds) > garbage collection : 0.47 ( 1%) usr 0.00 ( 0%) sys 0.47 ( 1%) wall > > 0 kB ( 0%) ggc > callgraph construction: 0.05 ( 0%) usr 0.01 ( 1%) sys 0.09 ( 0%) wall > > 5996 kB ( 1%) ggc > callgraph optimization: 0.21 ( 0%) usr 0.02 ( 1%) sys 0.26 ( 0%) wall > > 606 kB ( 0%) ggc > ipa cp : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall > > 1381 kB ( 0%) ggc > ipa reference : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall > > 0 kB ( 0%) ggc > ipa pure const : 0.06 ( 0%) usr 0.01 ( 1%) sys 0.09 ( 0%) wall > > 0 kB ( 0%) ggc > cfg cleanup : 0.39 ( 1%) usr 0.00 ( 0%) sys 0.51 ( 1%) wall > > 2459 kB ( 0%) ggc > trivially dead code : 0.34 ( 1%) usr 0.00 ( 0%) sys 0.30 ( 1%) wall > > 0 kB ( 0%) ggc > df multiple defs : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.13 ( 0%) wall > > 0 kB ( 0%) ggc > df reaching defs : 0.33 ( 1%) usr 0.00 ( 0%) sys 0.27 ( 1%) wall > > 0 kB ( 0%) ggc > df live regs : 2.08 ( 4%) usr 0.01 ( 1%) sys 2.19 ( 4%) wall > > 0 kB ( 0%) ggc > df live&initialized regs: 0.98 ( 2%) usr 0.00 ( 0%) sys 0.92 ( 2%) > wall > 0 kB ( 0%) ggc > df use-def / def-use chains: 0.24 ( 0%) usr 0.00 ( 0%) sys 0.19 ( 0%) > wall 0 kB ( 0%) ggc > df reg dead/unused notes: 0.93 ( 2%) usr 0.00 ( 0%) sys 1.04 ( 2%) > wall > 5756 kB ( 1%) ggc > register information : 0.51 ( 1%) usr 0.01 ( 1%) sys 0.39 ( 1%) wall > > 0 kB ( 0%) ggc > alias analysis : 0.78 ( 1%) usr 0.01 ( 1%) sys 0.91 ( 2%) wall > 22384 kB ( 3%) ggc > alias stmt walking : 0.50 ( 1%) usr 0.03 ( 2%) sys 0.38 ( 1%) wall > > 5563 kB ( 1%) ggc > register scan : 0.13 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall > > 0 kB ( 0%) ggc > rebuild jump labels : 0.19 ( 0%) usr 0.00 ( 0%) sys 0.19 ( 0%) wall > > 0 kB ( 0%) ggc > parser : 0.82 ( 2%) usr 0.13 ( 9%) sys 0.94 ( 2%) wall > 55603 kB ( 6%) ggc > inline heuristics : 0.20 ( 0%) usr 0.01 ( 1%) sys 0.16 ( 0%) wall > > 0 kB ( 0%) ggc > tree gimplify : 0.38 ( 1%) usr 0.03 ( 2%) sys 0.40 ( 1%) wall > 46588 kB ( 5%) ggc > tree eh : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 0 kB ( 0%) ggc > tree CFG construction : 0.04 ( 0%) usr 0.02 ( 1%) sys 0.05 ( 0%) wall > 11964 kB ( 1%) ggc > tree CFG cleanup : 0.47 ( 1%) usr 0.00 ( 0%) sys 0.79 ( 1%) wall > > 1829 kB ( 0%) ggc > tree VRP : 1.46 ( 3%) usr 0.05 ( 4%) sys 1.27 ( 2%) wall > 56376 kB ( 6%) ggc > tree copy propagation : 0.09 ( 0%) usr 0.02 ( 1%) sys 0.22 ( 0%) wall > > 746 kB ( 0%) ggc > tree find ref. vars : 0.09 ( 0%) usr 0.01 ( 1%) sys 0.07 ( 0%) wall > > 3806 kB ( 0%) ggc > tree PTA : 0.30 ( 1%) usr 0.00 ( 0%) sys 0.33 ( 1%) wall > > 3836 kB ( 0%) ggc > tree PHI insertion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall > > 3194 kB ( 0%) ggc > tree SSA rewrite : 0.24 ( 0%) usr 0.01 ( 1%) sys 0.29 ( 1%) wall > 13860 kB ( 2%) ggc > tree SSA other : 0.13 ( 0%) usr 0.02 ( 1%) sys 0.11 ( 0%) wall > > 418 kB ( 0%) ggc > tree SSA incremental : 0.89 ( 2%) usr 0.06 ( 4%) sys 0.97 ( 2%) wall > > 6811 kB ( 1%) ggc > tree operand scan : 0.34 ( 1%) usr 0.23 (17%) sys 0.59 ( 1%) wall > 44776 kB ( 5%) ggc > dominator optimization: 0.29 ( 1%) usr 0.01 ( 1%) sys 0.35 ( 1%) wall > > 5152 kB ( 1%) ggc > tree CCP : 0.51 ( 1%) usr 0.02 ( 1%) sys 0.43 ( 1%) wall > > 4620 kB ( 1%) ggc > tree PHI const/copy prop: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) > wall > 106 kB ( 0%) ggc > tree split crit edges : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall > > 2019 kB ( 0%) ggc > tree reassociation : 0.12 ( 0%) usr 0.01 ( 1%) sys 0.12 ( 0%) wall > > 2946 kB ( 0%) ggc > tree PRE : 0.92 ( 2%) usr 0.00 ( 0%) sys 0.95 ( 2%) wall > > 7315 kB ( 1%) ggc > tree FRE : 0.45 ( 1%) usr 0.04 ( 3%) sys 0.35 ( 1%) wall > > 5518 kB ( 1%) ggc > tree code sinking : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall > > 1400 kB ( 0%) ggc > tree linearize phis : 0.02 ( 0%) usr 0.01 ( 1%) sys 0.01 ( 0%) wall > > 0 kB ( 0%) ggc > tree forward propagate: 0.18 ( 0%) usr 0.02 ( 1%) sys 0.16 ( 0%) wall > 10006 kB ( 1%) ggc > tree conservative DCE : 0.05 ( 0%) usr 0.01 ( 1%) sys 0.13 ( 0%) wall > > 576 kB ( 0%) ggc > tree aggressive DCE : 0.28 ( 1%) usr 0.01 ( 1%) sys 0.37 ( 1%) wall > > 8853 kB ( 1%) ggc > tree buildin call DCE : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall > > 0 kB ( 0%) ggc > tree DSE : 0.20 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall > > 132 kB ( 0%) ggc > PHI merge : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall > > 37 kB ( 0%) ggc > tree loop bounds : 0.22 ( 0%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall > > 8266 kB ( 1%) ggc > tree loop invariant motion: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) > wall 67 kB ( 0%) ggc > tree canonical iv : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall > > 4779 kB ( 1%) ggc > scev constant prop : 0.08 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall > > 2345 kB ( 0%) ggc > tree loop unswitching : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 573 kB ( 0%) ggc > complete unrolling : 1.05 ( 2%) usr 0.11 ( 8%) sys 1.39 ( 3%) wall > 98553 kB (11%) ggc > tree vectorization : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall > > 883 kB ( 0%) ggc > tree slp vectorization: 0.61 ( 1%) usr 0.00 ( 0%) sys 0.60 ( 1%) wall > 53236 kB ( 6%) ggc > tree iv optimization : 5.80 (11%) usr 0.06 ( 4%) sys 5.94 (11%) wall > 95356 kB (11%) ggc > predictive commoning : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall > > 1054 kB ( 0%) ggc > tree loop init : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 1339 kB ( 0%) ggc > tree copy headers : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall > > 1613 kB ( 0%) ggc > tree SSA uncprop : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall > > 0 kB ( 0%) ggc > tree rename SSA copies: 0.06 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall > > 0 kB ( 0%) ggc > dominance frontiers : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall > > 0 kB ( 0%) ggc > dominance computation : 0.23 ( 0%) usr 0.00 ( 0%) sys 0.26 ( 0%) wall > > 0 kB ( 0%) ggc > expand : 3.24 ( 6%) usr 0.07 ( 5%) sys 3.34 ( 6%) wall > 69633 kB ( 8%) ggc > lower subreg : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall > > 0 kB ( 0%) ggc > forward prop : 0.48 ( 1%) usr 0.01 ( 1%) sys 0.48 ( 1%) wall > > 9984 kB ( 1%) ggc > CSE : 0.73 ( 1%) usr 0.00 ( 0%) sys 0.92 ( 2%) wall > > 248 kB ( 0%) ggc > dead code elimination : 0.24 ( 0%) usr 0.00 ( 0%) sys 0.28 ( 1%) wall > > 0 kB ( 0%) ggc > dead store elim1 : 0.33 ( 1%) usr 0.01 ( 1%) sys 0.32 ( 1%) wall > > 5987 kB ( 1%) ggc > dead store elim2 : 0.44 ( 1%) usr 0.02 ( 1%) sys 0.39 ( 1%) wall > > 7831 kB ( 1%) ggc > loop analysis : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 718 kB ( 0%) ggc > loop invariant motion : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall > > 305 kB ( 0%) ggc > loop unswitching : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 0 kB ( 0%) ggc > loop unrolling : 0.65 ( 1%) usr 0.00 ( 0%) sys 0.62 ( 1%) wall > 32780 kB ( 4%) ggc > CPROP : 0.70 ( 1%) usr 0.00 ( 0%) sys 0.60 ( 1%) wall > > 7825 kB ( 1%) ggc > PRE : 0.32 ( 1%) usr 0.00 ( 0%) sys 0.33 ( 1%) wall > > 719 kB ( 0%) ggc > web : 0.13 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall > > 594 kB ( 0%) ggc > CSE 2 : 0.75 ( 1%) usr 0.01 ( 1%) sys 0.60 ( 1%) wall > > 470 kB ( 0%) ggc > branch prediction : 0.19 ( 0%) usr 0.01 ( 1%) sys 0.14 ( 0%) wall > > 7344 kB ( 1%) ggc > combiner : 1.19 ( 2%) usr 0.01 ( 1%) sys 1.33 ( 2%) wall > 19980 kB ( 2%) ggc > if-conversion : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall > > 746 kB ( 0%) ggc > regmove : 0.37 ( 1%) usr 0.01 ( 1%) sys 0.33 ( 1%) wall > > 0 kB ( 0%) ggc > integrated RA : 3.51 ( 7%) usr 0.01 ( 1%) sys 3.74 ( 7%) wall > 12746 kB ( 1%) ggc > reload : 2.16 ( 4%) usr 0.02 ( 1%) sys 2.01 ( 4%) wall > > 7755 kB ( 1%) ggc > reload CSE regs : 1.38 ( 3%) usr 0.00 ( 0%) sys 1.26 ( 2%) wall > 12331 kB ( 1%) ggc > load CSE after reload : 0.18 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall > > 162 kB ( 0%) ggc > thread pro- & epilogue: 0.11 ( 0%) usr 0.00 ( 0%) sys 0.12 ( 0%) wall > > 4370 kB ( 0%) ggc > if-conversion 2 : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall > > 357 kB ( 0%) ggc > combine stack adjustments: 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) > wall > 0 kB ( 0%) ggc > peephole 2 : 0.12 ( 0%) usr 0.00 ( 0%) sys 0.16 ( 0%) wall > > 1899 kB ( 0%) ggc > rename registers : 0.46 ( 1%) usr 0.00 ( 0%) sys 0.55 ( 1%) wall > > 2237 kB ( 0%) ggc > hard reg cprop : 0.37 ( 1%) usr 0.00 ( 0%) sys 0.48 ( 1%) wall > > 13 kB ( 0%) ggc > scheduling 2 : 3.30 ( 6%) usr 0.04 ( 3%) sys 3.10 ( 6%) wall > > 1216 kB ( 0%) ggc > machine dep reorg : 0.38 ( 1%) usr 0.00 ( 0%) sys 0.36 ( 1%) wall > > 11 kB ( 0%) ggc > reorder blocks : 0.15 ( 0%) usr 0.00 ( 0%) sys 0.13 ( 0%) wall > > 1283 kB ( 0%) ggc > final : 0.93 ( 2%) usr 0.07 ( 5%) sys 0.84 ( 2%) wall > > 6610 kB ( 1%) ggc > symout : 0.30 ( 1%) usr 0.03 ( 2%) sys 0.34 ( 1%) wall > 27006 kB ( 3%) ggc > variable tracking : 3.86 ( 7%) usr 0.03 ( 2%) sys 3.99 ( 7%) wall > 39804 kB ( 4%) ggc > plugin execution : 0.00 ( 0%) usr 0.01 ( 1%) sys 0.05 ( 0%) wall > > 0 kB ( 0%) ggc > rest of compilation : 0.00 ( 0%) usr 0.01 ( 1%) sys 0.00 ( 0%) wall > > 0 kB ( 0%) ggc > TOTAL : 52.50 1.37 53.88 > 893901 kB