This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/54052] g++ takes excessive time in opt and generate phase; can lead to Segmentation Fault when not enough memory available
- From: "egallager at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 22 Aug 2017 00:43:01 +0000
- Subject: [Bug c++/54052] g++ takes excessive time in opt and generate phase; can lead to Segmentation Fault when not enough memory available
- Auto-submitted: auto-generated
- References: <bug-54052-4@http.gcc.gnu.org/bugzilla/>
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)