https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54052
Eric Gallager <egallager at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |compile-time-hog, | |memory-hog Status|UNCONFIRMED |NEW Last reconfirmed|2012-07-24 00:00:00 |2017-08-22 CC| |egallager at gcc dot gnu.org Summary|Segmentation Fault |g++ takes excessive time in | |opt and generate phase; can | |lead to Segmentation Fault | |when not enough memory | |available Ever confirmed|0 |1 --- Comment #6 from Eric Gallager <egallager at gcc dot gnu.org> --- (In reply to Christophe DUVERGER from comment #5) > Created attachment 27868 [details] > test08.ii file Doesn't ICE for me, just takes an inordinately long time to compile (once I add -fpermissive): $ /usr/local/bin/g++ -Wno-system-headers -Wall -Wextra -ansi -pedantic -O6 -c -o test08.o test08.ii In file included from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/ext/new_allocator.h:33:0, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/i686-pc-cygwin/bits/c++allocator.h:34, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/bits/allocator.h:48, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/string:43, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/bits/locale_classes.h:42, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/bits/ios_base.h:43, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/ios:43, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/ostream:40, from /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/iostream:40, from test08.cpp:1: /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:93:54: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:94:56: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:97:62: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:98:64: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:103:57: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] /usr/lib/gcc/i686-pc-cygwin/4.5.3/include/c++/new:104:59: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive] $ /usr/local/bin/g++ -Wno-system-headers -Wall -Wextra -ansi -pedantic -O6 -fpermissive -time -ftime-report -c -o test08.o test08.ii Execution times (seconds) phase setup : 0.03 ( 0%) usr 0.01 ( 0%) sys 0.06 ( 0%) wall 641 kB ( 0%) ggc phase parsing : 384.38 (10%) usr 4.41 ( 2%) sys 390.09 ( 2%) wall 48551 kB (12%) ggc phase lang. deferred : 0.23 ( 0%) usr 0.06 ( 0%) sys 0.30 ( 0%) wall 2462 kB ( 1%) ggc phase opt and generate :3355.32 (90%) usr 241.76 (98%) sys15451.71 (98%) wall 362698 kB (88%) ggc phase last asm : 0.00 ( 0%) usr 0.01 ( 0%) sys 1.07 ( 0%) wall 7 kB ( 0%) ggc phase finalize : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.24 ( 0%) wall 0 kB ( 0%) ggc |name lookup : 1.21 ( 0%) usr 0.50 ( 0%) sys 1.83 ( 0%) wall 1946 kB ( 0%) ggc |overload resolution : 1.88 ( 0%) usr 0.50 ( 0%) sys 2.43 ( 0%) wall 13196 kB ( 3%) ggc garbage collection : 3.70 ( 0%) usr 3.27 ( 1%) sys 577.45 ( 4%) wall 0 kB ( 0%) ggc dump files : 0.04 ( 0%) usr 0.04 ( 0%) sys 0.77 ( 0%) wall 0 kB ( 0%) ggc callgraph construction : 0.86 ( 0%) usr 0.15 ( 0%) sys 4.51 ( 0%) wall 8014 kB ( 2%) ggc callgraph optimization : 0.85 ( 0%) usr 0.20 ( 0%) sys 2.05 ( 0%) wall 11 kB ( 0%) ggc ipa function summary : 0.27 ( 0%) usr 0.03 ( 0%) sys 0.34 ( 0%) wall 44 kB ( 0%) ggc ipa dead code removal : 0.06 ( 0%) usr 0.03 ( 0%) sys 0.25 ( 0%) wall 0 kB ( 0%) ggc ipa virtual call target : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc ipa devirtualization : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc ipa cp : 0.65 ( 0%) usr 0.12 ( 0%) sys 1.81 ( 0%) wall 4870 kB ( 1%) ggc ipa inlining heuristics : 1.14 ( 0%) usr 0.03 ( 0%) sys 2.88 ( 0%) wall 73 kB ( 0%) ggc ipa function splitting : 0.04 ( 0%) usr 0.01 ( 0%) sys 0.09 ( 0%) wall 5 kB ( 0%) ggc ipa various optimizations: 0.32 ( 0%) usr 0.07 ( 0%) sys 1.12 ( 0%) wall 4517 kB ( 1%) ggc ipa reference : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 0 kB ( 0%) ggc ipa profile : 0.07 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc ipa pure const : 0.39 ( 0%) usr 0.06 ( 0%) sys 0.52 ( 0%) wall 1 kB ( 0%) ggc ipa icf : 10.64 ( 0%) usr 0.04 ( 0%) sys 10.90 ( 0%) wall 0 kB ( 0%) ggc ipa SRA : 0.57 ( 0%) usr 0.06 ( 0%) sys 1.44 ( 0%) wall 480 kB ( 0%) ggc ipa free lang data : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc ipa free inline summary : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.33 ( 0%) wall 0 kB ( 0%) ggc cfg construction : 0.20 ( 0%) usr 0.10 ( 0%) sys 2.36 ( 0%) wall 1351 kB ( 0%) ggc cfg cleanup : 1.62 ( 0%) usr 0.48 ( 0%) sys 51.91 ( 0%) wall 69 kB ( 0%) ggc CFG verifier : 23.67 ( 1%) usr 3.87 ( 2%) sys 137.69 ( 1%) wall 0 kB ( 0%) ggc trivially dead code : 0.83 ( 0%) usr 0.07 ( 0%) sys 8.91 ( 0%) wall 0 kB ( 0%) ggc df scan insns : 1.74 ( 0%) usr 0.33 ( 0%) sys 34.18 ( 0%) wall 0 kB ( 0%) ggc df multiple defs : 100.31 ( 3%) usr 3.58 ( 1%) sys 232.47 ( 1%) wall 0 kB ( 0%) ggc df reaching defs : 12.27 ( 0%) usr 18.83 ( 8%) sys 603.74 ( 4%) wall 0 kB ( 0%) ggc df live regs : 4.59 ( 0%) usr 0.57 ( 0%) sys 32.18 ( 0%) wall 0 kB ( 0%) ggc df live&initialized regs: 1.57 ( 0%) usr 0.46 ( 0%) sys 30.30 ( 0%) wall 0 kB ( 0%) ggc df must-initialized regs: 12.65 ( 0%) usr 57.49 (23%) sys3155.48 (20%) wall 0 kB ( 0%) ggc df use-def / def-use chains: 12.43 ( 0%) usr 26.27 (11%) sys 866.06 ( 5%) wall 0 kB ( 0%) ggc df reg dead/unused notes: 3.56 ( 0%) usr 0.37 ( 0%) sys 21.13 ( 0%) wall 7331 kB ( 2%) ggc register information : 0.31 ( 0%) usr 0.03 ( 0%) sys 0.43 ( 0%) wall 0 kB ( 0%) ggc alias analysis : 1.59 ( 0%) usr 0.09 ( 0%) sys 8.15 ( 0%) wall 5939 kB ( 1%) ggc alias stmt walking : 3.45 ( 0%) usr 0.97 ( 0%) sys 10.51 ( 0%) wall 11 kB ( 0%) ggc register scan : 0.16 ( 0%) usr 0.00 ( 0%) sys 0.30 ( 0%) wall 14 kB ( 0%) ggc rebuild jump labels : 0.45 ( 0%) usr 0.00 ( 0%) sys 0.47 ( 0%) wall 0 kB ( 0%) ggc preprocessing : 1.14 ( 0%) usr 0.75 ( 0%) sys 2.05 ( 0%) wall 611 kB ( 0%) ggc parser (global) : 1.88 ( 0%) usr 1.14 ( 0%) sys 2.80 ( 0%) wall 16188 kB ( 4%) ggc parser struct body : 0.79 ( 0%) usr 0.27 ( 0%) sys 1.24 ( 0%) wall 7204 kB ( 2%) ggc parser enumerator list : 0.00 ( 0%) usr 0.01 ( 0%) sys 0.01 ( 0%) wall 42 kB ( 0%) ggc parser function body : 378.87 (10%) usr 1.76 ( 1%) sys 381.80 ( 2%) wall 16462 kB ( 4%) ggc parser inl. func. body : 0.09 ( 0%) usr 0.03 ( 0%) sys 0.16 ( 0%) wall 419 kB ( 0%) ggc parser inl. meth. body : 0.46 ( 0%) usr 0.16 ( 0%) sys 0.62 ( 0%) wall 2714 kB ( 1%) ggc template instantiation : 0.62 ( 0%) usr 0.25 ( 0%) sys 0.87 ( 0%) wall 6456 kB ( 2%) ggc constant expression evaluation: 0.27 ( 0%) usr 0.10 ( 0%) sys 0.37 ( 0%) wall 857 kB ( 0%) ggc early inlining heuristics: 0.62 ( 0%) usr 0.09 ( 0%) sys 0.82 ( 0%) wall 29327 kB ( 7%) ggc inline parameters : 0.60 ( 0%) usr 0.09 ( 0%) sys 1.46 ( 0%) wall 345 kB ( 0%) ggc integration : 146.07 ( 4%) usr 1.44 ( 1%) sys 151.31 ( 1%) wall 51407 kB (12%) ggc tree gimplify : 0.98 ( 0%) usr 0.02 ( 0%) sys 1.04 ( 0%) wall 9632 kB ( 2%) ggc tree eh : 18.74 ( 1%) usr 0.28 ( 0%) sys 19.83 ( 0%) wall 25171 kB ( 6%) ggc tree CFG construction : 0.27 ( 0%) usr 0.01 ( 0%) sys 0.27 ( 0%) wall 12439 kB ( 3%) ggc tree CFG cleanup : 1.74 ( 0%) usr 0.20 ( 0%) sys 2.13 ( 0%) wall 4 kB ( 0%) ggc tree tail merge : 0.28 ( 0%) usr 0.02 ( 0%) sys 0.31 ( 0%) wall 12 kB ( 0%) ggc tree VRP : 2.46 ( 0%) usr 0.19 ( 0%) sys 3.39 ( 0%) wall 717 kB ( 0%) ggc tree Early VRP : 0.29 ( 0%) usr 0.03 ( 0%) sys 0.65 ( 0%) wall 195 kB ( 0%) ggc tree copy propagation : 0.24 ( 0%) usr 0.04 ( 0%) sys 0.28 ( 0%) wall 0 kB ( 0%) ggc tree PTA : 3.57 ( 0%) usr 0.24 ( 0%) sys 12.60 ( 0%) wall 243 kB ( 0%) ggc tree PHI insertion : 0.28 ( 0%) usr 0.01 ( 0%) sys 1.03 ( 0%) wall 4789 kB ( 1%) ggc tree SSA rewrite : 0.49 ( 0%) usr 0.04 ( 0%) sys 1.57 ( 0%) wall 8149 kB ( 2%) ggc tree SSA other : 0.79 ( 0%) usr 0.48 ( 0%) sys 1.15 ( 0%) wall 16 kB ( 0%) ggc tree SSA incremental : 1.66 ( 0%) usr 0.07 ( 0%) sys 1.91 ( 0%) wall 422 kB ( 0%) ggc tree operand scan : 1.73 ( 0%) usr 1.53 ( 1%) sys 3.27 ( 0%) wall 4572 kB ( 1%) ggc dominator optimization : 0.69 ( 0%) usr 0.07 ( 0%) sys 0.87 ( 0%) wall 1999 kB ( 0%) ggc backwards jump threading: 0.34 ( 0%) usr 0.08 ( 0%) sys 0.41 ( 0%) wall 43 kB ( 0%) ggc tree SRA : 0.13 ( 0%) usr 0.00 ( 0%) sys 0.17 ( 0%) wall 20 kB ( 0%) ggc isolate eroneous paths : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc tree CCP : 1.13 ( 0%) usr 0.18 ( 0%) sys 2.24 ( 0%) wall 2955 kB ( 1%) ggc tree PHI const/copy prop: 0.25 ( 0%) usr 0.05 ( 0%) sys 0.30 ( 0%) wall 0 kB ( 0%) ggc tree split crit edges : 0.85 ( 0%) usr 0.18 ( 0%) sys 1.23 ( 0%) wall 12640 kB ( 3%) ggc tree reassociation : 0.27 ( 0%) usr 0.09 ( 0%) sys 0.81 ( 0%) wall 0 kB ( 0%) ggc tree PRE : 1.30 ( 0%) usr 0.12 ( 0%) sys 2.63 ( 0%) wall 2499 kB ( 1%) ggc tree FRE : 1.34 ( 0%) usr 0.17 ( 0%) sys 2.06 ( 0%) wall 1186 kB ( 0%) ggc tree code sinking : 0.25 ( 0%) usr 0.07 ( 0%) sys 0.59 ( 0%) wall 33 kB ( 0%) ggc tree linearize phis : 0.34 ( 0%) usr 0.05 ( 0%) sys 0.48 ( 0%) wall 5 kB ( 0%) ggc tree backward propagate : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.14 ( 0%) wall 0 kB ( 0%) ggc tree forward propagate : 0.53 ( 0%) usr 0.06 ( 0%) sys 0.77 ( 0%) wall 345 kB ( 0%) ggc tree phiprop : 0.09 ( 0%) usr 0.03 ( 0%) sys 0.10 ( 0%) wall 0 kB ( 0%) ggc tree conservative DCE : 1.45 ( 0%) usr 0.58 ( 0%) sys 1.91 ( 0%) wall 20 kB ( 0%) ggc tree aggressive DCE : 24.30 ( 1%) usr 0.59 ( 0%) sys 34.37 ( 0%) wall 113 kB ( 0%) ggc tree buildin call DCE : 0.06 ( 0%) usr 0.01 ( 0%) sys 0.12 ( 0%) wall 0 kB ( 0%) ggc tree DSE : 0.65 ( 0%) usr 0.07 ( 0%) sys 0.70 ( 0%) wall 1059 kB ( 0%) ggc PHI merge : 0.30 ( 0%) usr 0.08 ( 0%) sys 0.35 ( 0%) wall 0 kB ( 0%) ggc tree loop optimization : 0.08 ( 0%) usr 0.01 ( 0%) sys 0.09 ( 0%) wall 0 kB ( 0%) ggc loopless fn : 0.08 ( 0%) usr 0.01 ( 0%) sys 0.09 ( 0%) wall 0 kB ( 0%) ggc tree loop invariant motion: 0.08 ( 0%) usr 0.03 ( 0%) sys 0.09 ( 0%) wall 0 kB ( 0%) ggc tree canonical iv : 0.00 ( 0%) usr 0.01 ( 0%) sys 0.00 ( 0%) wall 82 kB ( 0%) ggc scev constant prop : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 5 kB ( 0%) ggc tree loop unswitching : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 14 kB ( 0%) ggc complete unrolling : 0.04 ( 0%) usr 0.02 ( 0%) sys 0.08 ( 0%) wall 163 kB ( 0%) ggc tree vectorization : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.35 ( 0%) wall 66 kB ( 0%) ggc tree slp vectorization : 0.68 ( 0%) usr 0.02 ( 0%) sys 1.19 ( 0%) wall 5499 kB ( 1%) ggc tree loop distribution : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 5 kB ( 0%) ggc tree iv optimization : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.22 ( 0%) wall 64 kB ( 0%) ggc predictive commoning : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall 6 kB ( 0%) ggc tree copy headers : 0.05 ( 0%) usr 0.01 ( 0%) sys 0.12 ( 0%) wall 6 kB ( 0%) ggc tree SSA uncprop : 0.24 ( 0%) usr 0.03 ( 0%) sys 0.29 ( 0%) wall 0 kB ( 0%) ggc tree NRV optimization : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.10 ( 0%) wall 0 kB ( 0%) ggc tree SSA verifier : 22.73 ( 1%) usr 1.49 ( 1%) sys 26.05 ( 0%) wall 0 kB ( 0%) ggc tree STMT verifier : 41.99 ( 1%) usr 1.83 ( 1%) sys 50.22 ( 0%) wall 0 kB ( 0%) ggc tree switch conversion : 0.07 ( 0%) usr 0.01 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc tree strlen optimization: 0.38 ( 0%) usr 0.05 ( 0%) sys 2.46 ( 0%) wall 57 kB ( 0%) ggc callgraph verifier : 21.32 ( 1%) usr 0.61 ( 0%) sys 22.15 ( 0%) wall 0 kB ( 0%) ggc dominance frontiers : 112.16 ( 3%) usr 9.62 ( 4%) sys1381.58 ( 9%) wall 0 kB ( 0%) ggc dominance computation : 7.13 ( 0%) usr 2.48 ( 1%) sys 50.39 ( 0%) wall 0 kB ( 0%) ggc control dependences : 130.30 ( 3%) usr 1.02 ( 0%) sys 150.31 ( 1%) wall 0 kB ( 0%) ggc out of ssa : 0.13 ( 0%) usr 0.02 ( 0%) sys 0.29 ( 0%) wall 129 kB ( 0%) ggc expand vars :2427.62 (65%) usr 13.21 ( 5%) sys2539.52 (16%) wall 2400 kB ( 1%) ggc expand : 3.44 ( 0%) usr 1.36 ( 1%) sys 64.61 ( 0%) wall 51257 kB (12%) ggc post expand cleanups : 0.47 ( 0%) usr 0.40 ( 0%) sys 7.77 ( 0%) wall 13965 kB ( 3%) ggc varconst : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 53 kB ( 0%) ggc lower subreg : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.36 ( 0%) wall 0 kB ( 0%) ggc jump : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.21 ( 0%) wall 0 kB ( 0%) ggc forward prop : 1.40 ( 0%) usr 1.31 ( 1%) sys 135.48 ( 1%) wall 1679 kB ( 0%) ggc CSE : 1.21 ( 0%) usr 0.08 ( 0%) sys 2.94 ( 0%) wall 517 kB ( 0%) ggc dead code elimination : 0.86 ( 0%) usr 0.08 ( 0%) sys 3.12 ( 0%) wall 0 kB ( 0%) ggc dead store elim1 : 1.85 ( 0%) usr 0.69 ( 0%) sys 19.98 ( 0%) wall 8918 kB ( 2%) ggc dead store elim2 : 7.28 ( 0%) usr 11.90 ( 5%) sys1344.73 ( 8%) wall 7215 kB ( 2%) ggc loop analysis : 0.13 ( 0%) usr 0.03 ( 0%) sys 0.26 ( 0%) wall 0 kB ( 0%) ggc loop init : 7.14 ( 0%) usr 1.42 ( 1%) sys 12.83 ( 0%) wall 182 kB ( 0%) ggc loop invariant motion : 0.11 ( 0%) usr 0.03 ( 0%) sys 0.13 ( 0%) wall 0 kB ( 0%) ggc loop fini : 0.02 ( 0%) usr 0.02 ( 0%) sys 0.68 ( 0%) wall 0 kB ( 0%) ggc CPROP : 2.73 ( 0%) usr 0.05 ( 0%) sys 4.01 ( 0%) wall 1393 kB ( 0%) ggc PRE : 1.21 ( 0%) usr 0.09 ( 0%) sys 4.28 ( 0%) wall 372 kB ( 0%) ggc CSE 2 : 1.32 ( 0%) usr 0.20 ( 0%) sys 22.27 ( 0%) wall 92 kB ( 0%) ggc branch prediction : 0.55 ( 0%) usr 0.05 ( 0%) sys 0.82 ( 0%) wall 86 kB ( 0%) ggc combiner : 69.67 ( 2%) usr 0.42 ( 0%) sys 83.40 ( 1%) wall 4166 kB ( 1%) ggc if-conversion : 0.20 ( 0%) usr 0.14 ( 0%) sys 5.47 ( 0%) wall 87 kB ( 0%) ggc mode switching : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 0 kB ( 0%) ggc integrated RA : 13.09 ( 0%) usr 1.18 ( 0%) sys 114.80 ( 1%) wall 25242 kB ( 6%) ggc LRA non-specific : 2.65 ( 0%) usr 0.47 ( 0%) sys 43.68 ( 0%) wall 622 kB ( 0%) ggc LRA virtuals elimination: 0.53 ( 0%) usr 0.01 ( 0%) sys 0.70 ( 0%) wall 2678 kB ( 1%) ggc LRA reload inheritance : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 14 kB ( 0%) ggc LRA create live ranges : 0.64 ( 0%) usr 0.21 ( 0%) sys 4.13 ( 0%) wall 745 kB ( 0%) ggc LRA hard reg assignment : 0.14 ( 0%) usr 0.11 ( 0%) sys 6.37 ( 0%) wall 0 kB ( 0%) ggc LRA rematerialization : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 0 kB ( 0%) ggc reload : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc reload CSE regs : 3.39 ( 0%) usr 0.10 ( 0%) sys 4.34 ( 0%) wall 12061 kB ( 3%) ggc load CSE after reload : 0.55 ( 0%) usr 0.01 ( 0%) sys 2.31 ( 0%) wall 8 kB ( 0%) ggc ree : 1.42 ( 0%) usr 38.06 (15%) sys1725.83 (11%) wall 0 kB ( 0%) ggc thread pro- & epilogue : 3.10 ( 0%) usr 0.52 ( 0%) sys 32.75 ( 0%) wall 18 kB ( 0%) ggc if-conversion 2 : 0.69 ( 0%) usr 0.02 ( 0%) sys 1.76 ( 0%) wall 0 kB ( 0%) ggc split paths : 0.11 ( 0%) usr 0.02 ( 0%) sys 0.13 ( 0%) wall 0 kB ( 0%) ggc combine stack adjustments: 0.40 ( 0%) usr 0.32 ( 0%) sys 3.36 ( 0%) wall 210 kB ( 0%) ggc peephole 2 : 0.69 ( 0%) usr 0.22 ( 0%) sys 26.28 ( 0%) wall 3153 kB ( 1%) ggc hard reg cprop : 4.09 ( 0%) usr 0.21 ( 0%) sys 37.25 ( 0%) wall 0 kB ( 0%) ggc scheduling 2 : 9.79 ( 0%) usr 4.28 ( 2%) sys 65.16 ( 0%) wall 4181 kB ( 1%) ggc machine dep reorg : 0.54 ( 0%) usr 13.99 ( 6%) sys 595.61 ( 4%) wall 0 kB ( 0%) ggc reorder blocks : 3.72 ( 0%) usr 1.27 ( 1%) sys 85.59 ( 1%) wall 1437 kB ( 0%) ggc shorten branches : 0.42 ( 0%) usr 0.08 ( 0%) sys 0.62 ( 0%) wall 0 kB ( 0%) ggc reg stack : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 0 kB ( 0%) ggc final : 1.41 ( 0%) usr 0.48 ( 0%) sys 28.18 ( 0%) wall 4336 kB ( 1%) ggc variable output : 0.00 ( 0%) usr 0.02 ( 0%) sys 3.47 ( 0%) wall 0 kB ( 0%) ggc symout : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.51 ( 0%) wall 0 kB ( 0%) ggc tree if-combine : 0.10 ( 0%) usr 0.02 ( 0%) sys 0.11 ( 0%) wall 0 kB ( 0%) ggc uninit var analysis : 0.09 ( 0%) usr 0.02 ( 0%) sys 0.19 ( 0%) wall 0 kB ( 0%) ggc straight-line strength reduction: 0.16 ( 0%) usr 0.02 ( 0%) sys 0.24 ( 0%) wall 1 kB ( 0%) ggc store merging : 0.09 ( 0%) usr 0.02 ( 0%) sys 0.16 ( 0%) wall 0 kB ( 0%) ggc initialize rtl : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.49 ( 0%) wall 5 kB ( 0%) ggc address lowering : 0.05 ( 0%) usr 0.01 ( 0%) sys 0.10 ( 0%) wall 0 kB ( 0%) ggc early local passes : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc unaccounted optimizations: 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc rest of compilation : 8.99 ( 0%) usr 5.49 ( 2%) sys 616.64 ( 4%) wall 6420 kB ( 2%) ggc remove unused locals : 0.49 ( 0%) usr 0.00 ( 0%) sys 0.72 ( 0%) wall 0 kB ( 0%) ggc address taken : 0.25 ( 0%) usr 0.04 ( 0%) sys 0.27 ( 0%) wall 0 kB ( 0%) ggc verify loop closed : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc verify RTL sharing : 16.50 ( 0%) usr 0.83 ( 0%) sys 56.55 ( 0%) wall 0 kB ( 0%) ggc repair loop structures : 0.35 ( 0%) usr 0.09 ( 0%) sys 0.50 ( 0%) wall 0 kB ( 0%) ggc TOTAL :3739.96 246.26 15843.82 414369 kB Extra diagnostic checks enabled; compiler may run slowly. Configure with --enable-checking=release to disable checks. # cc1plus 3739.97 246.74 # as 2.20 0.10 $ Confirming as a memory and compile time hog. (I probably would've just killed it if I hadn't had to leave my computer to its own devices for a while)