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 increased 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 combine.c compilation at -O0 level:
    Overall memory needed: 24928k -> 24932k
    Peak memory use before GGC: 9717k
    Peak memory use after GGC: 9064k
    Maximum of released memory in single GGC run: 2816k
    Garbage: 42335k -> 42333k
    Leak: 6720k
    Overhead: 5837k -> 5837k
    GGC runs: 335 -> 334

comparing combine.c compilation at -O1 level:
    Overall memory needed: 24364k
    Peak memory use before GGC: 17710k
    Peak memory use after GGC: 17517k
    Maximum of released memory in single GGC run: 2468k -> 2484k
    Garbage: 67910k -> 67973k
    Leak: 7030k
    Overhead: 8038k -> 8056k
    GGC runs: 419 -> 420

comparing combine.c compilation at -O2 level:
    Overall memory needed: 24356k
    Peak memory use before GGC: 17718k
    Peak memory use after GGC: 17517k
    Maximum of released memory in single GGC run: 2616k
    Garbage: 87244k -> 87291k
    Leak: 7207k
    Overhead: 10768k -> 10779k
    GGC runs: 484 -> 487

comparing combine.c compilation at -O3 level:
    Overall memory needed: 24840k
    Peak memory use before GGC: 17968k
    Peak memory use after GGC: 17549k
    Maximum of released memory in single GGC run: 3439k -> 3440k
    Garbage: 116180k -> 116190k
    Leak: 7305k
    Overhead: 14426k -> 14431k
    GGC runs: 534 -> 533

comparing insn-attrtab.c compilation at -O0 level:
  Amount of produced GGC garbage increased from 151641k to 151900k, overall 0.17%
    Overall memory needed: 83372k
    Peak memory use before GGC: 71655k
    Peak memory use after GGC: 45752k
    Maximum of released memory in single GGC run: 37689k
    Garbage: 151641k -> 151900k
    Leak: 11560k -> 11320k
    Overhead: 18881k -> 18881k
    GGC runs: 267 -> 268

comparing insn-attrtab.c compilation at -O1 level:
  Amount of produced GGC garbage increased from 298292k to 298671k, overall 0.13%
    Overall memory needed: 116668k -> 116664k
    Peak memory use before GGC: 99408k
    Peak memory use after GGC: 88890k
    Maximum of released memory in single GGC run: 33484k
    Garbage: 298292k -> 298671k
    Leak: 11427k
    Overhead: 35521k -> 35603k
    GGC runs: 290 -> 292

comparing insn-attrtab.c compilation at -O2 level:
    Overall memory needed: 155568k -> 154732k
    Peak memory use before GGC: 118554k
    Peak memory use after GGC: 88864k
    Maximum of released memory in single GGC run: 33619k
    Garbage: 392905k -> 393193k
    Leak: 11515k
    Overhead: 47614k -> 47637k
    GGC runs: 329 -> 331

comparing insn-attrtab.c compilation at -O3 level:
    Overall memory needed: 155560k -> 154732k
    Peak memory use before GGC: 118558k -> 118556k
    Peak memory use after GGC: 88866k
    Maximum of released memory in single GGC run: 33619k
    Garbage: 393708k -> 393726k
    Leak: 11535k
    Overhead: 47731k -> 47734k
    GGC runs: 334 -> 335

comparing Gerald's testcase PR8361 compilation at -O0 level:
    Overall memory needed: 124856k
    Peak memory use before GGC: 100707k
    Peak memory use after GGC: 99710k
    Maximum of released memory in single GGC run: 21552k
    Garbage: 230928k -> 230928k
    Leak: 53150k
    Overhead: 39837k
    GGC runs: 337

comparing Gerald's testcase PR8361 compilation at -O1 level:
    Overall memory needed: 108904k -> 108896k
    Peak memory use before GGC: 99624k
    Peak memory use after GGC: 98632k
    Maximum of released memory in single GGC run: 20596k
    Garbage: 645636k -> 646083k
    Leak: 58288k -> 58289k
    Overhead: 80489k -> 80595k
    GGC runs: 526 -> 525

comparing Gerald's testcase PR8361 compilation at -O2 level:
    Overall memory needed: 109488k -> 109524k
    Peak memory use before GGC: 99624k
    Peak memory use after GGC: 98632k
    Maximum of released memory in single GGC run: 20595k
    Garbage: 737014k -> 737366k
    Leak: 58971k -> 58972k
    Overhead: 97631k -> 97745k
    GGC runs: 590 -> 589

comparing Gerald's testcase PR8361 compilation at -O3 level:
    Overall memory needed: 111984k -> 111924k
    Peak memory use before GGC: 101141k
    Peak memory use after GGC: 100133k
    Maximum of released memory in single GGC run: 21090k
    Garbage: 779881k -> 780203k
    Leak: 60171k -> 60172k
    Overhead: 101732k -> 101781k
    GGC runs: 595

Head of the ChangeLog is:

--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog	2005-07-05 11:51:47.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog	2005-07-05 16:22:26.000000000 +0000
@@ -1,3 +1,179 @@
+2005-07-05  Paolo Bonzini  <bonzini@gnu.org>
+
+	* Makefile.in: Adjust dependencies.
+	* tree-pass.h: Add new passes and passes formerly in tree-optimize.c.
+	* basic-block.h (duplicate_computed_gotos): Remove, it is now static.
+	* alias.c (rest_of_handle_cfg, pass_cfg): New.
+	* bb-reorder.c (duplicate_computed_gotos): Make it static.
+	* cfgexpand.c (tree_expand_cfg): Add code formerly at the beginning of
+	rest_of_compilation.
+
+	* bb-reorder.c (gate_duplicate_computed_gotos,
+	pass_duplicate_computed_gotos, gate_handle_reorder_blocks,
+	rest_of_handle_reorder_blocks, pass_reorder_blocks,
+	gate_handle_partition_blocks, rest_of_handle_partition_blocks,
+	pass_partition_blocks): New.
+	* bt-load.c (gate_handle_branch_target_load_optimize,
+	rest_of_handle_branch_target_load_optimize,
+	pass_branch_target_load_optimize): New.
+	* cfgcleanup.c (rest_of_handle_jump, pass_jump, rest_of_handle_jump2,
+	pass_jump2): New.
+	* cfglayout.c (pass_insn_locators_initialize): New.
+	* cfgrtl.c (pass_free_cfg): New.
+	* combine.c (gate_handle_combine, rest_of_handle_combine,
+	pass_combine): New.
+	* cse.c (gate_handle_cse, rest_of_handle_cse, pass_cse,
+	gate_handle_cse2, rest_of_handle_cse2, pass_cse2): New.
+	* emit-rtl.c (pass_unshare_all_rtl, pass_remove_unnecessary_notes): New.
+	* except.c (pass_set_nothrow_function_flags,
+	pass_convert_to_eh_region_ranges, gate_handle_eh, rest_of_handle_eh,
+	pass_rtl_eh): New.
+	* final.c (pass_compute_alignments, rest_of_handle_final, pass_final,
+	rest_of_handle_shorten_branches, pass_shorten_branches,
+	rest_of_clean_state, pass_clean_state): New.
+	* flow.c (pass_recompute_reg_usage, gate_remove_death_notes,
+	rest_of_handle_remove_death_notes, pass_remove_death_notes,
+	rest_of_handle_life, pass_life, rest_of_handle_flow2,
+	pass_flow2): New.
+	* function.c (pass_instantiate_virtual_regs, pass_init_function,
+	rest_of_handle_check_leaf_regs, pass_leaf_regs): New.
+	* gcse.c (gate_handle_jump_bypass, rest_of_handle_jump_bypass,
+	pass_jump_bypass, gate_handle_gcse, rest_of_handle_gcse,
+	pass_gcse): New.
+	* global.c (rest_of_handle_global_alloc, pass_global_alloc): New.
+	* ifcvt.c (gate_handle_if_conversion, rest_of_handle_if_conversion,
+	pass_rtl_ifcvt, gate_handle_if_after_combine,
+	rest_of_handle_if_after_combine, pass_if_after_combine,
+	gate_handle_if_after_reload, rest_of_handle_if_after_reload,
+	pass_if_after_reload): New.
+	* integrate.c (pass_initial_value_sets): New.
+	* jump.c (pass_cleanup_barriers, purge_line_number_notes,
+	pass_purge_lineno_notes): New.
+	* mode-switching.c (rest_of_handle_mode_switching,
+	pass_mode_switching): New.
+	* local-alloc.c (rest_of_handle_local_alloc, pass_local_alloc): New.
+	* loop-init.c (gate_handle_loop2, rest_of_handle_loop2,
+	pass_loop2): New.
+	* loop.c (gate_handle_loop_optimize, rest_of_handle_loop_optimize,
+	pass_loop_optimize): New.
+	* modulo-sched.c (gate_handle_sms, rest_of_handle_sms,
+	pass_sms): New.
+	* postreload-gcse.c (gate_handle_gcse2, rest_of_handle_gcse2,
+	pass_gcse2): New.
+	* postreload.c (gate_handle_postreload, rest_of_handle_postreload,
+	pass_postreload_cse): New.
+	* profile.c (gate_handle_profiling, pass_profiling,
+	rest_of_handle_branch_prob, pass_branch_prob): New.
+	* recog.c (pass pass_split_for_shorten_branches, gate_do_final_split, 
+	pass_split_before_regstack, gate_handle_split_before_regstack,
+	gate_handle_peephole2, rest_of_handle_peephole2, pass_peephole2,
+	rest_of_handle_split_all_insns, pass_split_all_insns): New.
+	* reg-stack.c (gate_handle_stack_regs, rest_of_handle_stack_regs,
+	pass_stack_regs): New.
+	* regmove.c (gate_handle_regmove, rest_of_handle_regmove, pass_regmove,
+	gate_handle_stack_adjustments, rest_of_handle_stack_adjustments,
+	pass_stack_adjustments): New.
+	* regrename.c (gate_handle_regrename, rest_of_handle_regrename,
+	pass_regrename): New.
+	* reorg.c (gate_handle_delay_slots, rest_of_handle_delay_slots,
+	pass_delay_slots, gate_handle_machine_reorg,
+	rest_of_handle_machine_reorg, pass_machine_reorg): New.
+	* rtl.h (extern void purge_line_number_notes): New.
+	* sched-rgn.c (gate_handle_sched, rest_of_handle_sched,
+	gate_handle_sched2, rest_of_handle_sched2, pass_sched,
+	pass_sched2): New.
+	* tracer.c (gate_handle_tracer, rest_of_handle_tracer,
+	pass_tracer): New.
+	* value-prof.c (gate_handle_value_profile_transformations,
+	rest_of_handle_value_profile_transformations,
+	pass_value_profile_transformations): New.
+	* var-tracking.c (gate_handle_var_tracking,
+	pass_variable_tracking): New.
+	* web.c (gate_handle_web, rest_of_handle_web, pass_web): New.
+
+	* passes.c (open_dump_file, close_dump_file, rest_of_handle_final,
+	rest_of_handle_delay_slots, rest_of_handle_stack_regs,
+	rest_of_handle_variable_tracking, rest_of_handle_machine_reorg,
+	rest_of_handle_old_regalloc, rest_of_handle_regrename,
+	rest_of_handle_reorder_blocks, rest_of_handle_partition_blocks,
+	rest_of_handle_sms, rest_of_handle_sched, rest_of_handle_sched2,
+	rest_of_handle_gcse2, rest_of_handle_regmove,
+	rest_of_handle_tracer, rest_of_handle_if_conversion,
+	rest_of_handle_if_after_combine, rest_of_handle_if_after_reload,
+	rest_of_handle_web, rest_of_handle_branch_prob,
+	rest_of_handle_value_profile_transformations, rest_of_handle_cfg,
+	rest_of_handle_jump_bypass, rest_of_handle_combine,
+	rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2,
+	rest_of_handle_gcse, rest_of_handle_loop_optimize,
+	rest_of_handle_loop2, rest_of_handle_branch_target_load_optimize,
+	rest_of_handle_mode_switching, rest_of_handle_jump,
+	rest_of_handle_eh, rest_of_handle_stack_adjustments,
+	rest_of_handle_flow2, rest_of_handle_jump2,
+	rest_of_handle_peephole2, rest_of_handle_postreload,
+	rest_of_handle_shorten_branches, rest_of_clean_state,
+	rest_of_compilation): Remove.
+
+	* cgraphunit.c (ipa_passes): Moved from tree-optimize.c.
+	* passes.c (dump_flags, in_gimple_form, all_passes,
+	all_ipa_passes, all_lowering_passes, register_one_dump_file,
+	register_dump_files, next_pass_1, last_verified, execute_todo,
+	execute_one_pass, execute_pass_list, execute_ipa_pass_list): Moved
+	from tree-optimize.c.
+	(init_optimization_passes): Moved from tree-optimize.c,
+	adding the RTL optimizations.
+	* tree-dump.h (dump_info_p, dump_flag): Moved from tree.h.
+	* tree-optimize.c (dump_flags, in_gimple_form, all_passes,
+	all_ipa_passes, all_lowering_passes, register_one_dump_file,
+	register_dump_files, next_pass_1, last_verified, execute_todo,
+	execute_one_pass, execute_pass_list, execute_ipa_pass_list,
+	init_tree_optimization_passes, ipa_passes): Delete.
+	* tree-pass.h (enum tree_dump_index): Moved from tree.h, removing
+	the RTL dumps.
+	(TDF_*, get_dump_file_name, dump_enabled_p, dump_initialized_p,
+	dump_begin, dump_end, dump_node, dump_switch_p, dump_flag_name): Moved
+	from tree.h.
+	(ipa_passes): Remove.
+	(all_passes, all_ipa_passes, all_lowering_passes): Now extern.
+	* tree.h (enum tree_dump_index, TDF_*, get_dump_file_name,
+	dump_enabled_p, dump_initialized_p, dump_begin, dump_end, dump_node,
+	dump_switch_p, dump_flag_name): Moved to tree-pass.h.
+	(dump_info_p, dump_flag): Moved to tree-dump.h.
+	
+	* Makefile.in: Adjust dependencies for tree-pretty-print.c,
+	cgraph.c, opts.c.
+	* passes.c (finish_optimization_passes): Use dump_begin
+	and dump_end, TDI_end.
+	(gate_rest_of_compilation): New.
+	(pass_rest_of_compilation): Use it.
+	(gate_postreload, pass_postreload): New.
+	* toplev.c (general_init): Rename init_tree_optimization_passes.
+	* toplev.h (init_tree_optimization_passes): Rename to
+	init_optimizations_passes.
+	* tree-dump.c (dump_flag): Make static.
+	(dump_files): Remove RTL dumps.
+	* tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
+	pass_cleanup_cfg, pass_free_cfg_annotations,
+	pass_cleanup_cfg_post_optimizing, pass_free_datastructures,
+	pass_init_datastructures, pass_fixup_cfg): Make non-static.
+	* tree-pretty-print.c: Include tree-pass.h.
+	* cgraph.c: Include tree-dump.h.
+	
+2005-07-04  Daniel Berlin  <dberlin@dberlin.org>
+
+	* tree-ssa-structalias.c (get_constraint_exp_from_ssa_var):
+	Only fall back to saying it points to readonly memory if
+	we can't do better.
+
+2005-07-05  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
+
+	* config/m32r/m32r-protos.h: Remove m32r_finalize_pic.
+	* config/m32r/m32r.c (m32r_compute_frame_size,
+	m32r_expand_prologue): Take current_function_profile into
+	account whenever we reference
+	current_function_uses_pic_offset_table.
+	(m32r_finalize_pic): Remove.
+	* config/m32r/m32r.h (FINALIZE_PIC): Likewise.
+
 2005-07-05  Kazu Hirata  <kazu@codesourcery.com>
 
 	* Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET)
@@ -254,10 +430,10 @@
 	* tree-ssa-reassoc.c (should_transpose): Fix which operand
 	we check for SSA_NAME for.
 
-2005-06-29  Daniel Berlin  <dberlin@dberlin.org>
+2005-07-01  Daniel Berlin  <dberlin@dberlin.org>
 
 	Fix PR tree-optimization/22071
-	
+
 	* tree-ssa-structalias.c (offset_overlaps_with_access): New
 	function.
 	(get_constraint_for_component_ref): Use it.
@@ -294,22735 +470,4 @@
 	stack_protect_testdi): Add earlyclobber for scratch 3,
 	remove earlyclobber from scratch 4.
 
-2005-06-30  Diego Novillo  <dnovillo@redhat.com>
-
-	PR 21584
-	PR 22219
-	* tree-ssa-alias.c (create_name_tags): Also process
-	non-dereferenced pointers.
-	Remove argument 'ai'.  Update all callers.
-
-2005-06-30  Andrew Pinski  <pinskia@physics.uc.edu>
-
-	* config/rs6000/darwin.h (STARTING_FRAME_OFFSET):
-	Set to 0 for FRAME_GROWS_DOWNWARD.
-	(REGISTER_NAMES): Add sfp.
-
-2005-07-01  Kelley Cook  <kcook@gcc.gnu.org>
-
-	* config/arm/libunwind.S, config/arm/pr-support.c,
-	config/arm/unwind-arm.c, config/arm/unwind-arm.h,
-	config/c4x/predicates.md, tree-object-size.c: Update FSF address.
-
-2005-06-30  Eric Botcazou  <ebotcazou@libertysurf.fr>
-
-	PR target/22260
-	* config/sparc/sparc.c (emit_and_preserve): Add 2nd register.
-	Preserve the 2nd register too, if present.
-	(sparc_output_mi_thunk) <PIC case>: Preserve the PIC register too.
-	Adjust call to emit_and_preserve.
-
-2005-06-30  Zack Weinberg  <zack@codesourcery.com>
-	    Jakub Jelinek  <jakub@redhat.com>
-
-	* pretty-print.h (PP_NL_ARGMAX): New.
-	(text_info): Add locus.
-	(struct chunk_info): New.
-	(output_buffer): Add formatted_obstack, chunk_obstack, and
-	cur_chunk_array. Change obstack to a pointer.
-	(pp_wrapping_mode_t, pp_wrapping_mode, pp_set_verbatim_wrapping): New.
-	(struct pretty_print_info): Replace ideal_maximum_length and
-	prefixing_rule with wrapping.
-	(pp_line_cutoff, pp_prefixing_rule): Update to match.
-	Update prototypes and wrapper macros throughout.
-	* pretty-print.c (pp_formatted_text_data, pp_append_r)
-	(pp_base_clear_output_area, pp_construct, pp_base_formatted_text)
-	(pp_base_last_position_in_text, pp_base_newline, pp_base_character):
-	Update for changes to pp structure.
-	(pp_base_prepare_to_format, pp_base_format_text): Delete.
-	(pp_base_format, pp_base_output_formatted_text): New functions.
-	(pp_base_format_verbatim): Use pp_set_verbatim_wrapping.
-	(pp_verbatim): Clear text.locus.
-	(pp_printf): Likewise.  Use pp_format and pp_output_formatted_text.
-	* c-objc-common.c (c_tree_printer): Update function signature.
-	* diagnostic.c (diagnostic_initialize): Update for changes to
-	pp structure.
-	(diagnostic_report_diagnostic): Call pp_format and then
-	pp_output_formatted_text.
-	(verbatim): Clear text.locus.
-	* diagnostic.h (diagnostic_prefixing_rule, diagnostic_line_cutoff):
-	Update for changes to pp structure.
-
-	* c-lang.c: No need to include c-pretty-print.h.
-	* Makefile.in: Remove bogus line containing only a tab.
-	(c-lang.o): Update dependencies.
-	* toplev.c (announce_function): Don't use verbatim.
-	(default_tree_printer): Update signature.
-
-	* objc/objc-lang.c: No need to include c-pretty-print.h.
-	* objc/Make-lang.in: Update dependencies.
-
-2005-06-29  Daniel Berlin  <dberlin@dberlin.org>
-
-	* tree-complex.c (complex_variable_components): Now a hashtable.
-	(cvc_lookup): Ditto.
-	(cvc_insert): Ditto.
-	(create_components): Use referenced var iterator.
-	Initialize hashtable.	Use cvc_insert/lookup.
-	(extract_components): Use cvc_insert/lookup.
-	(update_complex_components): Ditto.
-	(update_complex_components_on_edge): Ditto.
-	* tree-dfa.c (referenced_vars): Now a hashtable.
-	(dump_referenced_vars): Use iterator.
-	(referenced_var_lookup): New function.
-	(referenced_var_insert): Ditto.
-	(add_referenced_var): Use referenced_var_insert.
-	(mark_new_vars_to_rename): Use DECL_UID.
-	* tree-flow-inline.h (first_htab_element): New function.
-	(end_htab_p): Ditto.
-	(next_htab_element): Ditto.
-	(first_referenced_var): Ditto.
-	(end_referenced_vars_p): Ditto.
-	(next_referenced_var): Ditto.
-	(is_call_clobbered): Use DECL_UID.
-	(mark_call_clobbered): Ditto.
-	(clear_call_clobbered): Ditto.
-	(mark_non_addressable): Ditto.
-	* tree-flow.h (htab_iterator): New struct.
-	(FOR_EACH_HTAB_ELEMENT): New macro.
-	(struct int_tree_map): New struct.
-	(int_tree_map_hash): Prototype.
-	(int_tree_map_eq): Ditto.
-	(referenced_var_iterator): Ditto.
-	(FOR_EACH_REFERENCED_VAR): New macro.
-	(referenced_vars): Now a hashtable.
-	* tree-into-ssa.c (symbol_marked_for_renaming): Use DECL_UID.
-	(add_new_name_mapping): Ditto.
-	(mark_def_sites): Ditto.
-	(insert_phi_nodes): Use referenced_var iterator.
-	(mark_def_site_blocks): Ditto.
-	(mark_sym_for_renaming): Use DECL_UID.
-	* tree-sra.c (is_sra_candidate_decl): Use DECL_UID.
-	(lookup_element): Ditto.
-	(find_candidates_for_sra): Use referenced_vars iterator.
-	Use DECL_UID.
-	* tree-ssa-alias.c (NUM_REFERENCES): New macro.
-	(NUM_REFERENCES_CLEAR): Ditto.
-	(NUM_REFERENCES_INC): Ditto.
-	(NUM_REFERENCES_SET): Ditto.
-	(alias_obstack): New bitmap obstack.
-	(struct alias_map_d): Use bitmap, not sbitmap.
-	(struct alias_info): Remove num_references.
-	(init_alias_info): Use referenced_var iterator.
-	Initialize bitmap obstack.
-	(delete_alias_info): Use referenced_var iterator.
-	Free bitmap obstack.
-	(compute_points_to_and_addr_escape): Use DECL_UID.
-	Use new NUM_REFERENCES macros.
-	(compute_flow_sensitive_aliasing): may_aliases is now a bitmap.
-	Use new NUM_REFERENCES macros.
-	(group_aliases_into): Update prototype to use bitmap.
-	(setup_pointers_and_addressables): Use referenced_vars iterator.
-	Use DECL_UID. Use new NUM_REFERENCES macros.
-	(add_pointed_to_var): Use DECL_UID.
-	(dump_alias_info): Use referenced_var iterator.
-	(add_type_alias): Ditto.
-	(used_portions): Now a hashtable.
-	(used_part_map_eq): New function.
-	(used_part_map_hash): Ditto.
-	(free_used_part_map): Ditto.
-	(up_lookup): Ditto.
-	(up_insert): Ditto.
-	(get_or_create_used_part_for): Use up_lookup.
-	(create_overlap_variables_for): Ditto.
-	(find_used_portions): Use up_insert.
-	Use DECL_UID.
-	(create_structure_vars): Init used_portions hashtable, use
-	referenced_vars iterator.
-	* tree-ssa-live.c (create_ssa_var_map): sbitmaps became bitmaps.
-	Use DECL_UID.
-	* tree-ssa-loop-im.c (gather_mem_refs_stmt): Use DECL_UID.
-	* tree-ssa-operands.c (get_asm_expr_operands): Ditto.
-	(note_addressable): Ditto.
-	* tree-ssa-structalias.c (set_uids_in_ptset): Ditto.
-	* tree-ssa.c (verify_flow_insensitive_alias_info): Use
-	referenced_var iterator.
-	Use DECL_UID.
-	(delete_tree_ssa): Ditto.
-	(int_tree_map_eq): New function.
-	(int_tree_map_hash): Ditto.
-	* tree-stdarg.c (find_va_list_reference): Use DECL_UID.
-	(va_list_ptr_read): Ditto.
-	(va_list_counter_struct_op): Ditto.
-	(va_list_ptr_write): Ditto.
-	(check_va_list_escapes): Ditto.
-	(check_all_va_list_escapes): Ditto.
-	(execute_optimize_stdarg): Ditto.
-	* tree-tailcall.c (suitable_for_tail_opt_p): Used referenced_var
-	iterator. 
-
-2005-06-30  Andrew Pinski  <pinskia@physics.uc.edu>
-
-	* config/rs6000/darwin.h (FRAME_POINTER_REGNUM): Rename to ...
-	(HARD_FRAME_POINTER_REGNUM): this.
-
-2005-06-30  Jan Hubicka  <jh@suse.cz>
-
-	* ipa-inline.c (cgraph_clone_inlined_nodes): Revert previous patch.
-
-2005-06-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-	PR middle-end/22247
-	* tree-ssa-structalias.c (build_constraint_graph, scc_visit,
-	process_unification_queue, init_topo_info, topo_visit,
-	init_scc_info, free_scc_info, perform_var_substitution,
-	solve_graph): Use unsigned instead of uint.
-	
-2005-06-30  Jakub Jelinek  <jakub@redhat.com>
-
-	* function.c (gen_stack_protect_test): Add third argument.
-
-2005-06-30  J. D. Johnston  <jjohnst@us.ibm.com>
-
-	* gthr-tpf.h (CE2THRCPTR): Change field offset to 16.
-
-2005-06-30  Kazu Hirata  <kazu@codesourcery.com>
-
-	* config/c4x/c4x-protos.h: Remove the prototypes for those
-	functions removed from c4x.c.  Add prototypes for those
-	functions exported in c4x.c.
-	* config/c4x/c4x.c (any_operand, fp_zero_operand,
-	const_operand, stik_const_operand, not_const_operand,
-	reg_operand, r0r1_reg_operand, r2r3_reg_operand,
-	ext_low_reg_operand, ext_reg_operand, std_reg_operand,
-	std_or_reg_operand, addr_reg_operand, index_reg_operand,
-	dp_reg_operand, sp_reg_operand, st_reg_operand,
-	rc_reg_operand, call_address_operand,
-	symbolic_address_operand, dst_operand, src_operand,
-	src_hi_operand, lsrc_operand, tsrc_operand,
-	nonimmediate_src_operand, nonimmediate_lsrc_operand,
-	reg_or_const_operand, par_ind_operand, parallel_operand):
-	Remove.
-	(c4x_immed_float_p, c4x_a_register, c4x_x_register,
-	c4x_K_constant, c4x_N_constant, c4x_O_constant,
-	c4x_S_indirect): Export.
-	* config/c4x/c4x.h (PREDICATE_CODES): Remove.
-	* config/c4x/c4x.md: Include predicates.md.
-	* config/c4x/predicates.md: New.
-
-2005-06-30  Jakub Jelinek  <jakub@redhat.com>
-
-	* function.c (stack_protect_epilogue): Pass label to
-	stack_protect_test, assume it emitted also the conditional
-	branch.
-	* doc/md.texi (stack_protect_test): Adjust documentation.
-	* config/i386/i386.md (stack_protect_test): Add third argument,
-	emit beq with operands[2].
-	* config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Define to
-	flag_stack_protect != 0.
-	* config/rs6000/rs6000.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New
-	constants.
-	(stack_protect_set, stack_protect_test): New expanders.
-	(stack_protect_setsi, stack_protect_setdi, stack_protect_testsi,
-	stack_protect_testdi): New insns.
-	* config/rs6000/rs6000.c (rs6000_stack_protect_fail): New function.
-	(TARGET_STACK_PROTECT_FAIL): Define.
-	(rs6000_generate_compare): Handle UNSPEC_SP_TEST.
-
-	* config/rs6000/rs6000.h (FIRST_PSEUDO_REGISTER): Increment.
-	(DWARF_FRAME_REGISTERS, DWARF_REG_TO_UNWIND_COLUMN): Adjust, so
-	that addition of sfp doesn't change these.
-	(FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS,
-	REG_ALLOC_ORDER): Add sfp.
-	(INT_REGNO_P): Include FRAME_POINTER_REGNUM.
-	(FRAME_POINTER_REGNUM): Define to 113.
-	(HARD_FRAME_POINTER_REGNUM): Define to 31.
-	(REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add sfp.
-	(STARTING_FRAME_OFFSET): Set to 0 for FRAME_GROWS_DOWNWARD.
-	(ELIMINABLE_REGS): Never eliminate to
-	FRAME_POINTER_REGNUM, but HARD_FRAME_POINTER_REGNUM
-	instead.  Add eliminations from FRAME_POINTER_REGNUM.
-	(REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, INT_REG_OK_FOR_INDEX_P):
-	Include FRAME_POINTER_REGNUM.
-	(REGISTER_NAMES): Add sfp.
-	* config/rs6000/rs6000.c (rs6000_reg_names): Add sfp.
-	(alt_reg_names): Likewise.
-	(rs6000_stack_info): Handle FRAME_GROWS_DOWNWARD.
-	(rs6000_emit_prologue): Use HARD_FRAME_POINTER_REGNUM
-	instead of FRAME_POINTER_REGNUM.
-	(rs6000_initial_elimination_offset): Never eliminate to
-	FRAME_POINTER_REGNUM, but HARD_FRAME_POINTER_REGNUM
-	instead.  Add elimination offsets from FRAME_POINTER_REGNUM.
-
-	* config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Only return non-zero
-	if DEFAULT_ABI == ABI_V4.
-
-2005-06-30  Steven Bosscher  <stevenb@suse.de>
-
-	* coretypes.h (tls_model): Add TLS_MODEL_NONE as 0.
-	* tree.h (struct tree_decl): New field `tls_model'.
-	(DECL_TLS_MODEL): New.
-	(DECL_THREAD_LOCAL_P): Rename from DECL_THREAD_LOCAL, make it
-	a predicate.
-	* rtl.h (decl_default_tls_model): Add prototype for it.
-	* varasm.c (decl_tls_model): Rewritten and renamed to ...
-	(decl_default_tls_model): ... this.
-	(default_encode_section_info): Use DECL_TLS_MODEL instead of
-	decl_tls_model.
-	(assemble_variable): Replace DECL_THREAD_LOCAL with
-	DECL_THREAD_LOCAL_P.
-	(default_section_type_flags_1): Likewise.
-	(categorize_decl_for_section): Likewise.
-	* tree.c (staticp): Likewise.
-	(recompute_tree_invarant_for_addr_expr): Likewise.
-	* drawf2out (loc_descriptor_from_tree_1): Likewise.
-	* c-decl.c (diagnose_mismatched_decls): Likewise.
-	with DECL_THREAD_LOCAL_P.
-	(start_decl): Likewise.
-	* print-tree.c (print_node): Likewise.  Print the TLS model.
-	(grokdeclarator): Set the default DECL_TLS_MODEL here.
-	* c-common.c (handle_tls_model_attribute): Rewrite to set the
-	TLS model up based on the attribute.  Never add the attribute
-	to the decl's attributes list.
-	* config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): Replace
-	DECL_THREAD_LOCAL with DECL_THREAD_LOCAL_P.
-
-2005-06-30  Zdenek Dvorak  <dvorakz@suse.cz>
-
-	PR testsuite/21967
-	* tree-ssa-live.c (mark_all_vars_used_1): Ignore variables in
-	TMR_ORIGINAL.
-
-2005-06-30  Bernd Schmidt  <bernd.schmidt@analog.com>
-
-	* config/bfin/bfin.md (addv2hi3, subv2hi3, sminv2hi3, smaxv2hi3,
-	mulv2hi3, negv2hi2, absv2hi2): Pattern names fixed by appending the
-	necessary digit.
-
-2005-06-29  David Edelsohn  <edelsohn@gnu.org>
-
-	* config/rs6000/rs6000.c (rs6000_file_start): Use PPC405_ERRATUM77.
-
-2005-06-29  Diego Novillo  <dnovillo@redhat.com>
-
-	PR 22234
-	* tree-ssa-copy.c (fini_copy_prop): Do not overwrite copy_of
-	when following copy-of chains.
-
-2005-06-30  Jan Hubicka  <jh@suse.cz>
-
-	* function.h (struct function): Add saved blocks/unexpanded var list.
-	* gimple-low.c (record_vars): Insert only VAR_DECLs.
-	* tree-inline.c (add_lexical_block): Declare; do not clear sublocks.
-	(remap_decl): Do not declare vars.
-	(remap_block): Do not care inserting blocks.
-	(remap_blocks): New function.
-	(copy_body_r): Update debug info.
-	(expand_call_inline): Duplicate callee block tree into caller;
-	copy all the unexpanded_var_list.
-	(save_body): Save unexpanded_var_list and blocks.
-	* tree-optimize.c (tree_rest_of_optimization): Restore
-	blocks/unexpanded_var_list.
-
-2005-06-29  Richard Henderson  <rth@redhat.com>
-
-	* config/ia64/ia64.c (ia64_expand_vecint_minmax): Use us_minus and
-	plus for V4HImode UMAX.
-
-2005-06-29  Joseph S. Myers  <joseph@codesourcery.com>
-
-	* c-tree.h (default_function_array_conversion): Take and return
-	struct c_expr.
-	* c-typeck.c (default_function_array_conversion): Split into
-	array_to_pointer_conversion and function_to_pointer_conversion.
-	Take and return struct c_expr.
-	(array_to_pointer_conversion): Do not handle type qualifiers or
-	COMPOUND_EXPRs specially.
-	(build_function_call): Call function_to_pointer_conversion for
-	function designators.
-	(build_unary_op): Call array_to_pointer_conversion, not
-	default_function_array_conversion.
-	(digest_init, output_init_element): Likewise.
-	* c-parser.c: All callers of default_function_array_conversion
-	changed.
-
-2005-06-29  Ziemowit Laski  <zlaski@apple.com>
-
-	* config/darwin.c (machopic_select_section): constant ObjC string
-	objects now always have type "__builtin_ObjCString".
-
-2005-06-29  Richard Henderson  <rth@redhat.com>
-
-	* config/alpha/alpha.md (vec_shl_<VEC>, vec_shr_<VEC>): New.
-
-2005-06-29  Richard Henderson  <rth@redhat.com>
-
-	* tree-vect-transform.c (vect_min_worthwhile_factor): Declare.
-	(vect_create_epilog_for_reduction): Don't use vec_shr if the
-	operation is emulated.
-	(vectorizable_reduction): Duplicate vect_min_worthwhile_factor
-	tests from vectorizable_operation.
-
-2005-06-29  Caroline Tice  <ctice@apple.com>
-
-	Fix PR 21956
-	* varasm.c (assemble_start_function):  Add "L" to beginning of
-	local labels, so assembler & linker treat them as local.
-	
-2005-06-29  Richard Henderson  <rth@redhat.com>
-
-	* config/i386/i386.c (ix86_expand_int_vcond): Remove unsignedp
-	argument.  Simplify canonicalization of condition.  Use unsigned
-	saturating subtraction for QI and HImode unsigned compares.  Use
-	bit arithmetic tricks for SImode unsigned compares.
-	* config/i386/i386-protos.h (ix86_expand_int_vcond): Update decl.
-	* config/i386/sse.md (SSEMODE14): New.
-	(umaxv8hi3): Use us_minus+plus to avoid vcond.
-	(umaxv4si3): New.
-	(smax<SSEMODE14>3): Rename from smaxv16qi3 and macroize.
-	(smin<SSEMODE14>3): Similarly with sminv16qi3.
-	(umin<SSEMODE24>3): Similarly with uminv8hi3.
-
-2005-06-29  Ian Lance Taylor  <ian@airs.com>
-
-	* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Change
-	GEN_INT to gen_int_for_mode when storing register size to memory.
-
-2005-06-29  Stuart Hastings  <stuart@apple.com>
-
-	* gcc/config/i386/mmintrin.h: Mark vector intrinsics always_inline.
-	* gcc/config/i386/emmintrin.h: Likewise.
-	* gcc/config/i386/pmmintrin.h: Likewise.
-	* gcc/config/i386/xmmintrin.h: Likewise.
-					
-2005-06-29  Steve Ellcey  <sje@cup.hp.com>
-
-	PR middle-end/21969
-	* tree.h (TYPE_VECTOR_SUBPARTS): Change to shift expression.
-	(SET_TYPE_VECTOR_SUBPARTS): New.
-	* tree.c (make_vector_type): Replace TYPE_VECTOR_SUBPARTS with
-	SET_TYPE_VECTOR_SUBPARTS.
-	* tree-vect-transform.c (vect_transform_loop): Add cast.
-
-2005-06-29  Andreas Krebbel  <krebbel1@de.ibm.com>
-
-	* config/s390/s390.c (s390_decompose_address): Accept invalid
-	displacements for addresses containing frame_pointer_rtx or
-	virtual_stack_vars_rtx.
-	(s390_frame_info): Replaced use of STARTING_FRAME_OFFSET.
-	(s390_initial_elimination_offset): New offset when eliminating the 
-	soft frame pointer.
-	* config/s390/s390.h (FRAME_GROWS_DOWNWARD): Defined as 1.
-	(STARTING_FRAME_OFFSET, STACK_DYNAMIC_OFFSET): Definitions changed.
-
-2006-06-28  Ziemowit Laski  <zlaski@apple.com>
-
-	* c-common.c (flag_next_runtime): Move...
-	* toplev.c (flag_next_runtime): ... here.
-	* c-common.h (flag_next_runtime): Move...
-	* flags.h (flag_next_runtime): ... here.
-	* config/darwin-c.c: Include flags.h.
-	* config/t-darwin (darwin-c.o): Depend on flags.h.
-
-2005-06-29  Kaz Kojima  <kkojima@gcc.gnu.org>
-
-	* config/sh/linux-unwind.h (shmedia_fallback_frame_state):
-	Disable	aliasing warning with void * cast.
-	(sh_fallback_frame_state): Likewise.
-
-2005-06-29  Kaz Kojima  <kkojima@gcc.gnu.org>
-
-	* target.h (gcc_target): New field allocate_initial_value.
-	* target-def.h (TARGET_ALLOCATE_INITIAL_VALUE): New macro.
-	(TARGET_INITIALIZER): Include it.
-	* integrate.c (allocate_initial_values): Use
-	targetm.allocate_initial_value.
-	* system.h: Poison ALLOCATE_INITIAL_VALUE.
-	* config/sh/sh-protos.h (sh_pr_n_sets): Delete.
-	* config/sh/sh.c (sh_pr_n_sets): Make it static.
-	(sh_allocate_initila_value): New function.
-	(TARGET_ALLOCATE_INITIAL_VALUE): Override default.
-	* config/sh/sh.h (ALLOCATE_INITIAL_VALUE): Delete.
-	* doc/tm.texi (TARGET_ALLOCATE_INITIAL_VALUE): Rename and
-	update from ALLOCATE_INITIAL_VALUE.
-
-2005-06-28  Richard Henderson  <rth@redhat.com>
-
-	* tree-vectorizer.c (vect_is_simple_reduction): Compare types
-	using TYPE_MAIN_VARIANT.
-
-2005-06-28  Richard Henderson  <rth@redhat.com>
-
-	* config/ia64/ia64.c (ia64_expand_vecint_compare): Decompose to EQ
-	when using psubN.uuu.
-
-2005-06-29  Kelley Cook <kcook@gcc.gnu.org>
-
-	* doc/gcc.texi: Update FSF address.
-
-2005-06-28  Eric Christopher  <echristo@redhat.com>
-
-	PR c/22052
-	PR c/21975
-	* c-decl.c (diagnose_mismatched_decls): Define DECL_EXTERN_INLINE.
-	Use. Fix detection of invalid extern inline redefinition.
-
-2005-06-28  Diego Novillo  <dnovillo@redhat.com>
-
-	* tree-optimize.c (init_tree_optimization_passes): Fix typo.
-
-2005-06-28  Andrew Pinski  <pinskia@physics.uc.edu>
-
-	* config/rs6000/rs6000.md (setmemsi): s/operand/operands/.
-
-2005-06-28  Richard Henderson  <rth@redhat.com>
-
-	* config/ia64/ia64.c (ia64_expand_vecint_compare): Use unsigned
-	saturating subtraction for QI and HImode unsigned compares.  Use
-	bit arithmetic tricks for SImode unsigned compares.
-	(ia64_expand_vcondu_v2si): Remove.
-	(ia64_expand_vecint_cmov): Don't call it.
-
-2005-06-28  Richard Henderson  <rth@redhat.com>
-
-	* rtlanal.c (nonzero_bits1): Use the mode of the value for
-	determining integral-ness for comparisons.
-
-2005-06-28  Andrew Pinski  <pinskia@physics.uc.edu>
-
-	* config/rs6000/rs6000.md (setmemsi): Fix operand 2.
-
-2005-06-28  Joseph S. Myers  <joseph@codesourcery.com>
-
-	* target.h (invalid_conversion, invalid_unary_op,
-	invalid_binary_op): New hooks.
-	* target-def.h (TARGET_INVALID_CONVERSION,
-	TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP,
-	TARGET_INITIALIZER): Likewise.
-	* hooks.h (hook_constcharptr_tree_tree_null,
-	hook_constcharptr_int_tree_null,
-	hook_constcharptr_int_tree_tree_null): New.
-	* hooks.c (hook_constcharptr_tree_tree_null,
-	hook_constcharptr_int_tree_null,
-	hook_constcharptr_int_tree_tree_null): Likewise.
-	* gcc/doc/tm.texi (TARGET_INVALID_CONVERSION,
-	TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Document.
-	* c-convert.c (convert): Use invalid_conversion hook.
-	* c-typeck.c (build_unary_op): Use invalid_unary_op hook.
-	(build_binary_op): Use invalid_binary_op hook.
-	* config/ia64/ia64-modes.def: Define RFmode.
-	* config/ia64/ia64-protos.h (spill_xfmode_operand): Remove.
-	(ia64_expand_movxf_movrf): New.
-	* config/ia64/ia64.md (movxf): Move code to
-	ia64_expand_movxf_movrf.
-	(movrf, movrf_internal): New.
-	* ia64.c (ia64_invalid_conversion, ia64_invalid_unary_op,
-	ia64_invalid_binary_op, TARGET_INVALID_CONVERSION,
-	TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): New.
-	(spill_xfmode_operand): Rename to spill_xfmode_rfmode_operand.
-	Add mode parameter.  Make static.
-	(ia64_expand_movxf_movrf): New, moved from ia64.md.  Handle RFmode
-	as well as XFmode.
-	(ia64_function_arg, ia64_function_value, ia64_register_move_cost,
-	ia64_scalar_mode_supported_p): Handle RFmode as well as XFmode.
-	(ia64_init_builtins): Set up __fpreg as RFmode.
-	(ia64_mangle_fundamental_type): Mangle __fpreg as u7__fpreg.
-
-2006-06-28  Adrian Straetling  <straetling@de.ibm.com>
-
-	* builtins.c: (expand_builtin_memset): Rewrite to support
-	'set_storage_via_setmem'.
-	* expr.c: (enum insn_code setmem_optab): Define.
-	(enum insn_code clrmem_optab): Remove.
-	(set_storage_via_setmem): New function.
-	(clear_storage_via_setmem): Remove.
-	(clear_storage): Replace call to "clear_storage_via_clrmem" with
-	"set_storage_via_setmem".
-	* expr.h: (set_storage_via_setmem): Declare.
-	(CLEAR_RATIO): Redefine using HAVE_setmemM.
-	* optabs.h: (enum insn_code setmem_optab): Declare.
-	(enum insn_code clrmem_optab): Remove.
-	* optabs.c: (init_optabs): Initialize setmem_optab.
-	(enum insn_code clrmem_optab): Remove.
-	* genopinit.c: (otabs): Likewise.
-	* doc/md.texi: Document new standard pattern 'setmem'. Remove
-	  'clrmem'.
-	* config/alpha/alpha.c: (alpha_expand_block_clear): Adjust
-	'operands' ordering.
-	* config/frv/frv.c: (frv_expand_block_clear): Likewise.
-	* config/rs6000/rs6000.c: (expand_block_clear): Likewise.
-	* config/alpha/alpha.md: ("clrmemqi", "clrmemdi"): Rename to "setmemM".
-	FAIL on operands[2]!=const0_rtx. Adjust 'operands' ordering.
-	* config/avr/avr.md: ("clrmemhi"): Likewise.
-	* config/frv/frv.md: ("clrmemsi"): Likewise.
-	* config/i386/i386.md: ("clrmemsi", "clrmemdi"): Likewise.
-	* config/pa/pa.md: ("clrmemsi", "clrmemdi"): Likewise.
-	* config/rs6000/rs6000.md: ("clrmemsi"): Likewise.
-	* config/s390/s390.md: ("clrmem<mode>"): Likewise.
-
-2005-06-28  Paul Brook  <paul@codesourcery.com>
-
-	* Makefile.in: Set and use UNWIND_H.  Install as unwind.h.
-	* c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc.
-	* except.c (add_ehspec_entry): Generate arm eabi filter lists.
-	(assign_filter_values): Ditto.
-	(output_ttype): New function.
-	(output_function_exception_table): Use output_ttype.  Generate arm
-	eabi filter lists.
-	(default_init_unwind_resume_libfunc): New function.
-	* except.h (default_init_unwind_resume_libfunc): Add prototype.
-	* optabs.c (init_optabs): Don't set unwind_resume_libfunc.
-	* opts.c (decode_options): Use targetm.unwind_tables_default.
-	* target-def.h (TARGET_ASM_TTYPE): Provide and use definition.
-	(TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto.
-	* target.h (struct gcc_target): Add asm.ttype, unwind_tables_default
-	and arm_eabi_unwinder.
-	* unwind-c.c: Support Arm EABI unwinder.
-	* unwind.h: Rename ...
-	* unwind-generic.h: ... To this.
-	* doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document.
-	(TARGET_UNWID_TABLES_DEFAULT): Document.
-
-	* config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype.
-	* config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions.
-	(TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER):
-	Define.
-	(thumb_pushpop, thumb_output_function_prologue): Output unwinding
-	directives.
-	(arm_unwind_emit_stm, arm_unwind_emit_set): New functions.
-	* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when
-	!TARGET_UNWIND_INFO.
-	(ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define.
-	* config/arm/bpabi.h (TARGET_UNWIND_INFO): Define.
-	* config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME,
-	ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND.
-	* config/arm/lib1funcs.asm: Include libunwind.S.
-	* config/arm/libgcc-bpabi.ver: Add unwinding routines.
-	* config/arm/libunwind.S: New file.
-	* config/arm/pr-support.c: New file.
-	* config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind.
-	(UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
-	* config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
-	* config/arm/unwind-arm.c: New file.
-	* config/arm/unwind-arm.h: New file.
-	* config/i386/t-netware (USER_H): Remove unwind.h.
-	* config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define.
-
-2005-06-28  DJ Delorie  <dj@redhat.com>
-
-	* c-decl.c (pop_scope): Move warning control into warning call.
-	(diagnose_mismatched_decls): Likewise.
-	(pushdecl): Likewise.
-	(start_decl): Likewise.
-	(grokparms): Likewise.
-	(start_function): Likewise.
-	(store_parm_decls_newstyle): Likewise.
-	(store_parm_decls_oldstyle): Likewise.
-	(finish_function): Likewise.
-	(declspecs_add_scspec): Likewise.
-	* c-format.c (decode_format_attr): Likewise.
-	(maybe_read_dollar_number): Likewise.
-	(avoid_dollar_number): Likewise.
-	(finish_dollar_format_checking): Likewise.
-	(check_format_info): Likewise.
-	(check_format_info_main): Likewise.
-	(check_format_types): Likewise.
-	(format_type_warning): Likewise.
-	* c-typeck.c (function_types_compatible_p): Likewise.
-	(build_array_ref): Likewise.
-	(convert_arguments): Likewise.
-	(build_c_cast): Likewise.
-	(store_init_value): Likewise.
-	(process_init_element): Likewise.
-	(c_start_case): Likewise.
-	* stor-layout.c (finalize_record_size): Likewise.
-	* tree-cfg.c (execute_warn_function_noreturn): Likewise.
-	* tree-inline.c (expand_call_inline): Likewise.
-
-2005-06-28  Uros Bizjak  <uros@kss-loka.si>
-
-	PR target/22134
-	* config/i386/i386.md (fist<mode>2_with_temp splitter):
-	Clobber memory operand, not scratch register.
-
-2005-06-28  Andreas Krebbel  <krebbel1@de.ibm.com>
-
-	* config/s390/s390.c (machine_function): New field has_landing_pad_p.
-	(s390_set_has_landing_pad_p, s390_reg_clobbered_rtx,
-	 s390_regs_ever_clobbered): New functions.
-	(s390_return_addr_rtx): Use get_hard_reg_initial_value.
-	(s390_register_info, s390_init_frame_layout, s390_update_frame_layout):
-	Use s390_regs_ever_clobbered.
-	(s390_emit_prologue): Don't use r14 as temp reg if its content is used
-	for builtin_return_address.
-	* config/s390/s390.md ("exception_receiver"): New expander.
-	* config/s390/s390-protos.h (s390_set_has_landing_pad_p): Prototype
-	added.
-
-2005-06-28  Andreas Krebbel  <krebbel1@de.ibm.com>
-
-	* except.c (current_function_has_exception_handlers): Function 
-	description added and if statements merged.
-
-2005-06-28  Richard Henderson  <rth@redhat.com>
-
-	* config/i386/sse.md (smaxv16qi3): Fix buffer overflow.
-	(sminv16qi3, umaxv8hi3, uminv8hi3): Likewise.
-
-2005-06-27  Richard Henderson  <rth@redhat.com>
-
-	* config/ia64/ia64.c (ia64_expand_vcondu_v2si): Generate proper
-	comparison operations.
-	(ia64_expand_vecint_minmax): Fix size of xops.
-	* config/ia64/vect.md (umax<VECINT>3): Fix fallback pattern typo.
-	(vec_shl_<VECINT>, vec_shr_<VECINT>): New.
-
-2005-06-27  Richard Henderson  <rth@redhat.com>
-
-	* tree-vect-transform.c (get_initial_def_for_reduction): Use correct
-	type for DEF and INIT_VAL.  Pretend MIN/MAX need epilogue adjustment.
-
-2005-06-27  Richard Henderson  <rth@redhat.com>
-
-	* config/i386/sse.md (vec_shl_<SSEMODEI>, vec_shr_<SSEMODEI>): New.
-	(smaxv16qi3, umaxv8hi3, sminv16qi3, uminv8hi3): New.
-
-2005-06-27  Richard Henderson  <rth@redhat.com>
-
-	* tree-vect-transform.c (vect_create_epilog_for_reduction): Remove
-	duplicate little-endian adjustment.
-
-2005-06-28  Kelley Cook  <kcook@gcc.gnu.org>
-
-	* doc/include/texinfo.tex: Import from upstream CVS.
-
-2005-06-28  Jan Hubicka  <jh@suse.cz>
-
-	* cgraph.c (cgraph_remove_node): Do not release function bodies until
-	full cgraph is built.
-	* cgraph.h (cgraph_decide_inlining_incrementally): Add early argument.
-	* cgraphunit.c (cgraph_finalize_function): Update call of
-	cgraph_decide_inlining_incrementally.
-	(initialize_inline_failed): Break out of ...
-	(cgraph_analyze_function): ... here.
-	(rebuild_cgraph_edges): New function.
-	(pass_rebuild_cgraph_edges): New pass.
-	* common.opt (fearly-inlining): New flag.
-	* ipa-inline.c: Include ggc.h
-	(cgraph_clone_inlined_nodes): Avoid re-using of original copy
-	when cgraph is not fully built.
-	(cgraph_decide_inlining_incrementally): Add early mode.
-	(cgraph_early_inlining): New function.
-	(cgraph_gate_early_inlining): Likewise.
-	(pass_early_ipa_inline): New pass.
-	* ipa.c (cgraph_postorder): NULLify aux pointer.
-	* tree-inline.c (expand_call_inline): Avoid warning early.
-	* tree-optimize.c (pass_early_local_passes): New.
-	(execute_cleanup_cfg_pre_ipa): New.
-	(pass_cleanup_cfg): New.
-	(register_dump_files): Fix handling subpasses of IPA pass.
-	(init_tree_optimization_passes): Add early passes.
-	(execute_ipa_pass_list): Fix handling of subpasses of IPA pass.
-	* passes.h (pass_early_tree_profile, pass_rebuild_cgraph_edges,
-	pass_early_ipa_inline): New passes.
-	* tree-profile.c (do_early_tree_profiling, pass_early_tree_profile): New.
-
-	* invoke.texi: Document early-inlining.
-
-2005-06-28  Kelley Cook  <kcook@gcc.gnu.org>
-
-	* doc/include/fdl.texi: Merge in changes from upstream.
-	* doc/include/gpl.texi: Likewise.
-
-2005-06-27  Diego Novillo  <dnovillo@redhat.com>
-
-	PR 21959
-	* tree-ssa-loop-niter.c (scev_probably_wraps_p): Handle type
-	casts between unsigned and signed types with different size
-	or precision.
-
-2005-06-28  Jan Hubicka  <jh@suse.cz>
-
-	* tree-optimize.c (exercute_free_datastructures):
-	Do not disband implicit edges; do not attempt to build insn list;
-	do not free cfg annotations.
-	(execute_free_cfg_annotations); Disband implicit edges here;
-	free cfg annotations here too.
-	(pass_free_cfg_annotations); New pass.
-	(init_tree_optimization_passes); Add pass_free_cfg_annotations.
-	* tree-ssa-operands.c (free_ssa_operands); Recover; export.
-	* tree-ssa-operands.h (free_ssa_operands); declare.
-	* tree-ssa.c (delete_tree_ssa); Free SSA operand; mark stmt modified;
-	kill PHI nodes.
-	* tree-ssanames.c (release_defs): Kill addresses_taken.
-
-	* basic-block.h (basic_block_def): Kill rbi.
-	(reorder_block_def): Kill; Remove next field (replaced by aux);
-	move other fields to ...
-	(rtl_bb_info): ... here.
-	* bb-reorder.c (find_traces, rotate_loop, find_traces_1_round,
-	copy_bb, connect_traces, add_labels_and_missing_jumps
-	fix_up_fall_thru_edges, fix_crossing_conditional_branches,
-	duplicate_computed_gotos, partition_hot_cold_basic-blocks):
-	Update to new fields.
-	* cfg.c (initialize_bb_rbi): Kill.
-	* cfglayout.c (record_effective_endpoints, fixup_reorder_chain,
-	fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update.
-	* cfgrtl.c (cfg_layout_create_basic_block): Do not initialize rbi.
-	(try_redirect_by_replacing_jump): Update rbi references.
-	(cfg_layout_split_block): Likewise.
-	(cfg_layout_delete_block): Likewise.
-	(cfg_layout_merge_blocks): Likewise.
-	* function.c (thread_prologue_and_epilogue_insns): Likewise.
-	* passes.c (rest_of_handle_sms): Likewise.
-	* tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
-
-2005-06-27  David Edelsohn  <edelsohn@gnu.org>
-
-	* config/rs6000/rs6000.c (rs6000_file_start): Note PPC405 erratum
-	in verbose_asm output.
-	* config/rs6000/rs6000.h (PPC405_ERRATUM77): Bracket with
-	CONFIG_PPC405CR.
-	* config.gcc (powerpc with_which): Define CONFIG_PPC405CR for
-	405cr.
-
-2005-06-27  Jakub Jelinek  <jakub@redhat.com>
-
-	* builtin-attrs.def (DEF_ATTR_FOR_INT): Add for 5 and 6.
-	(DEF_LIST_INT_INT): Add for 4,0, 4,5, 5,0, 5,6.
-	(ATTR_NOTHROW_NONNULL_4, ATTR_NOTHROW_NONNULL_5): Define.
-	(ATTR_FORMAT_PRINTF_4_0, ATTR_FORMAT_PRINTF_4_5,
-	ATTR_FORMAT_PRINTF_5_0, ATTR_FORMAT_PRINTF_5_6): Define.
-	* builtins.c: Include tree-flow.h.
-	(expand_builtin_mempcpy, expand_builtin_memmove): Comment fixes.


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]