This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Timing information for CFG manipulations
- To: jh at suse dot cz
- Subject: Timing information for CFG manipulations
- From: Brad Lucier <lucier at math dot purdue dot edu>
- Date: Sat, 13 Oct 2001 22:32:06 -0500 (EST)
- Cc: lucier at math dot purdue dot edu (Brad Lucier), gcc at gcc dot gnu dot org
Jan:
Here is timing information for today's CVS version of 3.1 configured
with --enable-languages='c' --enable-checking=no and built with
'make bootstrap BOOT_CFLAGS="-O2 -g -pg" BOOT_LDFLAGS="-O2 -g -pg"'
when called on the file at
http://www.math.purdue.edu/~lucier/_num.i.gz
dino01% /u/lucier/local/gcc-3.1/lib/gcc-lib/i686-pc-linux-gnu/3.1/cc1 -fpic -fomit-frame-pointer -O1 -fno-math-errno -fno-strict-aliasing -mcpu=athlon -march=athlon _num.i
__sgn __sgnf __sgnl atan2 atan2f atan2l __atan2l fmod fmodf fmodl sqrt sqrtf sqrtl __sqrtl fabs fabsf fabsl __fabsl atan atanf atanl __sgn1l floor floorf floorl ceil ceilf ceill ldexp log1p log1pf log1pl asinh asinhf asinhl acosh acoshf acoshl atanh atanhf atanhl hypot hypotf hypotl logb logbf logbl drem dremf dreml __finite ___H__20___num {GC 25431k -> 7824k} {GC 10943k -> 7882k} {GC 10372k -> 7769k} {GC 13951k -> 8583k} {GC 14265k -> 9195k} ___init_proc {GC 12103k -> 9289k} ____20___num
Execution times (seconds)
garbage collection : 1.11 ( 0%) usr 0.00 ( 0%) sys 1.12 ( 0%) wall
cfg construction : 269.67 (34%) usr 0.32 ( 0%) sys 270.02 (26%) wall
cfg cleanup : 51.19 ( 6%) usr 0.01 ( 0%) sys 51.20 ( 5%) wall
preprocessing : 0.57 ( 0%) usr 0.10 ( 0%) sys 0.75 ( 0%) wall
lexical analysis : 0.75 ( 0%) usr 0.16 ( 0%) sys 0.83 ( 0%) wall
parser : 2.61 ( 0%) usr 0.13 ( 0%) sys 2.73 ( 0%) wall
varconst : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall
jump : 0.78 ( 0%) usr 0.00 ( 0%) sys 0.80 ( 0%) wall
CSE : 1.75 ( 0%) usr 0.00 ( 0%) sys 1.77 ( 0%) wall
global CSE : 41.63 ( 5%) usr 0.50 ( 0%) sys 42.22 ( 4%) wall
loop analysis : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall
flow analysis : 24.36 ( 3%) usr 0.16 ( 0%) sys 24.52 ( 2%) wall
combiner : 1.76 ( 0%) usr 0.00 ( 0%) sys 1.77 ( 0%) wall
if-conversion : 1.18 ( 0%) usr 0.04 ( 0%) sys 1.20 ( 0%) wall
local alloc : 0.65 ( 0%) usr 0.01 ( 0%) sys 0.67 ( 0%) wall
global alloc : 4.71 ( 1%) usr 0.06 ( 0%) sys 4.81 ( 0%) wall
reload CSE regs : 10.35 ( 1%) usr 0.01 ( 0%) sys 10.36 ( 1%) wall
flow 2 : 267.66 (34%) usr 251.44 (98%) sys 519.08 (49%) wall
if-conversion 2 : 0.99 ( 0%) usr 0.02 ( 0%) sys 1.02 ( 0%) wall
shorten branches : 0.24 ( 0%) usr 0.01 ( 0%) sys 0.95 ( 0%) wall
reg stack : 22.24 ( 3%) usr 2.84 ( 1%) sys 25.08 ( 2%) wall
final : 87.78 (11%) usr 0.02 ( 0%) sys 87.81 ( 8%) wall
rest of compilation : 1.26 ( 0%) usr 0.00 ( 0%) sys 1.25 ( 0%) wall
TOTAL : 793.36 255.83 1050.08
...
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
44.47 348.50 348.50 7450804 0.05 0.05 remove_edge
32.36 602.16 253.66 9556 26.54 26.54 sbitmap_vector_alloc
3.79 631.85 29.69 72698858 0.00 0.00 bitmap_operation
2.79 653.73 21.88 13 1683.08 4184.80 calculate_global_regs_live
2.15 670.57 16.84 9320420 0.00 0.00 cached_make_edge
1.28 680.62 10.05 67331 0.15 0.37 try_crossjump_bb
0.99 688.41 7.79 88484235 0.00 0.00 sbitmap_zero
0.92 695.63 7.22 htab_traverse
0.66 700.82 5.19 27855 0.19 0.19 sbitmap_intersection_of_succs
0.56 705.23 4.41 207472 0.02 0.02 try_forward_edges
0.51 709.26 4.03 6 671.67 993.14 compute_laterin
0.47 712.95 3.69 6270 0.59 0.59 expunge_block
0.47 716.63 3.68 31 118.71 118.71 find_unreachable_blocks
0.44 720.09 3.46 9502 0.36 1.18 sbitmap_vector_zero
0.42 723.39 3.30 6047223 0.00 0.00 rtx_renumbered_equal_p
0.39 726.44 3.05 9277592 0.00 0.00 make_label_edge
0.38 729.41 2.97 61978208 0.00 0.00 active_insn_p
0.38 732.38 2.97 451 6.59 6.59 propagate_freq
0.33 734.93 2.55 29217 0.09 0.09 sbitmap_intersection_of_preds
0.31 737.35 2.42 15 161.33 162.00 calc_idoms
0.26 739.35 2.00 101420319 0.00 0.00 bitmap_element_link
0.26 741.35 2.00 9485 0.21 30.01 make_edges
...
-----------------------------------------------
0.00 0.00 3/7450804 redirect_edge_succ_nodup [627]
0.00 0.00 18/7450804 purge_dead_edges [321]
0.00 0.00 36/7450804 try_redirect_by_replacing_jump [284]
0.00 0.00 80/7450804 find_sub_basic_blocks [11]
0.05 0.00 1066/7450804 merge_blocks_nomove [88]
0.17 0.00 3729/7450804 try_crossjump_to_edge [27]
0.25 0.00 5360/7450804 flow_delete_block [41]
348.02 0.00 7440512/7450804 clear_edges [9]
[8] 44.5 348.50 0.00 7450804 remove_edge [8]
-----------------------------------------------
0.13 104.41 3/10 free_basic_block_vars [15]
0.30 243.61 7/10 find_basic_blocks [14]
[9] 44.5 0.43 348.02 10 clear_edges [9]
348.02 0.00 7440512/7450804 remove_edge [8]
-----------------------------------------------
0.00 0.30 10/9485 find_basic_blocks [14]
2.00 282.37 9475/9485 find_sub_basic_blocks [11]
[10] 36.3 2.00 282.67 9485 make_edges [10]
251.51 0.00 9475/9556 sbitmap_vector_alloc [13]
16.83 0.00 9316105/9320420 cached_make_edge [26]
3.45 7.77 9475/9502 sbitmap_vector_zero [28]
3.05 0.00 9277592/9277592 make_label_edge [48]
0.00 0.02 44110/100771 returnjump_p [260]
0.01 0.01 47975/50931 computed_jump_p [399]
0.01 0.00 75239/93463 next_nonnote_insn [555]
0.00 0.00 47975/13489246 find_reg_note [82]
-----------------------------------------------
0.00 3.27 109/9475 commit_edge_insertions [42]
0.04 281.15 9366/9475 split_all_insns [12]
[11] 36.3 0.04 284.42 9475 find_sub_basic_blocks [11]
2.00 282.37 9475/9485 make_edges [10]
0.00 0.03 80/597 split_block [154]
0.02 0.00 9475/18796 purge_dead_edges [321]
0.00 0.00 80/7450804 remove_edge [8]
0.00 0.00 9731/13489246 find_reg_note [82]
0.00 0.00 87/2981 can_throw_internal [943]
-----------------------------------------------
0.02 281.37 9/9 rest_of_compilation [7]
[12] 35.9 0.02 281.37 9 split_all_insns [12]
0.04 281.15 9366/9475 find_sub_basic_blocks [11]
0.00 0.19 188995/188995 split_insn [163]
0.00 0.00 9/88484235 sbitmap_zero [31]
0.00 0.00 9/553 sbitmap_alloc [1629]
-----------------------------------------------
0.08 0.00 3/9556 flow_loops_find [59]
0.16 0.00 6/9556 estimate_probability [33]
0.16 0.00 6/9556 if_convert [25]
0.32 0.00 12/9556 optimize_mode_switching [19]
1.43 0.00 54/9556 pre_edge_lcm [24]
251.51 0.00 9475/9556 make_edges [10]
[13] 32.4 253.66 0.00 9556 sbitmap_vector_alloc [13]
-----------------------------------------------
0.00 244.39 10/10 rest_of_compilation [7]
[14] 31.2 0.00 244.39 10 find_basic_blocks [14]
0.30 243.61 7/10 clear_edges [9]
0.00 0.30 10/9485 make_edges [10]
0.06 0.01 10/10 find_basic_blocks_1 [237]
0.05 0.00 10/10 compute_bb_for_insn [279]
0.04 0.00 10/10 count_basic_blocks [307]
0.00 0.01 10/14 tidy_fallthru_edges [446]
0.00 0.00 10/1239368 timevar_push [150]
0.00 0.00 10/262 varray_init [1703]
0.00 0.00 10/9317 get_max_uid [1467]
-----------------------------------------------
0.00 10.02 7/73 life_analysis [18]
0.00 12.89 9/73 if_convert [25]
0.00 81.62 57/73 rest_of_compilation [7]
[15] 13.3 0.00 104.53 73 free_basic_block_vars [15]
0.13 104.41 3/10 clear_edges [9]
-----------------------------------------------
0.00 5.54 1/11 if_convert [25]
0.00 16.61 3/11 optimize_mode_switching [19]
0.00 38.75 7/11 life_analysis [18]
[16] 7.8 0.00 60.89 11 update_life_info [16]
21.88 32.52 13/13 calculate_global_regs_live [17]
0.00 5.27 3/22 cleanup_cfg [20]
0.08 1.09 74687/132182 propagate_block [61]
0.02 0.00 3/5 count_or_remove_death_notes [312]
0.01 0.00 74687/219660 bitmap_copy [270]
0.00 0.00 11/518311 bitmap_initialize [339]
0.00 0.00 11/1374187 bitmap_clear [258]
-----------------------------------------------
21.88 32.52 13/13 update_life_info [16]
[17] 6.9 21.88 32.52 13 calculate_global_regs_live [17]
29.49 2.06 72205551/72698858 bitmap_operation [22]
0.06 0.83 56808/132182 propagate_block [61]
0.00 0.02 56808/56808 bitmap_equal_p [383]
0.02 0.00 100467/219660 bitmap_copy [270]
0.01 0.00 255232/1933812 bitmap_set_bit [198]
0.01 0.00 328395/1374187 bitmap_clear [258]
0.01 0.00 112039/518311 bitmap_initialize [339]
0.00 0.00 1828/101420319 bitmap_element_link [62]
0.00 0.00 1/88484235 sbitmap_zero [31]
-----------------------------------------------
0.00 7.01 1/7 reg_to_stack [29]
0.00 42.07 6/7 rest_of_compilation [7]
[18] 6.3 0.00 49.08 7 life_analysis [18]
0.00 38.75 7/11 update_life_info [16]
0.00 10.02 7/73 free_basic_block_vars [15]
0.07 0.12 6/16 init_alias_analysis [99]
0.04 0.06 7/10 delete_noop_moves [191]
0.00 0.02 3/3 notice_stack_pointer_modification [457]
0.00 0.00 7/7 allocate_bb_life_data [700]
0.00 0.00 7/10 allocate_reg_life_data [688]
0.00 0.00 7/7 mark_regs_live_at_end [1221]
0.00 0.00 6/16 end_alias_analysis [1920]
-----------------------------------------------
0.31 39.43 3/3 rest_of_compilation [7]
[19] 5.1 0.31 39.43 3 optimize_mode_switching [19]
0.00 21.63 6/6 pre_edge_lcm [24]
0.00 16.61 3/11 update_life_info [16]
0.11 0.66 1/5 commit_edge_insertions [42]
0.32 0.00 12/9556 sbitmap_vector_alloc [13]
0.01 0.02 3/21 sbitmap_vector_ones [151]
0.01 0.01 37484/2679415 note_stores <cycle 7> [133]
0.00 0.01 12/9502 sbitmap_vector_zero [28]
0.00 0.01 37243/80229 get_attr_type [371]
0.01 0.00 23837/460580 reg_set_to_hard_reg_set [147]
0.01 0.00 9292/9292 add_seginfo [591]
0.00 0.00 14620/91501 gen_sequence [370]
0.00 0.00 28568/474001 asm_noperands [354]
0.00 0.00 3528/60871 recog_memoized_1 [384]
0.00 0.00 14620/108004 start_sequence [625]
0.00 0.00 3/10 allocate_reg_life_data [688]
0.00 0.00 18576/3738386 sbitmap_not [186]
0.00 0.00 14606/14838 emit_insn_before [935]
0.00 0.00 5/5 emit_i387_cw_initialization [1111]
0.00 0.00 14/123 insert_insn_on_edge [1029]
0.00 0.00 10/68 assign_386_stack_local [1098]
0.00 0.00 5/2679415 emit_move_insn <cycle 7> [450]
0.00 0.00 24525/24525 reg_dies [1412]
0.00 0.00 14634/108004 end_sequence [1347]
0.00 0.00 9292/9292 new_seginfo [1469]
0.00 0.00 48/48 make_preds_opaque [1877]
0.00 0.00 6/6 free_edge_list [1966]
-----------------------------------------------
0.00 5.27 3/22 update_life_info [16]
0.02 33.37 19/22 rest_of_compilation [7]
[20] 4.9 0.02 38.63 22 cleanup_cfg [20]
0.08 34.85 22/22 try_optimize_cfg [21]
0.00 3.70 31/31 delete_unreachable_blocks [43]
0.00 0.00 22/1239368 timevar_push [150]
0.00 0.00 22/1239368 timevar_pop [160]
0.00 0.00 44/136318 free_EXPR_LIST_list [1340]
-----------------------------------------------
0.08 34.85 22/22 cleanup_cfg [20]
[21] 4.5 0.08 34.85 22 try_optimize_cfg [21]
10.05 15.13 67331/67331 try_crossjump_bb [23]
4.41 0.07 207472/207472 try_forward_edges [38]
0.00 2.34 3138/5348 flow_delete_block [41]
0.07 1.69 207472/207472 try_simplify_condjump [67]
0.00 0.39 6/6 remove_fake_edges [112]
0.00 0.39 1099/1099 merge_blocks [113]
0.00 0.22 2011/12100 delete_insn_chain [74]
0.00 0.06 74089/81227 redirect_edge_and_branch [254]
0.01 0.01 95491/25030880 forwarder_block_p [37]
0.01 0.00 85868/11904476 onlyjump_p [68]
0.00 0.00 2011/157599 reg_mentioned_p [274]
0.00 0.00 350/7709 redirect_edge_succ_nodup [627]
0.00 0.00 6/6 add_noreturn_fake_exit_edges [1962]
-----------------------------------------------
0.00 0.00 5/72698858 find_if_case_1 [470]
0.00 0.00 270/72698858 dead_or_predicable [729]
0.01 0.00 18572/72698858 update_equiv_regs [164]
0.02 0.00 56808/72698858 bitmap_equal_p [383]
0.17 0.01 417652/72698858 finish_spills [106]
29.49 2.06 72205551/72698858 calculate_global_regs_live [17]
[22] 4.1 29.69 2.07 72698858 bitmap_operation [22]
1.98 0.00 100601217/101420319 bitmap_element_link [62]
0.09 0.00 3360247/4560586 bitmap_element_allocate [193]
-----------------------------------------------
10.05 15.13 67331/67331 try_optimize_cfg [21]
[23] 3.2 10.05 15.13 67331 try_crossjump_bb [23]
1.31 13.82 6407969/6407969 try_crossjump_to_edge [27]
-----------------------------------------------