build: Lower optimization of GCC 9 default builds from -Os to -O2
A bug in GCC 9 can result in crashes due to excessive memory usage (>10GB).
I saw this recently in Nr CI jobs.
Compile command
/usr/bin/g++-9 -DEIGEN_MPL2_ONLY -DHAVE_BOOST -DHAVE_BOOST_UNITS -DHAVE_EIGEN3 -DHAVE_GSL -DHAVE_LIBXML2 -DHAVE_PACKET_H -
DHAVE_SQLITE3 -DNS3_ASSERT_ENABLE -DNS3_BUILD_PROFILE_DEBUG -DNS3_LOG_ENABLE -DPROJECT_SOURCE_PATH=\"/ns-3-dev\" -DRAW_SOCK_CREATOR=\"/ns-3-dev/build/src/fd-net-dev
ice/ns3-dev-raw-sock-creator-default\" -DTAP_DEV_CREATOR=\"/ns-3-dev/build/src/fd-net-device/ns3-dev-tap-device-creator-default\" -D__LINUX__ -I../build/include -I/
usr -I/usr/include/eigen3 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include
/gtk-3.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/atk-1.0 -I/usr/include/libxml2 -Os -g -DNDEBUG -fPIC -fno-semantic-interposition -fdiagnostics-color=always -Wall -std=c++2a -o contrib/nr/CMakeFiles/libnr-obj.dir/model/nr-eesm-t1.cc.o -c /ns-3-dev/contrib/nr/model/nr-eesm-t1.cc -ftime-report
GCCs -ftime-report for -Os
Time variable usr sys wall GGC
phase setup : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1369 kB ( 0%)
phase parsing : 0.66 ( 1%) 0.43 ( 7%) 1.19 ( 2%) 216257 kB ( 2%)
phase lang. deferred : 0.08 ( 0%) 0.03 ( 0%) 0.11 ( 0%) 21507 kB ( 0%)
phase opt and generate : 49.98 ( 83%) 4.36 ( 66%) 54.39 ( 81%) 8737340 kB ( 87%)
phase last asm : 9.69 ( 16%) 1.71 ( 26%) 11.44 ( 17%) 1048364 kB ( 10%)
phase finalize : 0.01 ( 0%) 0.03 ( 0%) 0.03 ( 0%) 0 kB ( 0%)
|name lookup : 0.07 ( 0%) 0.05 ( 1%) 0.18 ( 0%) 4950 kB ( 0%)
|overload resolution : 0.25 ( 0%) 0.06 ( 1%) 0.28 ( 0%) 64860 kB ( 1%)
garbage collection : 4.33 ( 7%) 0.00 ( 0%) 4.33 ( 6%) 0 kB ( 0%)
callgraph construction : 0.05 ( 0%) 0.01 ( 0%) 0.05 ( 0%) 9175 kB ( 0%)
callgraph optimization : 0.01 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 130 kB ( 0%)
ipa function summary : 0.03 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 508 kB ( 0%)
ipa dead code removal : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
ipa cp : 0.04 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 9582 kB ( 0%)
ipa inlining heuristics : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 1071 kB ( 0%)
ipa various optimizations : 0.17 ( 0%) 0.08 ( 1%) 0.23 ( 0%) 70938 kB ( 1%)
ipa reference : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
ipa pure const : 0.02 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 11 kB ( 0%)
ipa icf : 0.05 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 0 kB ( 0%)
ipa SRA : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1243 kB ( 0%)
cfg construction : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 697 kB ( 0%)
cfg cleanup : 0.15 ( 0%) 0.01 ( 0%) 0.10 ( 0%) 20 kB ( 0%)
trivially dead code : 0.08 ( 0%) 0.00 ( 0%) 0.08 ( 0%) 0 kB ( 0%)
df scan insns : 0.05 ( 0%) 0.01 ( 0%) 0.07 ( 0%) 1 kB ( 0%)
df multiple defs : 0.05 ( 0%) 0.01 ( 0%) 0.05 ( 0%) 0 kB ( 0%)
df reaching defs : 0.21 ( 0%) 0.07 ( 1%) 0.29 ( 0%) 0 kB ( 0%)
df live regs : 0.47 ( 1%) 0.02 ( 0%) 0.44 ( 1%) 2 kB ( 0%)
df live&initialized regs : 0.13 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 0 kB ( 0%)
df must-initialized regs : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
df use-def / def-use chains : 0.09 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 0 kB ( 0%)
df reg dead/unused notes : 0.21 ( 0%) 0.00 ( 0%) 0.20 ( 0%) 3419 kB ( 0%)
register information : 0.05 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 0 kB ( 0%)
alias analysis : 0.13 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 11423 kB ( 0%)
alias stmt walking : 3.24 ( 5%) 0.03 ( 0%) 3.20 ( 5%) 10 kB ( 0%)
register scan : 0.01 ( 0%) 0.01 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
rebuild jump labels : 0.03 ( 0%) 0.01 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
preprocessing : 0.05 ( 0%) 0.12 ( 2%) 0.23 ( 0%) 6351 kB ( 0%)
parser (global) : 0.23 ( 0%) 0.12 ( 2%) 0.43 ( 1%) 103190 kB ( 1%)
parser struct body : 0.04 ( 0%) 0.04 ( 1%) 0.09 ( 0%) 20009 kB ( 0%)
parser function body : 0.03 ( 0%) 0.04 ( 1%) 0.03 ( 0%) 5055 kB ( 0%)
parser inl. func. body : 0.05 ( 0%) 0.01 ( 0%) 0.05 ( 0%) 8238 kB ( 0%)
parser inl. meth. body : 0.04 ( 0%) 0.02 ( 0%) 0.06 ( 0%) 10981 kB ( 0%)
template instantiation : 0.26 ( 0%) 0.09 ( 1%) 0.32 ( 0%) 66396 kB ( 1%)
constant expression evaluation : 0.03 ( 0%) 0.02 ( 0%) 0.05 ( 0%) 240 kB ( 0%)
early inlining heuristics : 0.00 ( 0%) 0.03 ( 0%) 0.02 ( 0%) 17453 kB ( 0%)
inline parameters : 0.07 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 1726 kB ( 0%)
integration : 0.34 ( 1%) 0.13 ( 2%) 0.43 ( 1%) 72980 kB ( 1%)
tree gimplify : 0.09 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 12662 kB ( 0%)
tree eh : 0.47 ( 1%) 0.00 ( 0%) 0.50 ( 1%) 15868 kB ( 0%)
tree CFG construction : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 6763 kB ( 0%)
tree CFG cleanup : 0.07 ( 0%) 0.02 ( 0%) 0.12 ( 0%) 23 kB ( 0%)
tree tail merge : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
tree VRP : 0.10 ( 0%) 0.02 ( 0%) 0.13 ( 0%) 567 kB ( 0%)
tree Early VRP : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 857 kB ( 0%)
tree copy propagation : 0.07 ( 0%) 0.01 ( 0%) 0.06 ( 0%) 6 kB ( 0%)
tree PTA : 0.13 ( 0%) 0.00 ( 0%) 0.15 ( 0%) 138 kB ( 0%)
tree PHI insertion : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 1528 kB ( 0%)
tree SSA rewrite : 0.04 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 12162 kB ( 0%)
tree SSA other : 0.02 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 50 kB ( 0%)
tree SSA incremental : 0.78 ( 1%) 0.01 ( 0%) 0.77 ( 1%) 1543 kB ( 0%)
tree operand scan : 0.12 ( 0%) 0.14 ( 2%) 0.32 ( 0%) 7014 kB ( 0%)
dominator optimization : 0.06 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 3015 kB ( 0%)
tree SRA : 0.03 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 42 kB ( 0%)
isolate eroneous paths : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
tree CCP : 0.08 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 1693 kB ( 0%)
tree reassociation : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
tree PRE : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 6878 kB ( 0%)
tree FRE : 0.06 ( 0%) 0.00 ( 0%) 0.10 ( 0%) 2312 kB ( 0%)
tree code sinking : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1 kB ( 0%)
tree linearize phis : 0.01 ( 0%) 0.01 ( 0%) 0.01 ( 0%) 25 kB ( 0%)
tree backward propagate : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
tree forward propagate : 0.03 ( 0%) 0.01 ( 0%) 0.05 ( 0%) 1603 kB ( 0%)
tree conservative DCE : 0.04 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 6 kB ( 0%)
tree aggressive DCE : 0.17 ( 0%) 0.01 ( 0%) 0.19 ( 0%) 435 kB ( 0%)
tree DSE : 0.04 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 1028 kB ( 0%)
tree loop invariant motion : 0.02 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
scev constant prop : 0.01 ( 0%) 0.01 ( 0%) 0.00 ( 0%) 66 kB ( 0%)
complete unrolling : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 480 kB ( 0%)
tree iv optimization : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 915 kB ( 0%)
gimple CSE sin/cos : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
gimple widening/fma detection : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
dominance frontiers : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
dominance computation : 0.07 ( 0%) 0.01 ( 0%) 0.12 ( 0%) 0 kB ( 0%)
control dependences : 0.56 ( 1%) 0.00 ( 0%) 0.57 ( 1%) 0 kB ( 0%)
out of ssa : 0.02 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 121 kB ( 0%)
expand vars : 3.59 ( 6%) 0.00 ( 0%) 3.59 ( 5%) 1318 kB ( 0%)
expand : 0.06 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 50388 kB ( 1%)
post expand cleanups : 0.02 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 3072 kB ( 0%)
lower subreg : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 1565 kB ( 0%)
forward prop : 0.05 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 974 kB ( 0%)
CSE : 0.16 ( 0%) 0.01 ( 0%) 0.17 ( 0%) 3554 kB ( 0%)
dead code elimination : 0.06 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 0 kB ( 0%)
dead store elim1 : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 763 kB ( 0%)
dead store elim2 : 0.06 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 879 kB ( 0%)
loop init : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 916 kB ( 0%)
loop fini : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
CPROP : 0.16 ( 0%) 0.01 ( 0%) 0.22 ( 0%) 3142 kB ( 0%)
code hoisting : 0.73 ( 1%) 0.02 ( 0%) 0.75 ( 1%) 750 kB ( 0%)
CSE 2 : 0.05 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 1572 kB ( 0%)
branch prediction : 0.02 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 76 kB ( 0%)
combiner : 0.06 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 1119 kB ( 0%)
if-conversion : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1 kB ( 0%)
integrated RA : 0.25 ( 0%) 0.00 ( 0%) 0.25 ( 0%) 30591 kB ( 0%)
LRA non-specific : 0.11 ( 0%) 0.02 ( 0%) 0.12 ( 0%) 134 kB ( 0%)
LRA virtuals elimination : 0.06 ( 0%) 0.01 ( 0%) 0.08 ( 0%) 5444 kB ( 0%)
LRA create live ranges : 0.06 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 210 kB ( 0%)
LRA hard reg assignment : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
LRA rematerialization : 0.03 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
reload : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
reload CSE regs : 0.07 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 1609 kB ( 0%)
ree : 0.03 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
thread pro- & epilogue : 0.04 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 56 kB ( 0%)
if-conversion 2 : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
peephole 2 : 0.02 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 5 kB ( 0%)
hard reg cprop : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 2 kB ( 0%)
scheduling 2 : 0.27 ( 0%) 0.00 ( 0%) 0.29 ( 0%) 423 kB ( 0%)
machine dep reorg : 0.44 ( 1%) 0.09 ( 1%) 0.54 ( 1%) 411 kB ( 0%)
reorder blocks : 0.00 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 704 kB ( 0%)
shorten branches : 1.04 ( 2%) 0.24 ( 4%) 1.28 ( 2%) 0 kB ( 0%)
final : 4.80 ( 8%) 0.31 ( 5%) 5.11 ( 8%) 919932 kB ( 9%)
symout : 23.70 ( 39%) 3.53 ( 54%) 27.29 ( 41%) 5379540 kB ( 54%)
variable tracking : 0.35 ( 1%) 0.01 ( 0%) 0.35 ( 1%) 15251 kB ( 0%)
var-tracking dataflow : 0.52 ( 1%) 0.00 ( 0%) 0.53 ( 1%) 54 kB ( 0%)
var-tracking emit : 8.45 ( 14%) 1.14 ( 17%) 9.56 ( 14%) 3096662 kB ( 31%)
tree if-combine : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
uninit var analysis : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
straight-line strength reduction : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
store merging : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 241 kB ( 0%)
initialize rtl : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 12 kB ( 0%)
rest of compilation : 0.79 ( 1%) 0.00 ( 0%) 0.84 ( 1%) 2983 kB ( 0%)
remove unused locals : 0.08 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 127 kB ( 0%)
address taken : 0.06 ( 0%) 0.01 ( 0%) 0.05 ( 0%) 0 kB ( 0%)
rebuild frequencies : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
TOTAL : 60.42 6.56 67.18 10024848 kB
GCCs -ftime-report for -O2
Time variable usr sys wall GGC
phase setup : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1369 kB ( 0%)
phase parsing : 0.65 ( 2%) 0.41 ( 23%) 1.17 ( 3%) 216431 kB ( 21%)
phase lang. deferred : 0.07 ( 0%) 0.04 ( 2%) 0.11 ( 0%) 21507 kB ( 2%)
phase opt and generate : 35.18 ( 98%) 1.31 ( 74%) 36.54 ( 96%) 802079 kB ( 76%)
phase last asm : 0.14 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 8071 kB ( 1%)
|name lookup : 0.10 ( 0%) 0.03 ( 2%) 0.13 ( 0%) 4956 kB ( 0%)
|overload resolution : 0.21 ( 1%) 0.12 ( 7%) 0.34 ( 1%) 64834 kB ( 6%)
garbage collection : 0.26 ( 1%) 0.00 ( 0%) 0.26 ( 1%) 0 kB ( 0%)
dump files : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
callgraph construction : 0.05 ( 0%) 0.02 ( 1%) 0.05 ( 0%) 8167 kB ( 1%)
callgraph optimization : 0.03 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 130 kB ( 0%)
ipa function summary : 0.11 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 446 kB ( 0%)
ipa dead code removal : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 0 kB ( 0%)
ipa cp : 0.04 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 5526 kB ( 1%)
ipa inlining heuristics : 0.07 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 1665 kB ( 0%)
ipa various optimizations : 0.50 ( 1%) 0.25 ( 14%) 0.75 ( 2%) 155456 kB ( 15%)
ipa pure const : 0.03 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 11 kB ( 0%)
ipa icf : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 0 kB ( 0%)
ipa SRA : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 1357 kB ( 0%)
cfg construction : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 707 kB ( 0%)
cfg cleanup : 0.20 ( 1%) 0.00 ( 0%) 0.23 ( 1%) 377 kB ( 0%)
trivially dead code : 0.15 ( 0%) 0.00 ( 0%) 0.15 ( 0%) 0 kB ( 0%)
df scan insns : 0.09 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 0 kB ( 0%)
df multiple defs : 0.04 ( 0%) 0.01 ( 1%) 0.05 ( 0%) 0 kB ( 0%)
df reaching defs : 0.30 ( 1%) 0.11 ( 6%) 0.40 ( 1%) 0 kB ( 0%)
df live regs : 0.46 ( 1%) 0.00 ( 0%) 0.43 ( 1%) 3 kB ( 0%)
df live&initialized regs : 0.14 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 0 kB ( 0%)
df must-initialized regs : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
df use-def / def-use chains : 0.15 ( 0%) 0.00 ( 0%) 0.16 ( 0%) 0 kB ( 0%)
df reg dead/unused notes : 0.27 ( 1%) 0.00 ( 0%) 0.26 ( 1%) 4001 kB ( 0%)
register information : 0.07 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 0 kB ( 0%)
alias analysis : 0.17 ( 0%) 0.00 ( 0%) 0.18 ( 0%) 9305 kB ( 1%)
alias stmt walking : 9.38 ( 26%) 0.05 ( 3%) 9.48 ( 25%) 24 kB ( 0%)
register scan : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 637 kB ( 0%)
rebuild jump labels : 0.06 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 0 kB ( 0%)
preprocessing : 0.05 ( 0%) 0.07 ( 4%) 0.21 ( 1%) 6362 kB ( 1%)
parser (global) : 0.21 ( 1%) 0.16 ( 9%) 0.35 ( 1%) 105284 kB ( 10%)
parser struct body : 0.06 ( 0%) 0.09 ( 5%) 0.08 ( 0%) 18983 kB ( 2%)
parser function body : 0.02 ( 0%) 0.01 ( 1%) 0.09 ( 0%) 5055 kB ( 0%)
parser inl. func. body : 0.05 ( 0%) 0.02 ( 1%) 0.09 ( 0%) 6364 kB ( 1%)
parser inl. meth. body : 0.07 ( 0%) 0.00 ( 0%) 0.06 ( 0%) 11941 kB ( 1%)
template instantiation : 0.19 ( 1%) 0.09 ( 5%) 0.34 ( 1%) 66403 kB ( 6%)
constant expression evaluation : 0.04 ( 0%) 0.01 ( 1%) 0.05 ( 0%) 242 kB ( 0%)
early inlining heuristics : 0.02 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 17296 kB ( 2%)
inline parameters : 0.10 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 1486 kB ( 0%)
integration : 0.56 ( 2%) 0.27 ( 15%) 0.73 ( 2%) 162822 kB ( 16%)
tree gimplify : 0.09 ( 0%) 0.00 ( 0%) 0.10 ( 0%) 13415 kB ( 1%)
tree eh : 0.50 ( 1%) 0.00 ( 0%) 0.50 ( 1%) 15869 kB ( 2%)
tree CFG construction : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 6763 kB ( 1%)
tree CFG cleanup : 0.28 ( 1%) 0.01 ( 1%) 0.28 ( 1%) 23 kB ( 0%)
tree tail merge : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 12 kB ( 0%)
tree VRP : 0.29 ( 1%) 0.06 ( 3%) 0.33 ( 1%) 2992 kB ( 0%)
tree Early VRP : 0.04 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 492 kB ( 0%)
tree copy propagation : 0.15 ( 0%) 0.00 ( 0%) 0.15 ( 0%) 6 kB ( 0%)
tree PTA : 0.29 ( 1%) 0.01 ( 1%) 0.29 ( 1%) 1780 kB ( 0%)
tree PHI insertion : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 1528 kB ( 0%)
tree SSA rewrite : 0.10 ( 0%) 0.00 ( 0%) 0.10 ( 0%) 19503 kB ( 2%)
tree SSA other : 0.02 ( 0%) 0.01 ( 1%) 0.01 ( 0%) 49 kB ( 0%)
tree SSA incremental : 1.14 ( 3%) 0.01 ( 1%) 1.14 ( 3%) 5434 kB ( 1%)
tree operand scan : 0.33 ( 1%) 0.25 ( 14%) 0.73 ( 2%) 14869 kB ( 1%)
dominator optimization : 0.20 ( 1%) 0.01 ( 1%) 0.22 ( 1%) 15311 kB ( 1%)
backwards jump threading : 0.02 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 2 kB ( 0%)
tree SRA : 0.04 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 54 kB ( 0%)
isolate eroneous paths : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
tree CCP : 0.15 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 980 kB ( 0%)
tree split crit edges : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1266 kB ( 0%)
tree reassociation : 0.03 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
tree PRE : 0.19 ( 1%) 0.00 ( 0%) 0.23 ( 1%) 13536 kB ( 1%)
tree FRE : 0.23 ( 1%) 0.00 ( 0%) 0.18 ( 0%) 5550 kB ( 1%)
tree code sinking : 0.02 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 11 kB ( 0%)
tree linearize phis : 0.03 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 18 kB ( 0%)
tree backward propagate : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
tree forward propagate : 0.09 ( 0%) 0.00 ( 0%) 0.09 ( 0%) 67 kB ( 0%)
tree conservative DCE : 0.10 ( 0%) 0.00 ( 0%) 0.11 ( 0%) 14 kB ( 0%)
tree aggressive DCE : 0.36 ( 1%) 0.01 ( 1%) 0.37 ( 1%) 440 kB ( 0%)
tree DSE : 0.23 ( 1%) 0.00 ( 0%) 0.22 ( 1%) 6 kB ( 0%)
tree loop invariant motion : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
scev constant prop : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 67 kB ( 0%)
complete unrolling : 0.01 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 495 kB ( 0%)
tree iv optimization : 0.02 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1076 kB ( 0%)
tree SSA uncprop : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
gimple CSE sin/cos : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
gimple widening/fma detection : 0.03 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
tree strlen optimization : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
dominance frontiers : 0.04 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 0 kB ( 0%)
dominance computation : 0.23 ( 1%) 0.00 ( 0%) 0.26 ( 1%) 0 kB ( 0%)
control dependences : 1.20 ( 3%) 0.00 ( 0%) 1.20 ( 3%) 0 kB ( 0%)
out of ssa : 0.03 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 380 kB ( 0%)
expand vars : 8.58 ( 24%) 0.00 ( 0%) 8.58 ( 23%) 2617 kB ( 0%)
expand : 0.14 ( 0%) 0.04 ( 2%) 0.18 ( 0%) 101840 kB ( 10%)
post expand cleanups : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 3099 kB ( 0%)
varconst : 0.01 ( 0%) 0.00 ( 0%) 0.00 ( 0%) 1 kB ( 0%)
lower subreg : 0.03 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 1566 kB ( 0%)
forward prop : 0.10 ( 0%) 0.01 ( 1%) 0.09 ( 0%) 2911 kB ( 0%)
CSE : 0.19 ( 1%) 0.00 ( 0%) 0.18 ( 0%) 1427 kB ( 0%)
dead code elimination : 0.08 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 0 kB ( 0%)
dead store elim1 : 0.13 ( 0%) 0.00 ( 0%) 0.13 ( 0%) 2552 kB ( 0%)
dead store elim2 : 0.11 ( 0%) 0.00 ( 0%) 0.12 ( 0%) 5852 kB ( 1%)
loop init : 0.13 ( 0%) 0.00 ( 0%) 0.14 ( 0%) 998 kB ( 0%)
loop invariant motion : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 1 kB ( 0%)
CPROP : 0.02 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 51 kB ( 0%)
CSE 2 : 0.13 ( 0%) 0.00 ( 0%) 0.12 ( 0%) 578 kB ( 0%)
branch prediction : 0.11 ( 0%) 0.00 ( 0%) 0.11 ( 0%) 92 kB ( 0%)
combiner : 0.14 ( 0%) 0.00 ( 0%) 0.13 ( 0%) 4710 kB ( 0%)
if-conversion : 0.02 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 513 kB ( 0%)
integrated RA : 0.39 ( 1%) 0.00 ( 0%) 0.40 ( 1%) 33298 kB ( 3%)
LRA non-specific : 0.24 ( 1%) 0.01 ( 1%) 0.23 ( 1%) 3281 kB ( 0%)
LRA virtuals elimination : 0.06 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 7458 kB ( 1%)
LRA create live ranges : 0.03 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 682 kB ( 0%)
LRA hard reg assignment : 0.01 ( 0%) 0.01 ( 1%) 0.02 ( 0%) 0 kB ( 0%)
reload CSE regs : 0.32 ( 1%) 0.00 ( 0%) 0.31 ( 1%) 6070 kB ( 1%)
ree : 0.03 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 0 kB ( 0%)
thread pro- & epilogue : 0.07 ( 0%) 0.00 ( 0%) 0.07 ( 0%) 52 kB ( 0%)
if-conversion 2 : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
combine stack adjustments : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
peephole 2 : 0.04 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 2 kB ( 0%)
hard reg cprop : 0.05 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 1 kB ( 0%)
scheduling 2 : 0.57 ( 2%) 0.02 ( 1%) 0.60 ( 2%) 994 kB ( 0%)
machine dep reorg : 0.03 ( 0%) 0.00 ( 0%) 0.04 ( 0%) 411 kB ( 0%)
reorder blocks : 0.08 ( 0%) 0.00 ( 0%) 0.10 ( 0%) 1314 kB ( 0%)
shorten branches : 0.05 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 0 kB ( 0%)
final : 0.18 ( 0%) 0.01 ( 1%) 0.18 ( 0%) 27137 kB ( 3%)
symout : 0.21 ( 1%) 0.03 ( 2%) 0.23 ( 1%) 88187 kB ( 8%)
variable tracking : 0.44 ( 1%) 0.00 ( 0%) 0.46 ( 1%) 29713 kB ( 3%)
var-tracking dataflow : 1.88 ( 5%) 0.03 ( 2%) 1.91 ( 5%) 865 kB ( 0%)
var-tracking emit : 0.01 ( 0%) 0.00 ( 0%) 0.03 ( 0%) 926 kB ( 0%)
uninit var analysis : 0.00 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
straight-line strength reduction : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
store merging : 0.05 ( 0%) 0.00 ( 0%) 0.05 ( 0%) 1827 kB ( 0%)
initialize rtl : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 12 kB ( 0%)
address lowering : 0.01 ( 0%) 0.00 ( 0%) 0.01 ( 0%) 0 kB ( 0%)
rest of compilation : 0.33 ( 1%) 0.00 ( 0%) 0.34 ( 1%) 2296 kB ( 0%)
remove unused locals : 0.19 ( 1%) 0.00 ( 0%) 0.19 ( 1%) 127 kB ( 0%)
address taken : 0.07 ( 0%) 0.07 ( 4%) 0.14 ( 0%) 0 kB ( 0%)
rebuild frequencies : 0.02 ( 0%) 0.00 ( 0%) 0.02 ( 0%) 0 kB ( 0%)
TOTAL : 36.04 1.76 37.97 1049468 kB
Edited by Gabriel Ferreira