https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116166

--- Comment #26 from Mark Wielaard <mark at gcc dot gnu.org> ---
With gcc-15-2791-g2083389a18d native build of the preprocessed insn-emit-96.cc
from attachment #1 goes from 6 hours to 5 minutes.

Time variable                                   usr           sys          wall
          GGC
 phase setup                        :   0.04 (  0%)   0.02 (  0%)   0.05 (  0%)
 2844k (  0%)
 phase parsing                      :  11.98 (  4%)  10.66 ( 47%)  22.73 (  7%)
  306M ( 47%)
 phase lang. deferred               :   0.20 (  0%)   0.01 (  0%)   0.22 (  0%)
 2970k (  0%)
 phase opt and generate             : 278.46 ( 96%)  11.75 ( 52%) 291.62 ( 93%)
  346M ( 53%)
 phase last asm                     :   0.01 (  0%)   0.01 (  0%)   0.02 (  0%)
   69k (  0%)
 phase finalize                     :   0.00 (  0%)   0.00 (  0%)   0.01 (  0%)
    0  (  0%)
 |name lookup                       :   2.16 (  1%)   1.64 (  7%)   3.94 (  1%)
 4335k (  1%)
 |overload resolution               :   2.15 (  1%)   1.33 (  6%)   3.28 (  1%)
   30M (  5%)
 garbage collection                 :   0.92 (  0%)   1.84 (  8%)   2.76 (  1%)
    0  (  0%)
 dump files                         :   0.85 (  0%)   0.18 (  1%)   1.02 (  0%)
    0  (  0%)
 callgraph construction             :   0.46 (  0%)   0.04 (  0%)   0.54 (  0%)
 4404k (  1%)
 callgraph optimization             :   0.41 (  0%)   0.06 (  0%)   0.53 (  0%)
  108k (  0%)
 callgraph functions expansion      : 261.74 ( 90%)  10.47 ( 47%) 273.55 ( 87%)
  264M ( 40%)
 callgraph ipa passes               :  15.34 (  5%)   1.17 (  5%)  16.57 (  5%)
   29M (  4%)
 ipa function summary               :   0.34 (  0%)   0.02 (  0%)   0.31 (  0%)
 1513k (  0%)
 ipa dead code removal              :   0.02 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 ipa inheritance graph              :   0.01 (  0%)   0.00 (  0%)   0.00 (  0%)
  152  (  0%)
 ipa devirtualization               :   0.01 (  0%)   0.00 (  0%)   0.00 (  0%)
    0  (  0%)
 ipa cp                             :   0.15 (  0%)   0.02 (  0%)   0.19 (  0%)
  695k (  0%)
 ipa inlining heuristics            :   0.10 (  0%)   0.10 (  0%)   0.26 (  0%)
  345k (  0%)
 ipa function splitting             :   0.21 (  0%)   0.00 (  0%)   0.14 (  0%)
   52k (  0%)
 ipa comdats                        :   0.01 (  0%)   0.00 (  0%)   0.00 (  0%)
    0  (  0%)
 ipa various optimizations          :   0.01 (  0%)   0.00 (  0%)   0.01 (  0%)
    0  (  0%)
 ipa reference                      :   0.01 (  0%)   0.00 (  0%)   0.01 (  0%)
    0  (  0%)
 ipa pure const                     :   0.15 (  0%)   0.02 (  0%)   0.15 (  0%)
    0  (  0%)
 ipa icf                            :   0.11 (  0%)   0.00 (  0%)   0.11 (  0%)
    0  (  0%)
 ipa SRA                            :   0.14 (  0%)   0.00 (  0%)   0.15 (  0%)
  137k (  0%)
 ipa free lang data                 :   0.01 (  0%)   0.00 (  0%)   0.00 (  0%)
    0  (  0%)
 ipa modref                         :   0.11 (  0%)   0.00 (  0%)   0.12 (  0%)
  541k (  0%)
 cfg construction                   :   0.35 (  0%)   0.10 (  0%)   0.40 (  0%)
   11M (  2%)
 cfg cleanup                        :   3.59 (  1%)   0.10 (  0%)   3.81 (  1%)
 2215k (  0%)
 trivially dead code                :   0.55 (  0%)   0.04 (  0%)   0.53 (  0%)
    0  (  0%)
 df scan insns                      :   0.46 (  0%)   0.06 (  0%)   0.43 (  0%)
   88k (  0%)
 df reaching defs                   :   0.81 (  0%)   0.06 (  0%)   0.82 (  0%)
    0  (  0%)
 df live regs                       :   4.37 (  2%)   0.27 (  1%)   4.54 (  1%)
    0  (  0%)
 df live&initialized regs           :   2.34 (  1%)   0.08 (  0%)   2.54 (  1%)
    0  (  0%)
 df must-initialized regs           :   0.18 (  0%)   0.00 (  0%)   0.16 (  0%)
    0  (  0%)
 df use-def / def-use chains        :   0.32 (  0%)   0.02 (  0%)   0.37 (  0%)
    0  (  0%)
 df reg dead/unused notes           :   2.11 (  1%)   0.11 (  0%)   2.07 (  1%)
 2691k (  0%)
 register information               :   1.09 (  0%)   0.14 (  1%)   1.24 (  0%)
    0  (  0%)
 alias analysis                     :   1.64 (  1%)   0.10 (  0%)   1.91 (  1%)
 9836k (  1%)
 alias stmt walking                 :   0.16 (  0%)   0.05 (  0%)   0.15 (  0%)
    0  (  0%)
 register scan                      :   0.13 (  0%)   0.01 (  0%)   0.16 (  0%)
   59k (  0%)
 rebuild jump labels                :   0.33 (  0%)   0.02 (  0%)   0.24 (  0%)
    0  (  0%)
 preprocessing                      :   0.98 (  0%)   2.08 (  9%)   3.00 (  1%)
   26M (  4%)
 parser (global)                    :   3.80 (  1%)   4.47 ( 20%)   8.31 (  3%)
  175M ( 27%)
 parser struct body                 :   0.32 (  0%)   0.09 (  0%)   0.38 (  0%)
 6856k (  1%)
 parser enumerator list             :   0.22 (  0%)   0.22 (  1%)   0.46 (  0%)
 8060k (  1%)
 parser function body               :   4.28 (  1%)   2.47 ( 11%)   7.02 (  2%)
   61M (  9%)
 parser inl. func. body             :   0.78 (  0%)   0.36 (  2%)   1.23 (  0%)
   12M (  2%)
 parser inl. meth. body             :   0.23 (  0%)   0.09 (  0%)   0.33 (  0%)
 3821k (  1%)
 template instantiation             :   1.15 (  0%)   0.63 (  3%)   1.63 (  1%)
   16M (  2%)
 constant expression evaluation     :   0.37 (  0%)   0.18 (  1%)   0.45 (  0%)
  192k (  0%)
 early inlining heuristics          :   0.04 (  0%)   0.00 (  0%)   0.17 (  0%)
  950k (  0%)
 inline parameters                  :   0.68 (  0%)   0.09 (  0%)   0.73 (  0%)
 2386k (  0%)
 integration                        :   0.37 (  0%)   0.12 (  1%)   0.44 (  0%)
 4810k (  1%)
 tree gimplify                      :   0.48 (  0%)   0.06 (  0%)   0.51 (  0%)
   28M (  4%)
 tree eh                            :   0.07 (  0%)   0.01 (  0%)   0.04 (  0%)
   26k (  0%)
 tree CFG construction              :   0.21 (  0%)   0.01 (  0%)   0.28 (  0%)
   20M (  3%)
 tree CFG cleanup                   :   3.66 (  1%)   0.30 (  1%)   4.08 (  1%)
  549k (  0%)
 tree tail merge                    :   0.36 (  0%)   0.07 (  0%)   0.47 (  0%)
 5109k (  1%)
 tree VRP                           :   6.64 (  2%)   0.20 (  1%)   6.95 (  2%)
 1976k (  0%)
 tree Early VRP                     :   6.31 (  2%)   0.11 (  0%)   6.35 (  2%)
 1108k (  0%)
 tree copy propagation              :   0.30 (  0%)   0.04 (  0%)   0.46 (  0%)
    0  (  0%)
 tree PTA                           :   0.85 (  0%)   0.24 (  1%)   0.99 (  0%)
  906k (  0%)
 tree SSA other                     :   0.00 (  0%)   0.01 (  0%)   0.02 (  0%)
    0  (  0%)
 tree SSA rewrite                   :   0.17 (  0%)   0.17 (  1%)   0.31 (  0%)
 4584k (  1%)
 tree SSA incremental               :   0.13 (  0%)   0.01 (  0%)   0.16 (  0%)
  222k (  0%)
 tree operand scan                  :   0.83 (  0%)   0.23 (  1%)   0.81 (  0%)
   10M (  2%)
 dominator optimization             :  98.73 ( 34%)   0.91 (  4%)  99.99 ( 32%)
   17M (  3%)
 backwards jump threading           :  60.42 ( 21%)   0.76 (  3%)  61.86 ( 20%)
   39M (  6%)
 tree SRA                           :   0.01 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 isolate eroneous paths             :   0.08 (  0%)   0.00 (  0%)   0.04 (  0%)
    0  (  0%)
 tree CCP                           :   1.75 (  1%)   0.14 (  1%)   1.95 (  1%)
  930k (  0%)
 tree split crit edges              :   0.11 (  0%)   0.01 (  0%)   0.13 (  0%)
 4548k (  1%)
 tree reassociation                 :   0.19 (  0%)   0.02 (  0%)   0.16 (  0%)
   27k (  0%)
 tree PRE                           :   1.33 (  0%)   0.23 (  1%)   1.55 (  0%)
10068k (  1%)
 tree FRE                           :   2.47 (  1%)   0.27 (  1%)   2.88 (  1%)
 1125k (  0%)
 tree code sinking                  :   0.39 (  0%)   0.09 (  0%)   0.39 (  0%)
 9581k (  1%)
 tree linearize phis                :   0.20 (  0%)   0.02 (  0%)   0.18 (  0%)
 1090k (  0%)
 tree backward propagate            :   0.01 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 tree forward propagate             :   0.76 (  0%)   0.08 (  0%)   0.83 (  0%)
  171k (  0%)
 tree phiprop                       :   0.08 (  0%)   0.00 (  0%)   0.09 (  0%)
    0  (  0%)
 tree conservative DCE              :   0.16 (  0%)   0.02 (  0%)   0.28 (  0%)
    0  (  0%)
 tree aggressive DCE                :   0.29 (  0%)   0.04 (  0%)   0.28 (  0%)
 2094k (  0%)
 tree buildin call DCE              :   0.03 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 tree DSE                           :   0.19 (  0%)   0.02 (  0%)   0.27 (  0%)
 8272  (  0%)
 PHI merge                          :   0.05 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 tree loop optimization             :   0.00 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 tree loop invariant motion         :   0.01 (  0%)   0.01 (  0%)   0.01 (  0%)
    0  (  0%)
 complete unrolling                 :   0.00 (  0%)   0.00 (  0%)   0.01 (  0%)
    0  (  0%)
 tree slp vectorization             :   0.30 (  0%)   0.09 (  0%)   0.38 (  0%)
 3311k (  0%)
 tree copy headers                  :   0.03 (  0%)   0.00 (  0%)   0.02 (  0%)
  984k (  0%)
 tree SSA uncprop                   :   0.16 (  0%)   0.01 (  0%)   0.23 (  0%)
    0  (  0%)
 tree NRV optimization              :   0.00 (  0%)   0.00 (  0%)   0.01 (  0%)
   42k (  0%)
 tree switch conversion             :   0.04 (  0%)   0.00 (  0%)   0.08 (  0%)
  554k (  0%)
 tree switch lowering               :   0.02 (  0%)   0.00 (  0%)   0.02 (  0%)
   99k (  0%)
 gimple expand pow                  :   0.00 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 gimple widening/fma detection      :   0.01 (  0%)   0.00 (  0%)   0.08 (  0%)
   43k (  0%)
 tree strlen optimization           :   0.09 (  0%)   0.01 (  0%)   0.16 (  0%)
  984k (  0%)
 tree modref                        :   0.24 (  0%)   0.03 (  0%)   0.42 (  0%)
 1012k (  0%)
 dominance frontiers                :   0.16 (  0%)   0.00 (  0%)   0.19 (  0%)
    0  (  0%)
 dominance computation              :   4.05 (  1%)   0.18 (  1%)   4.02 (  1%)
    0  (  0%)
 control dependences                :   0.02 (  0%)   0.00 (  0%)   0.04 (  0%)
    0  (  0%)
 out of ssa                         :   0.15 (  0%)   0.01 (  0%)   0.25 (  0%)
  365k (  0%)
 expand vars                        :   0.05 (  0%)   0.01 (  0%)   0.05 (  0%)
  225k (  0%)
 expand                             :   1.49 (  1%)   0.43 (  2%)   1.70 (  1%)
   31M (  5%)
 post expand cleanups               :   0.54 (  0%)   0.09 (  0%)   0.71 (  0%)
 9495k (  1%)
 varconst                           :   0.05 (  0%)   0.08 (  0%)   0.12 (  0%)
 4864  (  0%)
 lower subreg                       :   0.01 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 jump                               :   0.02 (  0%)   0.00 (  0%)   0.01 (  0%)
    0  (  0%)
 forward prop                       :   1.21 (  0%)   0.09 (  0%)   1.39 (  0%)
   71k (  0%)
 CSE                                :   3.10 (  1%)   0.27 (  1%)   3.49 (  1%)
  187k (  0%)
 dead code elimination              :   0.56 (  0%)   0.02 (  0%)   0.67 (  0%)
    0  (  0%)
 dead store elim1                   :   0.37 (  0%)   0.02 (  0%)   0.36 (  0%)
  490k (  0%)
 dead store elim2                   :   0.58 (  0%)   0.04 (  0%)   0.66 (  0%)
 1519k (  0%)
 loop analysis                      :   0.02 (  0%)   0.01 (  0%)   0.01 (  0%)
    0  (  0%)
 loop init                          :   1.67 (  1%)   0.11 (  0%)   1.63 (  1%)
 3446k (  1%)
 loop fini                          :   0.23 (  0%)   0.05 (  0%)   0.17 (  0%)
    0  (  0%)
 CPROP                              :   6.33 (  2%)   0.18 (  1%)   6.72 (  2%)
   10M (  2%)
 PRE                                :   0.29 (  0%)   0.01 (  0%)   0.33 (  0%)
  132k (  0%)
 auto inc dec                       :   0.06 (  0%)   0.01 (  0%)   0.15 (  0%)
   22k (  0%)
 CSE 2                              :   2.12 (  1%)   0.12 (  1%)   2.22 (  1%)
   68k (  0%)
 branch prediction                  :   0.31 (  0%)   0.04 (  0%)   0.36 (  0%)
  127k (  0%)
 combiner                           :   1.50 (  1%)   0.10 (  0%)   1.70 (  1%)
 2482k (  0%)
 if-conversion                      :   0.77 (  0%)   0.08 (  0%)   0.75 (  0%)
 2882k (  0%)
 mode switching                     :   0.00 (  0%)   0.01 (  0%)   0.02 (  0%)
    0  (  0%)
 scheduling                         :  16.02 (  6%)   0.32 (  1%)  16.46 (  5%)
 2475k (  0%)
 integrated RA                      :   4.43 (  2%)   0.23 (  1%)   4.65 (  1%)
   39M (  6%)
 LRA non-specific                   :   1.60 (  1%)   0.02 (  0%)   1.74 (  1%)
  430k (  0%)
 LRA virtuals elimination           :   1.52 (  1%)   0.01 (  0%)   1.54 (  0%)
  283k (  0%)
 LRA reload inheritance             :   0.33 (  0%)   0.01 (  0%)   0.25 (  0%)
  176k (  0%)
 LRA create live ranges             :   0.38 (  0%)   0.00 (  0%)   0.44 (  0%)
  105k (  0%)
 LRA hard reg assignment            :   0.13 (  0%)   0.01 (  0%)   0.07 (  0%)
    0  (  0%)
 LRA rematerialization              :   0.08 (  0%)   0.03 (  0%)   0.11 (  0%)
    0  (  0%)
 reload                             :   0.06 (  0%)   0.01 (  0%)   0.09 (  0%)
   38k (  0%)
 reload CSE regs                    :   1.20 (  0%)   0.04 (  0%)   1.31 (  0%)
 1997k (  0%)
 ree                                :   0.32 (  0%)   0.01 (  0%)   0.25 (  0%)
 1880  (  0%)
 thread pro- & epilogue             :   1.14 (  0%)   0.07 (  0%)   1.10 (  0%)
 2690k (  0%)
 if-conversion 2                    :   0.17 (  0%)   0.01 (  0%)   0.16 (  0%)
 1560  (  0%)
 peephole 2                         :   0.26 (  0%)   0.00 (  0%)   0.20 (  0%)
    0  (  0%)
 hard reg cprop                     :   0.53 (  0%)   0.14 (  1%)   0.68 (  0%)
 5568  (  0%)
 scheduling 2                       :   2.67 (  1%)   0.10 (  0%)   2.82 (  1%)
  481k (  0%)
 machine dep reorg                  :   0.02 (  0%)   0.00 (  0%)   0.00 (  0%)
    0  (  0%)
 reorder blocks                     :   0.67 (  0%)   0.03 (  0%)   0.76 (  0%)
 4364k (  1%)
 shorten branches                   :   0.30 (  0%)   0.02 (  0%)   0.28 (  0%)
    0  (  0%)
 final                              :   0.95 (  0%)   0.13 (  1%)   1.05 (  0%)
 4363k (  1%)
 symout                             :   0.00 (  0%)   0.00 (  0%)   0.02 (  0%)
    0  (  0%)
 tree if-combine                    :   0.08 (  0%)   0.00 (  0%)   0.06 (  0%)
 2800  (  0%)
 if to switch conversion            :   0.13 (  0%)   0.00 (  0%)   0.19 (  0%)
 1649k (  0%)
 straight-line strength reduction   :   0.05 (  0%)   0.00 (  0%)   0.08 (  0%)
   54k (  0%)
 store merging                      :   0.02 (  0%)   0.00 (  0%)   0.01 (  0%)
   17k (  0%)
 initialize rtl                     :   0.04 (  0%)   0.00 (  0%)   0.05 (  0%)
   18k (  0%)
 address lowering                   :   0.01 (  0%)   0.01 (  0%)   0.00 (  0%)
    0  (  0%)
 access analysis                    :   0.39 (  0%)   0.08 (  0%)   0.47 (  0%)
  168  (  0%)
 rest of compilation                :   7.22 (  2%)   0.66 (  3%)   7.74 (  2%)
   17M (  3%)
 unaccounted late compilation       :   0.01 (  0%)   0.00 (  0%)   0.00 (  0%)
    0  (  0%)
 remove unused locals               :   0.14 (  0%)   0.03 (  0%)   0.22 (  0%)
    0  (  0%)
 address taken                      :   0.21 (  0%)   0.01 (  0%)   0.22 (  0%)
    0  (  0%)
 rebuild frequencies                :   0.02 (  0%)   0.00 (  0%)   0.04 (  0%)
    0  (  0%)
 repair loop structures             :   0.04 (  0%)   0.02 (  0%)   0.08 (  0%)
    0  (  0%)
 TOTAL                              : 290.69         22.46        314.65       
  658M

Reply via email to