https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55135
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2013-02-28 00:00:00 |2020-9-28 Known to fail| |10.2.1 --- Comment #31 from Richard Biener <rguenth at gcc dot gnu.org> --- GCC 10.2 takes 1.8s and ~500MB for parsing (-fsyntax-only), compiling at -O0 is 17.8s peaking at ~3GB of memory. Time variable usr sys wall GGC phase parsing : 1.82 ( 10%) 0.71 ( 59%) 2.53 ( 13%) 516872 kB ( 29%) phase opt and generate : 15.96 ( 90%) 0.48 ( 40%) 16.44 ( 87%) 1273663 kB ( 71%) callgraph ipa passes : 0.91 ( 5%) 0.15 ( 13%) 1.07 ( 6%) 198535 kB ( 11%) df scan insns : 1.00 ( 6%) 0.18 ( 15%) 1.20 ( 6%) 19 kB ( 0%) expand : 0.92 ( 5%) 0.05 ( 4%) 0.95 ( 5%) 308140 kB ( 17%) integrated RA : 3.98 ( 22%) 0.06 ( 5%) 4.02 ( 21%) 129194 kB ( 7%) LRA non-specific : 1.04 ( 6%) 0.01 ( 1%) 1.02 ( 5%) 868 kB ( 0%) TOTAL : 17.79 1.20 19.00 1796092 kB that's everything >= 5% At -O1 things blow up as expected: Time variable usr sys wall GGC callgraph functions expansion : 335.20 ( 14%) 2.31 ( 51%) 337.66 ( 14%) 1570346 kB ( 41%) callgraph ipa passes :2040.93 ( 86%) 1.43 ( 31%)2042.99 ( 86%) 1326596 kB ( 34%) ipa inlining heuristics :1505.86 ( 63%) 0.01 ( 0%)1506.33 ( 63%) 146038 kB ( 4%) integration : 637.70 ( 27%) 1.61 ( 35%) 639.78 ( 27%) 968497 kB ( 25%) tree SSA incremental : 110.12 ( 5%) 0.00 ( 0%) 110.16 ( 5%) 410 kB ( 0%) TOTAL :2379.80 4.54 2385.13 3854592 kB and ~4GB of ram used. Honza - you put the finger to it, can't we refactor things so we apply this update in the caller after all stmts were processed?