[Bug lto/45375] [meta-bug] Issues with building Mozilla with LTO
hubicka at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat May 12 20:46:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375
--- Comment #134 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-05-12 20:22:27 UTC ---
I tracked down the LTO/WHOPR code size difference. It is EH handling. EH frame
is empty for LTO build and quite large for WHOPR. Probably -fno-exceptions
getting lots on way to ltrans?
With memory stats there don't seem to be major suprises:
tree-phinodes.c:129 (allocate_phi_node) 110246192: 0.8% 0:
0.0% 3405296: 0.1% 409376: 0.0% 372408
gimple.c:600 (gimple_build_nop) 119935632: 0.8% 0:
0.0% 252144: 0.0% 0: 0.0% 2503912
gimplify.c:437 (create_tmp_var_raw) 119589760: 0.8% 0:
0.0% 1119200: 0.0% 0: 0.0% 754431
tree-vrp.c:3993 (build_assert_expr_for) 124663296: 0.9% 0:
0.0% 0: 0.0% 0: 0.0% 1298576
emit-rtl.c:3731 (make_jump_insn_raw) 118395600: 0.8% 0:
0.0% 11138960: 0.3% 0: 0.0% 1619182
tree-streamer-in.c:484 (streamer_alloc_tree) 90340024: 0.6% 0:
0.0% 51300472: 1.5% 4376: 0.0% 1420249
simplify-rtx.c:183 (simplify_gen_binary) 153607224: 1.1% 0:
0.0% 619968: 0.0% 0: 0.0% 6426133
fold-const.c:1870 (fold_convert_loc) 154700600: 1.1% 0:
0.0% 2160: 0.0% 0: 0.0% 3867569
ggc-common.c:253 (ggc_cleared_alloc_ptr_array_tw 80243272: 0.6%
1267966456:15.3% 76357960: 2.2% 11155352: 1.2% 1833025
lto/lto.c:281 (lto_read_in_decl_state) 835696: 0.0% 0:
0.0% 163487336: 4.6% 31116920: 3.4% 4176305
cfg.c:216 (connect_src) 174302184: 1.2% 623048:
0.0% 7861944: 0.2% 133632: 0.0% 4542618
cfg.c:226 (connect_dest) 177198328: 1.2% 5444688:
0.1% 8603432: 0.2% 347648: 0.0% 4628047
tree.c:9115 (make_vector_type) 206615472: 1.4% 0:
0.0% 6720: 0.0% 0: 0.0% 1229894
emit-rtl.c:639 (gen_rtx_MEM) 202133352: 1.4% 0:
0.0% 6629016: 0.2% 0: 0.0% 8698432
dwarf2cfi.c:386 (copy_cfi_row) 212886640: 1.5% 0:
0.0% 0: 0.0% 0: 0.0% 1400570
tree-inline.c:4851 (copy_decl_no_change) 211988960: 1.5% 0:
0.0% 7283480: 0.2% 0: 0.0% 1387268
tree-ssanames.c:78 (init_ssanames) 224107008: 1.6% 252869632:
3.1% 1536: 0.0% 153516032:16.6% 309555
lists.c:144 (alloc_EXPR_LIST) 236354400: 1.7% 0:
0.0% 5798160: 0.2% 0: 0.0% 10089690
gimple.c:2237 (gimple_copy) 268995784: 1.9% 0:
0.0% 4002872: 0.1% 644208: 0.1% 2530798
gimple-streamer-in.c:95 (input_gimple_stmt) 272340080: 1.9% 0:
0.0% 4356168: 0.1% 917040: 0.1% 2550173
tree-inline.c:4331 (copy_tree_r) 286698704: 2.0% 0:
0.0% 2053920: 0.1% 0: 0.0% 5999420
rtl.c:287 (copy_rtx) 291942896: 2.0% 0:
0.0% 318864: 0.0% 0: 0.0% 12315136
emit-rtl.c:393 (gen_raw_REG) 271761568: 1.9% 0:
0.0% 25188032: 0.7% 0: 0.0% 9279675
cselib.c:1896 (cselib_subst_to_values) 299291264: 2.1% 0:
0.0% 0: 0.0% 0: 0.0% 12658684
emit-rtl.c:5427 (init_emit) 354914672: 2.5% 19547728:
0.2% 0: 0.0% 102897600:11.1% 132600
cgraph.c:359 (cgraph_allocate_node) 0: 0.0% 0:
0.0% 401297520:11.4% 0: 0.0% 1286210
emit-rtl.c:3679 (make_insn_raw) 435416472: 3.0% 0:
0.0% 1754496: 0.0% 0: 0.0% 6071819
fold-const.c:7624 (build_fold_addr_expr_with_typ 463283920: 3.2% 0:
0.0% 72880: 0.0% 0: 0.0% 11583920
tree-ssanames.c:141 (make_ssa_name_fn) 459164960: 3.2% 0:
0.0% 5805920: 0.2% 0: 0.0% 5812136
cfg.c:142 (alloc_block) 469702464: 3.3% 0:
0.0% 20328672: 0.6% 0: 0.0% 4375278
toplev.c:964 (realloc_for_line_map) 0: 0.0% 357908640:
4.3% 1073741848:30.4% 184: 0.0% 9
tree.c:1228 (build_int_cst_wide) 1188738504: 8.3% 0:
0.0% 31478720: 0.9% 401175208:43.3% 295230
tree-streamer-in.c:495 (streamer_alloc_tree) 2413661896:16.9% 0:
0.0% 1163973288:32.9% 41183648: 4.4% 28110064
Total 14300758513 8262871404
3534486067 927547008 308001940
source location Garbage Freed
Leak Overhead Times
>From explicitely freed GGC mem there are few interesting cases:
alias.c:2807 (init_alias_analysis) 0: 0.0% 597580152:
7.2% 0: 0.0% 116629208:12.6% 1033104
reload1.c:663 (grow_reg_equivs) 0: 0.0%
2244546880:27.2% 0: 0.0% 1859904: 0.2% 204226
tree-ssa-operands.c:331 (ssa_operand_alloc) 0: 0.0%
1326537728:16.1% 1024: 0.0% 0: 0.0% 299739
ggc-common.c:253 (ggc_cleared_alloc_ptr_array_tw 80243272: 0.6%
1267966456:15.3% 76357960: 2.2% 11155352: 1.2% 1833025
Heap vectors:
source location Leak Peak
Times
-------------------------------------------------------
ipa-reference.c:171 (set_reference_vars_info) 0: 0.0% 11240664
13: 0.0%
ipa-pure-const.c:236 (set_function_state) 0: 0.0% 13472632
842964: 0.8%
ipa-inline-analysis.c:3010 (read_inline_edge_sum 0: 0.0% 17281356
870489: 0.8%
ipa-prop.c:136 (ipa_initialize_node_params) 0: 0.0% 29039016
666148: 0.6%
ipa-inline-analysis.c:804 (inline_summary_alloc) 0: 0.0% 30037064
1: 0.0%
ipa-prop.h:308 (ipa_check_create_node_params) 0: 0.0% 51448408
1: 0.0%
ipa-prop.h:313 (ipa_check_create_node_params) 0: 0.0% 51448448
1: 0.0%
....
tree-vect-slp.c:1553 (vect_analyze_slp_instance) 49136: 0.1% 80056
3273: 0.0%
tree-vect-slp.c:1521 (vect_analyze_slp_instance) 49256: 0.1% 80136
3273: 0.0%
tree-into-ssa.c:1049 (mark_phi_for_rewrite) 60776: 0.1% 71352
11: 0.0%
cfgloop.c:1151 (get_loop_exit_edges) 310312: 0.6% 316976
310269: 0.3%
tree-into-ssa.c:291 (get_ssa_name_ann) 352928: 0.6% 612512
13: 0.0%
passes.c:2214 (execute_one_pass) 934496: 1.7% 41942992
557113: 0.5%
tree-ssa-structalias.c:3861 (handle_lhs_call) 1491552: 2.6% 2359224
20716: 0.0%
ipa-inline-analysis.c:2645 (inline_merge_summary 2432148: 4.3% 2442960
157716: 0.1%
tree-ssa-loop-im.c:1556 (record_mem_ref_loc) 6634880:11.8% 10465232
595488: 0.6%
tree-ssa-loop-im.c:1545 (record_mem_ref_loc) 7587408:13.5% 12637232
579373: 0.5%
ipa-reference.c:186 (set_reference_optimization_ 10289688:18.3% 11240664
13: 0.0%
lto-cgraph.c:118 (lto_cgraph_encoder_encode) 12756976:22.7% 23348152
25665: 0.0%
ipa-ref.c:55 (ipa_record_reference) 13164872:23.4% 41932432
1000598: 0.9%
Total 56309568
107517917
I will try to look for ipa-ref related leaks... These should not outgrow other
IPA structures, but they are not _that_ off.
Bitmap Overall Allocated
Peak Leak searched search itr
---------------------------------------------------------------------------------
df-problems.c:550 (df_rd_transfer_functio 1401668 550959000
285854280 285854280 1202920 2686239
df-problems.c:4368 (df_md_alloc) 2420865 119625200
103991640 103991640 7882560 876516
df-problems.c:4370 (df_md_alloc) 2420865 47313120
44242920 44242920 0 0
df-problems.c:4366 (df_md_alloc) 2420865 11779160
11744960 11744960 0 0
df-problems.c:4367 (df_md_alloc) 2420865 26404920
26403880 26403880 271729 4
tree-ssa-structalias.c:1249 (build_pred_g 2603931 225511920
225511920 225511920 187843 110177
tree-ssa-tail-merge.c:1316 (deps_ok_for_r 593970 30665680
16874760 16874760 632 40
tree-ssa-structalias.c:5890 (find_what_va 2328862 113793160
102564760 102564760 710275 853412
df-problems.c:1389 (df_live_alloc) 1806260 76241920
12459320 12459320 1826 0
df-problems.c:1390 (df_live_alloc) 1806260 281713360
38869560 38868680 2579692 1190624
df-problems.c:1392 (df_live_alloc) 1806260 991814240
40633200 40629040 221318 201166
dse.c:2452 (copy_fixed_regs) 1132737 90618960
90618960 90618960 0 0
df-problems.c:1391 (df_live_alloc) 1806260 1491519600
40632440 40628480 536753 522104
tree-ssa-loop-im.c:1512 (mem_ref_alloc) 567787 33164080
12373120 12372440 0 0
reload1.c:495 (new_insn_chain) 5276019 402655640
401709040 401709040 24691 0
tree-ssa-pre.c:619 (bitmap_set_new) 32638618 990092880
562280520 562280440 20419995 15879008
tree-ssa-pre.c:620 (bitmap_set_new) 32638618 990371960
574119360 574119280 16846876 10621314
df-problems.c:261 (df_rd_alloc) 2741972 138884160
129954960 129954960 2949744 610463
reload1.c:496 (new_insn_chain) 5276019 151328120
151029880 151029880 388762 10455
tree-ssa-structalias.c:2559 (solve_graph) 3169222 256948000
256292160 256292160 0 0
tree-ssanames.c:90 (init_ssanames) 309555 25951800
12382440 12382200 18777080 7410198
tree-ssa-structalias.c:2113 (label_visit) 5147637 425173040
425173040 425173040 105478 61601
tree-ssa-structalias.c:1108 (add_implicit 4593393 382459560
382459560 382459560 726652 628375
tree-ssa-structalias.c:1123 (add_pred_gra 3379786 273371640
273371640 273371640 121581 98415
tree-ssa-structalias.c:1144 (add_graph_ed 2917231 246071240
174844960 174844960 681820 290190
df-problems.c:262 (df_rd_alloc) 2741972 530288680
506786360 506786360 0 0
df-problems.c:263 (df_rd_alloc) 2741972 304266640
233174000 233172280 108 108
tree-ssa-structalias.c:361 (new_var_info) 7385339 467574280
360290520 360290520 44320 85263
Alloc-pool Kind Elt size Pools Allocated (elts) Peak
(elts) Leak (elts)
--------------------------------------------------------------------------------------------------------------
insn_info_pool 56 204084 538278104( 9612109) 830704(
14834) 0( 0)
bb_info_pool 56 204084 133331912( 2380927) 133616(
2386) 0( 0)
rtx_group_info_pool 112 204084 56406672( 503631) 138768(
1239) 0( 0)
Bitmap sets 80 204085 2611089440( 32638618) 8824880(
110311) 0( 0)
deferred_change_pool 24 204084 52128( 2172) 288(
12) 0( 0)
pre_expr nodes 16 204085 138421792( 8651362) 981200(
61325) 0( 0)
cse_store_info_pool 104 1972759 98188584( 944121) 485472(
4668) 0( 0)
value 16 843341 462086672( 28880417) 245280(
15330) 0( 0)
VN phis 32 408170 88913824( 2778557) 83712(
2616) 0( 0)
Constraint pool 32 204085 353203136( 11037598) 594528(
18579) 0( 0)
struct case_node pool 48 4743 1096848( 22851) 13680(
285) 0( 0)
Variable info pool 72 204085 531744408( 7385339) 601560(
8355) 0( 0)
IPA-CP value sources 32 1 4760736( 148773) 4260384(
133137) 0( 0)
et_occ pool 48 2116800 3595771776( 74911912) 688128(
14336) 0( 0)
VN references 56 408170 323302616( 5773261) 3466680(
61905) 0( 0)
et_node pool 64 2116800 2533145216( 39580394) 458880(
7170) 0( 0)
dep_node 80 102042 734534240( 9181678) 4233840(
52923) 0( 0)
df_chain_block pool 16 251647 436908640( 27306790) 2391808(
149488) 0( 0)
IPA-CP values 80 1 5005280( 62566) 5005280(
62566) 0( 0)
df_scan ref base 56 204084 6325340840( 112952515) 2948400(
52650) 0( 0)
SRA accesses 120 102043 13514520( 112621) 92760(
773) 0( 0)
df_scan ref artificial 64 204084 901356672( 14083698) 899200(
14050) 0( 0)
df_scan ref regular 64 204084 2184845888( 34138217) 2431168(
37987) 0( 0)
allocnos 160 102042 281957120( 1762232) 1250560(
7816) 0( 0)
elt_list 16 843341 619139328( 38696208) 240832(
15052) 0( 0)
elt_loc_list 24 843341 1153775424( 48073976) 521760(
21740) 0( 0)
df_scan insn 48 204084 926799792( 19308329) 1070400(
22300) 0( 0)
live ranges 40 102042 106931600( 2673290) 508880(
12722) 0( 0)
df_scan reg 16 204084 934613472( 58413342) 783216(
48951) 0( 0)
SRA links 24 102043 402672( 16778) 4848(
202) 0( 0)
rtx_store_info_pool 104 204084 19621264( 188666) 213096(
2049) 0( 0)
strinfo_struct pool 56 102042 324184( 5789) 1344(
24) 0( 0)
edge predicates 40 1 3540840( 88521) 2030280(
50757) 0( 0)
original_copy 8 509567 3890016( 486252) 13264(
1658) 0( 0)
cost vectors 192 2551050 192202512( 1001054) 419392(
2184) 0( 0)
operand entry pool 24 204084 18481680( 770070) 89424(
3726) 0( 0)
objects 72 102042 126880704( 1762232) 562752(
7816) 0( 0)
deps_list 16 102042 385122400( 24070150) 847120(
52945) 0( 0)
cselib_val_list 40 843341 1155216680( 28880417) 613200(
15330) 0( 0)
copies 80 102042 27013920( 337674) 324480(
4056) 0( 0)
read_info_pool 32 204084 84871968( 2652249) 91104(
2847) 0( 0)
GIMPLE statements
Kind Stmts Bytes
---------------------------------------
assignments 6803719 658739112
phi nodes 372408 112832736
conditionals 1121446 107658816
everything else 3704547 292211544
Kind Nodes Bytes
---------------------------------------
decls 15883790 -1764091088
types 6197660 1041206880
blocks 1809846 144787680
stmts 52888 3384832
refs 11131010 561131416
exprs 31414309 1351944944
constants 2761315 97231060
identifiers 1227582 49103280
vecs 295323 417871880
binfos 1420249 141631744
ssa names 5812136 464970880
constructors 340124 8162976
random kinds 3280618 131225128
lang_decl kinds 0 0
lang_type kinds 0 0
omp clauses 0 0
---------------------------------------
Total 81626850 -1646405684
More information about the Gcc-bugs
mailing list