http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375
--- Comment #182 from Jan Hubicka <hubicka at gcc dot gnu.org> --- OK, after a while I should update the stats here. Richard's new tree merging patch makes libxul linking a lot faster and less memory consuming. Peak memory usage (in TOP) is now just bellow 10GB, with bit of incremental improvmenets I hope to get bellow 8GB again soon. Bulid time is real 19m0.355s user 56m20.459s sys 2m17.533s GGC memory usage after stream in 4938399k Execution times (seconds) phase setup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 1399 kB ( 0%) ggc phase opt and generate : 72.86 (12%) usr 0.90 ( 3%) sys 75.25 (11%) wall 270952 kB ( 7%) ggc phase stream in : 274.88 (44%) usr 9.01 (26%) sys 294.99 (43%) wall 3478515 kB (93%) ggc phase stream out : 282.18 (45%) usr 24.40 (71%) sys 308.42 (45%) wall 7162 kB ( 0%) ggc garbage collection : 12.99 ( 2%) usr 0.01 ( 0%) sys 13.00 ( 2%) wall 0 kB ( 0%) ggc callgraph optimization : 1.95 ( 0%) usr 0.00 ( 0%) sys 1.95 ( 0%) wall 32 kB ( 0%) ggc ipa cp : 9.82 ( 2%) usr 0.39 ( 1%) sys 10.26 ( 2%) wall 418482 kB (11%) ggc ipa inlining heuristics : 39.30 ( 6%) usr 1.12 ( 3%) sys 41.52 ( 6%) wall 1353294 kB (36%) ggc ipa lto gimple in : 0.45 ( 0%) usr 0.15 ( 0%) sys 0.62 ( 0%) wall 0 kB ( 0%) ggc ipa lto gimple out : 18.24 ( 3%) usr 1.50 ( 4%) sys 19.86 ( 3%) wall 0 kB ( 0%) ggc ipa lto decl in : 200.68 (32%) usr 5.85 (17%) sys 216.44 (32%) wall 3887175 kB (103%) ggc ipa lto decl out : 256.24 (41%) usr 13.44 (39%) sys 271.24 (40%) wall 0 kB ( 0%) ggc ipa lto cgraph I/O : 7.20 ( 1%) usr 1.61 ( 5%) sys 8.83 ( 1%) wall 2134157 kB (57%) ggc ipa lto decl merge : 27.71 ( 4%) usr 0.01 ( 0%) sys 27.72 ( 4%) wall 8270 kB ( 0%) ggc ipa lto cgraph merge : 17.31 ( 3%) usr 0.07 ( 0%) sys 17.39 ( 3%) wall 142240 kB ( 4%) ggc whopr wpa : 8.82 ( 1%) usr 0.04 ( 0%) sys 8.89 ( 1%) wall 7165 kB ( 0%) ggc whopr wpa I/O : 1.63 ( 0%) usr 9.43 (27%) sys 11.19 ( 2%) wall 0 kB ( 0%) ggc whopr partitioning : 3.21 ( 1%) usr 0.04 ( 0%) sys 3.25 ( 0%) wall 0 kB ( 0%) ggc ipa reference : 5.56 ( 1%) usr 0.04 ( 0%) sys 5.81 ( 1%) wall 0 kB ( 0%) ggc ipa profile : 1.83 ( 0%) usr 0.02 ( 0%) sys 1.86 ( 0%) wall 0 kB ( 0%) ggc ipa pure const : 6.07 ( 1%) usr 0.18 ( 1%) sys 6.26 ( 1%) wall 0 kB ( 0%) ggc inline parameters : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 14 kB ( 0%) ggc tree copy propagation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree PTA : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 0 kB ( 0%) ggc tree SSA rewrite : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 27 kB ( 0%) ggc tree SSA other : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree CCP : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc dominance computation : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc varconst : 0.14 ( 0%) usr 0.12 ( 0%) sys 0.24 ( 0%) wall 0 kB ( 0%) ggc unaccounted todo : 10.69 ( 2%) usr 0.29 ( 1%) sys 11.10 ( 2%) wall 0 kB ( 0%) ggc TOTAL : 629.93 34.31 678.67 3758029 kB Memory usage seems about the same with -g. Honza