This is the mail archive of the gcc-regression@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

A recent patch decreased GCC's memory consumption.


Hi,

I am a friendly script caring about memory consumption in GCC.  Please
contact jh@suse.cz if something is going wrong.

Comparing memory consumption on compilation of combine.i, insn-attrtab.i,
and generate-3.4.ii I got:


comparing empty function compilation at -O0 level:
    Overall memory needed: 8332k -> 8331k
    Peak memory use before GGC: 3393k
    Peak memory use after GGC: 3040k
    Maximum of released memory in single GGC run: 353k
    Garbage: 525k
    Leak: 3794k
    Overhead: 914k
    GGC runs: 3

comparing empty function compilation at -O0 -g level:
    Overall memory needed: 8348k -> 8347k
    Peak memory use before GGC: 3420k
    Peak memory use after GGC: 3068k
    Maximum of released memory in single GGC run: 352k
    Garbage: 527k
    Leak: 3827k
    Overhead: 918k
    GGC runs: 3

comparing empty function compilation at -O1 level:
    Overall memory needed: 8388k -> 8387k
    Peak memory use before GGC: 3393k
    Peak memory use after GGC: 3040k
    Maximum of released memory in single GGC run: 353k
    Garbage: 530k
    Leak: 3797k
    Overhead: 914k
    GGC runs: 3

comparing empty function compilation at -O2 level:
    Overall memory needed: 8404k -> 8407k
    Peak memory use before GGC: 3393k
    Peak memory use after GGC: 3041k
    Maximum of released memory in single GGC run: 352k
    Garbage: 533k
    Leak: 3798k
    Overhead: 915k
    GGC runs: 3

comparing empty function compilation at -O3 level:
    Overall memory needed: 8404k -> 8407k
    Peak memory use before GGC: 3393k
    Peak memory use after GGC: 3041k
    Maximum of released memory in single GGC run: 352k
    Garbage: 533k
    Leak: 3798k
    Overhead: 915k
    GGC runs: 3

comparing combine.c compilation at -O0 level:
    Overall memory needed: 23768k -> 23767k
    Peak memory use before GGC: 10330k
    Peak memory use after GGC: 9564k
    Maximum of released memory in single GGC run: 1905k
    Garbage: 39056k
    Leak: 8852k
    Overhead: 5686k
    GGC runs: 254

comparing combine.c compilation at -O0 -g level:
    Overall memory needed: 25644k -> 25643k
    Peak memory use before GGC: 11996k
    Peak memory use after GGC: 11356k
    Maximum of released memory in single GGC run: 1515k
    Garbage: 39404k
    Leak: 11746k
    Overhead: 6392k
    GGC runs: 250

comparing combine.c compilation at -O1 level:
    Overall memory needed: 36312k -> 36311k
    Peak memory use before GGC: 18985k
    Peak memory use after GGC: 18794k
    Maximum of released memory in single GGC run: 1370k
    Garbage: 53258k
    Leak: 8907k
    Overhead: 6747k
    GGC runs: 326

comparing combine.c compilation at -O2 level:
    Overall memory needed: 38556k -> 38555k
    Peak memory use before GGC: 19039k
    Peak memory use after GGC: 18850k
    Maximum of released memory in single GGC run: 1404k
    Garbage: 71803k
    Leak: 9036k
    Overhead: 8881k
    GGC runs: 387

comparing combine.c compilation at -O3 level:
    Overall memory needed: 41372k -> 41371k
    Peak memory use before GGC: 19283k
    Peak memory use after GGC: 18975k
    Maximum of released memory in single GGC run: 2104k
    Garbage: 93375k
    Leak: 9146k
    Overhead: 11543k
    GGC runs: 417

comparing insn-attrtab.c compilation at -O0 level:
    Overall memory needed: 140364k -> 140363k
    Peak memory use before GGC: 60821k
    Peak memory use after GGC: 34071k
    Maximum of released memory in single GGC run: 34384k
    Garbage: 132274k
    Leak: 11358k
    Overhead: 14976k
    GGC runs: 197

comparing insn-attrtab.c compilation at -O0 -g level:
    Overall memory needed: 141604k -> 141599k
    Peak memory use before GGC: 61983k
    Peak memory use after GGC: 35232k
    Maximum of released memory in single GGC run: 34385k
    Garbage: 132509k
    Leak: 13051k
    Overhead: 15373k
    GGC runs: 199

comparing insn-attrtab.c compilation at -O1 level:
    Overall memory needed: 151588k -> 151607k
    Peak memory use before GGC: 59319k
    Peak memory use after GGC: 55094k
    Maximum of released memory in single GGC run: 23586k
    Garbage: 217482k
    Leak: 11470k
    Overhead: 25168k
    GGC runs: 228

comparing insn-attrtab.c compilation at -O2 level:
    Overall memory needed: 191008k -> 190999k
    Peak memory use before GGC: 59202k
    Peak memory use after GGC: 55155k
    Maximum of released memory in single GGC run: 21338k
    Garbage: 252772k
    Leak: 11465k
    Overhead: 30578k
    GGC runs: 253

comparing insn-attrtab.c compilation at -O3 level:
    Overall memory needed: 196512k -> 196515k
    Peak memory use before GGC: 71757k
    Peak memory use after GGC: 65988k
    Maximum of released memory in single GGC run: 22951k
    Garbage: 282143k
    Leak: 11473k
    Overhead: 32376k
    GGC runs: 256

comparing Gerald's testcase PR8361 compilation at -O0 level:
    Overall memory needed: 156636k -> 156623k
    Peak memory use before GGC: 91667k
    Peak memory use after GGC: 90747k
    Maximum of released memory in single GGC run: 18002k
    Garbage: 210852k
    Leak: 55680k
    Overhead: 26877k
    GGC runs: 395

comparing Gerald's testcase PR8361 compilation at -O0 -g level:
    Overall memory needed: 177684k -> 177683k
    Peak memory use before GGC: 104556k
    Peak memory use after GGC: 103520k
    Maximum of released memory in single GGC run: 18638k
    Garbage: 216710k
    Leak: 79109k
    Overhead: 32846k
    GGC runs: 373

comparing Gerald's testcase PR8361 compilation at -O1 level:
    Overall memory needed: 139146k -> 139149k
    Peak memory use before GGC: 93659k
    Peak memory use after GGC: 92731k
    Maximum of released memory in single GGC run: 17407k
    Garbage: 319596k
    Leak: 55592k
    Overhead: 32823k
    GGC runs: 502

comparing Gerald's testcase PR8361 compilation at -O2 level:
    Overall memory needed: 148630k -> 148629k
    Peak memory use before GGC: 94143k
    Peak memory use after GGC: 93210k
    Maximum of released memory in single GGC run: 17406k
    Garbage: 375988k
    Leak: 56356k
    Overhead: 39011k
    GGC runs: 560

comparing Gerald's testcase PR8361 compilation at -O3 level:
    Overall memory needed: 152230k -> 152225k
    Peak memory use before GGC: 95177k
    Peak memory use after GGC: 94102k
    Maximum of released memory in single GGC run: 17828k
    Garbage: 417576k
    Leak: 56674k
    Overhead: 42530k
    GGC runs: 588

comparing PR rtl-optimization/28071 testcase compilation at -O0 level:
    Overall memory needed: 381009k -> 381012k
    Peak memory use before GGC: 103474k
    Peak memory use after GGC: 59127k
    Maximum of released memory in single GGC run: 50583k
    Garbage: 179674k
    Leak: 9006k
    Overhead: 31653k
    GGC runs: 65

comparing PR rtl-optimization/28071 testcase compilation at -O0 -g level:
    Overall memory needed: 381825k -> 381824k
    Peak memory use before GGC: 104120k
    Peak memory use after GGC: 59774k
    Maximum of released memory in single GGC run: 50582k
    Garbage: 179778k
    Leak: 10775k
    Overhead: 32148k
    GGC runs: 72

comparing PR rtl-optimization/28071 testcase compilation at -O1 level:
    Overall memory needed: 294244k -> 293979k
    Peak memory use before GGC: 82816k
    Peak memory use after GGC: 75169k
    Maximum of released memory in single GGC run: 40023k
    Garbage: 236132k
    Leak: 18376k
    Overhead: 32734k
    GGC runs: 72

comparing PR rtl-optimization/28071 testcase compilation at -O2 level:
  Ovarall memory allocated via mmap and sbrk decreased from 299824k to 272315k, overall -10.10%
    Overall memory needed: 299824k -> 272315k
    Peak memory use before GGC: 80156k
    Peak memory use after GGC: 75170k
    Maximum of released memory in single GGC run: 33751k
    Garbage: 246181k
    Leak: 18458k
    Overhead: 34956k
    GGC runs: 85

comparing PR rtl-optimization/28071 testcase compilation at -O3 -fno-tree-pre -fno-tree-fre level:
    Overall memory needed: 1012928k -> 1012687k
    Peak memory use before GGC: 168797k
    Peak memory use after GGC: 158361k
    Maximum of released memory in single GGC run: 83549k
    Garbage: 356541k
    Leak: 28540k
    Overhead: 46918k
    GGC runs: 69

Head of the ChangeLog is:

--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog	2007-08-13 21:18:40.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog	2007-08-14 13:16:13.000000000 +0000
@@ -1,3 +1,288 @@
+2007-08-14  Andrew Pinski  <pinskia@gmail.com>
+
+	PR c/30428
+	* c-typeck.c (build_binary_op): Disallow vector float types with
+	BIT_IOR_EXPR, BIT_AND_EXPR, and BIT_XOR_EXPR.
+
+2007-08-14  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+	* sched-int.h (struct _dep): Rename field 'kind' to 'type'.
+	(DEP_KIND): Rename to DEP_TYPE.  Update all uses.
+	(dep_def): New typedef.
+	(init_dep_1, sd_debug_dep): Declare functions.
+	(DEP_LINK_KIND): Rename to DEP_LINK_TYPE.
+	(debug_dep_links): Remove.
+	(struct _deps_list): New field 'n_links'.
+	(DEPS_LIST_N_LINKS): New macro.
+	(FOR_EACH_DEP_LINK): Remove.
+	(create_deps_list, free_deps_list, delete_deps_list): Remove
+	declaration.
+	(deps_list_empty_p, debug_deps_list, add_back_dep_to_deps_list): Ditto.
+	(find_link_by_pro_in_deps_list, find_link_by_con_in_deps_list): Ditto.
+	(copy_deps_list_change_con, move_dep_link): Ditto.
+	(struct haifa_insn_data): Split field 'back_deps' into 'hard_back_deps'
+	and 'spec_back_deps'.  New field 'resolved_forw_deps'.  Remove field
+	'dep_count'.
+	(INSN_BACK_DEPS): Remove.
+	(INSN_HARD_BACK_DEPS, INSN_SPEC_BACK_DEPS, INSN_RESOLVED_FORW_DEPS):
+	New macros.
+	(INSN_DEP_COUNT): Remove.
+	(enum DEPS_ADJUST_RESULT): Add new constant DEP_NODEP.  Fix comments.
+	(spec_info, haifa_recovery_block_was_added_during_scheduling_p):
+	Declare global variables.
+	(deps_pools_are_empty_p, sched_free_deps): Declare functions.
+	(add_forw_dep, compute_forward_dependences): Remove declarations.
+	(add_or_update_back_dep, add_or_update_back_forw_dep): Ditto.
+	(add_back_forw_dep, delete_back_forw_dep): Ditto.
+	(debug_ds, sched_insn_is_legitimate_for_speculation_p): Declare
+	functions.
+	(SD_LIST_NONE, SD_LIST_HARD_BACK, SD_LIST_SPEC_BACK, SD_LIST_FORW): New
+	constants.
+	(SD_LIST_RES_BACK, SD_LIST_RES_FORW, SD_LIST_BACK): Ditto.
+	(sd_list_types_def): New typedef.
+	(sd_next_list): Declare function.
+	(struct _sd_iterator): New type.
+	(sd_iterator_def): New typedef.
+	(sd_iterator_start, sd_iterator_cond, sd_iterator_next): New inline
+	functions.
+	(FOR_EACH_DEP): New cycle wrapper.
+	(sd_lists_size, sd_lists_empty_p, sd_init_insn, sd_finish_insn):
+	Declare functions.
+	(sd_find_dep_between, sd_add_dep, sd_add_or_update_dep): Ditto.
+	(sd_resolve_dep, sd_copy_back_deps, sd_delete_dep, sd_debug_lists):
+	Ditto.
+
+	* sched-deps.c (init_dep_1): Make global.
+	(DUMP_DEP_PRO, DUMP_DEP_CON, DUMP_DEP_STATUS, DUMP_DEP_ALL): New
+	constants.
+	(dump_dep): New static function.
+	(dump_dep_flags): New static variable.
+	(sd_debug_dep): New function.
+	(add_to_deps_list, remove_from_deps_list): Update 'n_links' field of
+	the list.
+	(move_dep_link): Use remove_from_deps_list (), instead of
+	detach_dep_link ().
+	(dep_links_consistent_p, dump_dep_links, debug_dep_links): Remove.
+	(dep_link_is_detached_p): New static function.
+	(deps_obstack, dl_obstack, dn_obstack): Remove.  Use dn_pool, dl_pool
+	instead.
+	(dn_pool, dl_pool): New alloc_pools.
+	(dn_pool_diff, dl_pool_diff): New static variables.
+	(create_dep_node, delete_dep_node): New static function.
+	(create_deps_list): Make it static.  Use alloc_pool 'dl_pool'.
+	(deps_list_empty_p): Make it static.  Use 'n_links' field.
+	(deps_pools_are_empty_p): New static function.
+	(alloc_deps_list, delete_deps_list): Remove.
+	(dump_deps_list, debug_deps_list, add_back_dep_to_deps_list): Remove.
+	(find_link_by_pro_in_deps_list, find_link_by_con_in_deps_list): Ditto.
+	(copy_deps_list_change_con): Remove.  Use sd_copy_back_deps () instead.
+	(forward_dependency_cache): Remove.
+	(maybe_add_or_update_back_dep_1, add_or_update_back_dep_1): Remove
+	'back' from the names.  Change signature to use dep_t instead of
+	equivalent quad.
+	(add_back_dep): Ditto.  Make global.
+	(check_dep_status): Rename to check_dep ().
+	(sd_next_list, sd_lists_size, sd_lists_empty_p, sd_init_insn):
+	New functions.
+	(sd_finish_insn): Ditto.
+	(sd_find_dep_between_no_cache): New static function.
+	(sd_find_dep_between): New function.
+	(ask_dependency_caches, set_dependency_caches): New static functions.
+	(update_dependency_caches, change_spec_dep_to_hard, update_dep): Ditto.
+	(add_or_update_dep_1): Separate pieces of functionality into
+	ask_dependency_caches (), update_dependency_caches (),
+	change_spec_dep_to_hard (), update_dep ().
+	(get_back_and_forw_lists): New static function.
+	(sd_add_dep): Separate setting of dependency caches into
+	set_dependency_caches ().
+	(sd_add_or_update_dep, sd_resolve_dep, sd_copy_back_deps):
+	New functions.
+	(sd_delete_dep): Ditto.
+	(DUMP_LISTS_SIZE, DUMP_LISTS_DEPS, DUMP_LISTS_ALL): New constants.
+	(dump_lists): New static function.
+	(sd_debug_lists): New debug function.
+	(delete_all_dependences, fixup_sched_groups): Update to use
+	sd_* infrastructure.
+	(sched_analyze_2): Create data-speculative dependency only if
+	data-speculation is enabled.
+	(sched_analyze_insn): If insn cannot be speculative, make all its
+	dependencies non-speculative.
+	(sched_analyze): Use sd_init_insn ().
+	(add_forw_dep, compute_forward_dependencies): Remove.
+	(delete_dep_nodes_in_back_deps): New static function.
+	(sched_free_deps): New function.
+	(init_dependency_caches): Init alloc_pools.
+	(extend_depedency_caches): Update after removing of
+	forward_dependency_cache.
+	(free_dependency_caches): Ditto.  Free alloc_pools.
+	(adjust_add_sorted_back_dep, adjust_back_add_forw_dep): Remove.
+	(delete_forw_dep, add_or_update_back_dep, add_or_update_back_forw_dep):
+	Ditto.
+	(add_back_forw_dep, delete_back_forw_dep): Ditto.
+	(add_dependence): Use init_dep ().
+	(get_dep_weak_1): New static function.
+	(get_dep_weak): Move logic to get_dep_weak_1 ().
+	(dump_ds): New static function moved from haifa-sched.c:
+	debug_spec_status ().
+	(debug_ds): New debug function.
+	(check_dep_status): Rename to check_dep ().  Update to check whole
+	dependencies.
+
+	* haifa-sched.c (spec_info): Make global.
+	(added_recovery_block_p): Rename to
+	'haifa_recovery_block_was_added_during_current_schedule_block_p'.
+	(haifa_recovery_block_was_added_during_scheduling_p): New variable.
+	(dep_cost, priority, rank_for_schedule, schedule_insn): Update
+	to use new interfaces.
+	(ok_for_early_queue_removal): Ditto.
+	(schedule_block): Initialize logical uids of insns emitted by the
+	target.
+	(sched_init): Initialize new variable.
+	(fix_inter_tick, try_ready, fix_tick_ready): Update to use new
+	interfaces.
+	(extend_global): Initialize insn data.
+	(init_h_i_d): Remove code that is now handled in sd_init_insn ().
+	(process_insn_forw_deps_be_in_spec): Change signature.  Update to use
+	new interfaces.
+	(add_to_speculative_block): Update to use new interfaces.
+	(create_recovery_block): Set new variables.
+	(create_check_block_twin, fix_recovery_deps): Update to use new
+	interfaces.
+	(sched_insn_is_legitimate_for_speculation_p): New function.
+	(speculate_insn): Move checking logic to
+	sched_insn_is_legitimate_for_speculation_p ().
+	(sched_remove_insn): Finalize sched-deps information of instruction.
+	(clear_priorities, add_jump_dependencies): Update to use new
+	interfaces.
+	(debug_spec_status): Rename to dump_ds () and move to sched-deps.c.
+	
+	* sched-rgn.c (set_spec_fed, find_conditional_protection): Update
+	to use new interfaces.
+	(is_conditionally_protected, is_pfree, is_prisky) Ditto.
+	(new_ready): Try to use control speculation only if it is available.
+	(add_branch_dependences): Update to use new interfaces.
+	(compute_block_backward_dependences): Rename to
+	compute_block_dependences ().  Call
+	targetm.sched.dependencies_evaluation_hook ().
+	(free_block_dependencies): New static function.
+	(debug_dependencies): Update to use new interfaces.
+	(schedule_region): Remove separate computation of forward dependencies.
+	Move call of targetm.sched.dependencies_evaluation_hook () to
+	compute_block_dependences ().  Free dependencies at the end of
+	scheduling the region.
+
+	* sched-ebb.c (earliest_block_with_similiar_load): Update to use
+	new interfaces.
+	(add_deps_for_risky_insns): Ditto.
+	(schedule_ebb): Remove separate computation of forward dependencies.
+	Free dependencies at the end of	scheduling the ebb.
+
+	* ddg.c (create_ddg_dependence): Update to use new interfaces.
+	(build_intra_loop_deps): Ditto.  Remove separate computation of forward
+	dependencies.  Free sched-deps dependencies.
+
+	* config/ia64/ia64.c (ia64_dependencies_evaluation_hook): Update
+	to use new interfaces.
+	(ia64_dfa_new_cycle, ia64_gen_check): Ditto.
+
+	* config/rs6000/rs6000.c (rs6000_is_costly_dependence): Update to use
+	new interfaces.
+	(is_costly_group): Ditto.
+
+2007-08-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+	* alias.c (rtx_equal_for_memref_p): Constify.
+	* basic-block.h (const_edge, const_basic_block): New.
+	(reg_set_to_hard_reg_set, dfs_enumerate_from, single_succ_p,
+	single_pred_p, single_succ_edge, single_pred_edge, single_succ,
+	single_pred, maybe_hot_bb_p, probably_cold_bb_p,
+	probably_never_executed_bb_p, edge_probability_reliable_p,
+	br_prob_note_reliable_p, forwarder_block_p, flow_nodes_print,
+	inside_basic_block_p, control_flow_insn_p, dominated_by_p):
+	Likewise.
+	* bb-reorder.c (better_edge_p, push_to_next_round_p): Likewise.
+	* bt-load.c (basic_block_freq, insn_sets_btr_p, can_move_up):
+	Likewise.
+	* cfganal.c (flow_active_insn_p, forwarder_block_p,
+	flow_nodes_print, dfs_enumerate_from): Likewise.
+	* cfgbuild.c (count_basic_blocks, inside_basic_block_p,
+	control_flow_insn_p, count_basic_blocks): Likewise.
+	* cfgloop.c (flow_bb_inside_loop_p, glb_enum_p,
+	get_loop_body_with_size, loop_exit_edge_p): Likewise.
+	* cfgloop.h (flow_bb_inside_loop_p, num_loop_insns,
+	average_num_loop_insns, loop_exit_edge_p,
+	just_once_each_iteration_p, can_duplicate_loop_p): Likewise.
+	* cfgloopanal.c (just_once_each_iteration_p, num_loop_insns,
+	average_num_loop_insns, seq_cost): Likewise.
+	* cfgloopmanip.c (rpe_enum_p, can_duplicate_loop_p): Likewise.
+	* dominance.c (dominated_by_p): Likewise.
+	* emit-rtl.c (validate_subreg): Likewise.
+	* except.c (can_throw_internal, can_throw_external): Likewise.
+	* except.h (can_throw_internal, can_throw_external): Likewise.
+	* gcse.c (gcse_constant_p, oprs_unchanged_p, oprs_anticipatable_p,
+	oprs_available_p, hash_expr, expr_equiv_p, oprs_not_set_p,
+	compute_transp, load_killed_in_block_p, reg_killed_on_edge,
+	simple_mem, store_ops_ok, load_kills_store, find_loads,
+	store_killed_in_insn, store_killed_after, store_killed_before,
+	gcse_mem_operand, implicit_set_cond_p, store_killed_in_pat):
+	Likewise.
+	* ifcvt.c (count_bb_insns, cheap_bb_rtx_cost_p, noce_operand_ok,
+	noce_mem_write_may_trap_or_fault_p): Likewise.
+	* pointer-set.c (pointer_set_contains, pointer_map_contains):
+	Likewise.
+	* pointer-set.h (pointer_set_contains, pointer_map_contains):
+	Likewise.
+	* predict.c (can_predict_insn_p, maybe_hot_bb_p,
+	probably_cold_bb_p, probably_never_executed_bb_p,
+	edge_probability_reliable_p, br_prob_note_reliable_p,
+	can_predict_insn_p): Likewise.
+	* regclass.c (reg_set_to_hard_reg_set): Likewise.
+	* resource.c (return_insn_p): Likewise.
+	* rtl.h (reg_set_between_p, reg_set_p, validate_subreg):
+	Likewise.
+	* rtlanal.c (reg_set_between_p, reg_set_p): Likewise.
+	* tracer.c (count_insns, ignore_bb_p, better_p): Likewise.
+	* tree-cfg.c (verify_gimple_unary_expr, verify_gimple_binary_expr,
+	verify_gimple_modify_stmt): Likewise.
+	* tree-chrec.c (is_not_constant_evolution,
+	is_multivariate_chrec_rec, is_multivariate_chrec,
+	chrec_contains_symbols, chrec_contains_undetermined,
+	tree_contains_chrecs, evolution_function_is_affine_multivariate_p,
+	evolution_function_is_univariate_p, avoid_arithmetics_in_type_p,
+	eq_evolutions_p, scev_direction): Likewise.
+	* tree-chrec.h (automatically_generated_chrec_p, tree_is_chrec,
+	eq_evolutions_p, is_multivariate_chrec, chrec_contains_symbols,
+	chrec_contains_symbols_defined_in_loop,
+	chrec_contains_undetermined, tree_contains_chrecs,
+	evolution_function_is_affine_multivariate_p,
+	evolution_function_is_univariate_p, chrec_zerop,
+	evolution_function_is_constant_p, evolution_function_is_affine_p,
+	evolution_function_is_affine_or_constant_p,
+	tree_does_not_contain_chrecs, chrec_type): Likewise.
+	* tree-data-ref.c (tree_fold_divides_p,
+	object_address_invariant_in_loop_p, dr_may_alias_p,
+	ziv_subscript_p, siv_subscript_p, gcd_of_steps_may_divide_p,
+	same_access_functions, constant_access_functions,
+	access_functions_are_affine_or_constant_p, find_vertex_for_stmt):
+	Likewise.
+	* tree-flow.h (scev_direction): Likewise.
+	* tree-gimple.c (is_gimple_stmt): Likewise.
+	* tree-outof-ssa.c (identical_copies_p, identical_stmt_lists_p):
+	Likewise.
+	* tree-pretty-print.c (op_prio): Likewise.
+	* tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop,
+	analyzable_condition, backedge_phi_arg_p): Likewise.
+	* tree-scalar-evolution.h (get_chrec_loop): Likewise.
+	* tree-ssa-operands.c (get_name_decl, operand_build_cmp): Likewise.
+	* tree-ssa-threadupdate.c (dbds_continue_enumeration_p):
+	Likewise.
+
+2007-08-13  Dan Hipschman  <dsh@google.com>
+
+	PR c/32953
+	* c-format.c (check_format_arg): Move check for zero-length
+	format strings below the check for unterminated strings.
+
 2007-08-13  Andrew Pinski  <pinskia@gmail.com>
 
 	PR C/30427
--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog.cp	2007-08-11 21:26:49.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/cp/ChangeLog	2007-08-14 13:15:36.000000000 +0000
@@ -1,3 +1,9 @@
+2007-08-14  Andrew Pinski  <pinskia@gmail.com>
+
+	PR c++/30428
+	* typeck.c (build_binary_op): Disallow vector float types with
+	BIT_IOR_EXPR, BIT_AND_EXPR, and BIT_XOR_EXPR.
+
 2007-08-11  Ian Lance Taylor  <iant@google.com>
 
 	* cp-objcp-common.c (cxx_get_alias_set): Change return type to


The results can be reproduced by building a compiler with

--enable-gather-detailed-mem-stats targetting x86-64

and compiling preprocessed combine.c or testcase from PR8632 with:

-fmem-report --param=ggc-min-heapsize=1024 --param=ggc-min-expand=1 -Ox -Q

The memory consumption summary appears in the dump after detailed listing
of the places they are allocated in.  Peak memory consumption is actually
computed by looking for maximal value in {GC XXXX -> YYYY} report.

Your testing script.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]