https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121439
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- -O0 -fno-checking (on the trunk): Time variable wall GGC phase setup : 0.01 ( 0%) 1975k ( 0%) phase parsing : 5.25 ( 5%) 205M ( 12%) phase opt and generate : 108.32 ( 95%) 1453M ( 88%) phase finalize : 0.29 ( 0%) 0 ( 0%) garbage collection : 1.92 ( 2%) 0 ( 0%) callgraph construction : 0.87 ( 1%) 129M ( 8%) callgraph optimization : 0.09 ( 0%) 0 ( 0%) callgraph ipa passes : 3.88 ( 3%) 92M ( 6%) ipa inlining heuristics : 0.03 ( 0%) 0 ( 0%) cfg cleanup : 0.02 ( 0%) 0 ( 0%) trivially dead code : 0.94 ( 1%) 0 ( 0%) df scan insns : 1.46 ( 1%) 48 ( 0%) df live regs : 19.64 ( 17%) 0 ( 0%) df reg dead/unused notes : 0.69 ( 1%) 41M ( 2%) register information : 0.24 ( 0%) 0 ( 0%) alias analysis : 0.66 ( 1%) 32M ( 2%) rebuild jump labels : 0.54 ( 0%) 0 ( 0%) preprocessing : 0.99 ( 1%) 5883k ( 0%) lexical analysis : 0.38 ( 0%) 0 ( 0%) parser function body : 3.76 ( 3%) 199M ( 12%) inline parameters : 1.59 ( 1%) 544 ( 0%) tree gimplify : 2.94 ( 3%) 223M ( 13%) tree eh : 0.03 ( 0%) 0 ( 0%) tree CFG construction : 0.13 ( 0%) 1224 ( 0%) tree CFG cleanup : 0.02 ( 0%) 0 ( 0%) tree SSA rewrite : 1.04 ( 1%) 22M ( 1%) tree operand scan : 0.48 ( 0%) 70M ( 4%) out of ssa : 0.55 ( 0%) 192 ( 0%) expand vars : 0.61 ( 1%) 64M ( 4%) expand : 5.00 ( 4%) 383M ( 23%) post expand cleanups : 0.30 ( 0%) 480 ( 0%) integrated RA : 22.09 ( 19%) 384M ( 23%) LRA non-specific : 12.99 ( 11%) 31M ( 2%) LRA virtuals elimination : 3.86 ( 3%) 67M ( 4%) LRA create live ranges : 17.96 ( 16%) 3841k ( 0%) LRA hard reg assignment : 2.00 ( 2%) 0 ( 0%) reload : 0.08 ( 0%) 24 ( 0%) thread pro- & epilogue : 1.44 ( 1%) 1688 ( 0%) machine dep reorg : 0.03 ( 0%) 0 ( 0%) shorten branches : 2.02 ( 2%) 0 ( 0%) final : 3.23 ( 3%) 2216 ( 0%) initialize rtl : 0.01 ( 0%) 12k ( 0%) access analysis : 0.13 ( 0%) 0 ( 0%) rest of compilation : 2.82 ( 2%) 2528 ( 0%) TOTAL : 113.87 1660M Extra diagnostic checks enabled; compiler may run slowly. Configure with --enable-checking=release to disable checks. [Inferior 1 (process 3921471) exited normally] So not too bad. ~2 minutes (I stopped it a few times in gdb so it is less than that).