http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375
--- Comment #139 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-08-18 09:36:55 UTC --- oprofile of WPA: 649295 18.2243 lto1 lto1 lto_main() 341256 9.5783 lto1 lto1 htab_find_slot_with_hash 126567 3.5525 lto1 lto1 do_estimate_growth_1(cgraph_node*, void*) 97142 2.7266 lto1 lto1 htab_expand 89658 2.5165 libc-2.11.1.so libc-2.11.1.so _int_malloc 82117 2.3048 lto1 lto1 pointer_map_insert(pointer_map_t*, void const*) 60238 1.6907 lto1 lto1 iterative_hash_hashval_t(unsigned int, unsigned int) 58145 1.6320 lto1 lto1 ggc_internal_alloc_stat(unsigned long, char const*, int, char const*) 53679 1.5067 lto1 lto1 linemap_lookup(line_maps*, unsigned int) 47271 1.3268 lto1 lto1 lto_output_tree(output_block*, tree_node*, bool, bool) 43043 1.2081 lto1 lto1 gt_ggc_mx_lang_tree_node(void*) 42675 1.1978 lto1 lto1 verify_cgraph_node(cgraph_node*) 40609 1.1398 lto1 lto1 streamer_tree_cache_insert_1(streamer_tree_cache_d*, tree_node*, unsigned int*, bool) 40245 1.1296 lto1 lto1 ggc_marked_p(void const*) 39474 1.1079 libc-2.11.1.so libc-2.11.1.so memset 38955 1.0934 libc-2.11.1.so libc-2.11.1.so malloc_consolidate 32085 0.9006 lto1 lto1 streamer_write_uhwi_stream(lto_output_stream*, unsigned long) 31965 0.8972 lto1 lto1 ggc_set_mark(void const*) 31406 0.8815 lto1 lto1 lto_input_tree(lto_input_block*, data_in*) 29213 0.8199 lto1 lto1 streamer_read_tree_bitfields(lto_input_block*, tree_node*) 26846 0.7535 lto1 lto1 hash_pointer 25870 0.7261 libc-2.11.1.so libc-2.11.1.so memcpy We still spend insanely long time in walking types in lto_main (introduced by Michael's patch)