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 empty function compilation at -O0 level:
    Overall memory needed: 8801k
    Peak memory use before GGC: 1488k
    Peak memory use after GGC: 1437k
    Maximum of released memory in single GGC run: 85k
    Garbage: 218k
    Leak: 1537k
    Overhead: 187k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1539k
    Pre-IPA-Overhead: 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1539k
    Post-IPA-Overhead: 186k

comparing empty function compilation at -O0 -g level:
    Overall memory needed: 8825k
    Peak memory use before GGC: 1516k
    Peak memory use after GGC: 1464k
    Maximum of released memory in single GGC run: 87k
    Garbage: 219k
    Leak: 1570k
    Overhead: 192k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1539k
    Pre-IPA-Overhead: 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1539k
    Post-IPA-Overhead: 186k

comparing empty function compilation at -O1 level:
    Overall memory needed: 8909k
    Peak memory use before GGC: 1488k
    Peak memory use after GGC: 1437k
    Maximum of released memory in single GGC run: 87k
    Garbage: 221k
    Leak: 1537k
    Overhead: 188k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k
    Pre-IPA-Overhead: 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k
    Post-IPA-Overhead: 186k

comparing empty function compilation at -O2 level:
    Overall memory needed: 8925k -> 8929k
    Peak memory use before GGC: 1488k
    Peak memory use after GGC: 1437k
    Maximum of released memory in single GGC run: 92k
    Garbage: 226k
    Leak: 1537k
    Overhead: 189k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k
    Pre-IPA-Overhead: 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k
    Post-IPA-Overhead: 186k

comparing empty function compilation at -O3 level:
    Overall memory needed: 8933k -> 8925k
    Peak memory use before GGC: 1488k
    Peak memory use after GGC: 1437k
    Maximum of released memory in single GGC run: 92k
    Garbage: 226k
    Leak: 1537k
    Overhead: 189k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k
    Pre-IPA-Overhead: 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k
    Post-IPA-Overhead: 186k

comparing combine.c compilation at -O0 level:
    Overall memory needed: 31457k -> 31461k
    Peak memory use before GGC: 17484k
    Peak memory use after GGC: 17020k
    Maximum of released memory in single GGC run: 1913k
    Garbage: 38030k
    Leak: 7155k
    Overhead: 5517k
    GGC runs: 332 -> 331
    Pre-IPA-Garbage: 12539k
    Pre-IPA-Leak: 18401k
    Pre-IPA-Overhead: 2507k
    Post-IPA-Garbage: 12539k
    Post-IPA-Leak: 18401k
    Post-IPA-Overhead: 2507k

comparing combine.c compilation at -O0 -g level:
    Overall memory needed: 33401k -> 33417k
    Peak memory use before GGC: 19392k
    Peak memory use after GGC: 18859k
    Maximum of released memory in single GGC run: 1923k
    Garbage: 38245k
    Leak: 10441k
    Overhead: 6330k -> 6330k
    GGC runs: 316 -> 315
    Pre-IPA-Garbage: 12558k
    Pre-IPA-Leak: 20650k
    Pre-IPA-Overhead: 2989k
    Post-IPA-Garbage: 12558k
    Post-IPA-Leak: 20650k
    Post-IPA-Overhead: 2989k

comparing combine.c compilation at -O1 level:
    Overall memory needed: 31809k -> 31797k
    Peak memory use before GGC: 16493k -> 16476k
    Peak memory use after GGC: 16317k -> 16310k
    Maximum of released memory in single GGC run: 1378k
    Garbage: 45478k -> 45480k
    Leak: 7155k
    Overhead: 6416k -> 6417k
    GGC runs: 386 -> 387
    Pre-IPA-Garbage: 12959k
    Pre-IPA-Leak: 17620k
    Pre-IPA-Overhead: 2503k
    Post-IPA-Garbage: 12959k
    Post-IPA-Leak: 17620k
    Post-IPA-Overhead: 2503k

comparing combine.c compilation at -O2 level:
  Amount of memory still referenced at the end of compilation increased from 7170k to 7188k, overall 0.26%
    Overall memory needed: 33369k -> 33277k
    Peak memory use before GGC: 16585k -> 16598k
    Peak memory use after GGC: 16415k -> 16418k
    Maximum of released memory in single GGC run: 1489k
    Garbage: 56705k -> 56715k
    Leak: 7170k -> 7188k
    Overhead: 8187k -> 8191k
    GGC runs: 441 -> 442
    Pre-IPA-Garbage: 13096k
    Pre-IPA-Leak: 17707k
    Pre-IPA-Overhead: 2520k
    Post-IPA-Garbage: 13096k
    Post-IPA-Leak: 17707k
    Post-IPA-Overhead: 2520k

comparing combine.c compilation at -O3 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 16586k to 16666k, overall 0.48%
  Amount of produced GGC garbage increased from 67490k to 68591k, overall 1.63%
    Overall memory needed: 33585k -> 33941k
    Peak memory use before GGC: 16586k -> 16666k
    Peak memory use after GGC: 16420k -> 16424k
    Maximum of released memory in single GGC run: 1672k -> 1655k
    Garbage: 67490k -> 68591k
    Leak: 7218k -> 7222k
    Overhead: 9701k -> 9799k
    GGC runs: 467 -> 471
    Pre-IPA-Garbage: 13096k
    Pre-IPA-Leak: 17707k -> 17711k
    Pre-IPA-Overhead: 2520k
    Post-IPA-Garbage: 13096k
    Post-IPA-Leak: 17707k -> 17711k
    Post-IPA-Overhead: 2520k

comparing insn-attrtab.c compilation at -O0 level:
    Overall memory needed: 152705k -> 152717k
    Peak memory use before GGC: 65608k
    Peak memory use after GGC: 52818k
    Maximum of released memory in single GGC run: 26604k
    Garbage: 129481k
    Leak: 9587k
    Overhead: 16872k
    GGC runs: 259
    Pre-IPA-Garbage: 40782k
    Pre-IPA-Leak: 51014k
    Pre-IPA-Overhead: 7761k
    Post-IPA-Garbage: 40782k
    Post-IPA-Leak: 51014k
    Post-IPA-Overhead: 7761k

comparing insn-attrtab.c compilation at -O0 -g level:
    Overall memory needed: 154021k -> 154017k
    Peak memory use before GGC: 66873k
    Peak memory use after GGC: 54081k
    Maximum of released memory in single GGC run: 26604k
    Garbage: 129819k
    Leak: 11219k
    Overhead: 17325k
    GGC runs: 253
    Pre-IPA-Garbage: 40791k
    Pre-IPA-Leak: 52539k
    Pre-IPA-Overhead: 8091k
    Post-IPA-Garbage: 40791k
    Post-IPA-Leak: 52539k
    Post-IPA-Overhead: 8091k

comparing insn-attrtab.c compilation at -O1 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 54138k to 55377k, overall 2.29%
  Peak amount of GGC memory still allocated after garbage collecting increased from 43649k to 44890k, overall 2.84%
    Overall memory needed: 154185k -> 155113k
    Peak memory use before GGC: 54138k -> 55377k
    Peak memory use after GGC: 43649k -> 44890k
    Maximum of released memory in single GGC run: 17343k -> 17237k
    Garbage: 182194k -> 182196k
    Leak: 9178k
    Overhead: 23658k -> 23659k
    GGC runs: 293 -> 298
    Pre-IPA-Garbage: 45067k
    Pre-IPA-Leak: 45085k
    Pre-IPA-Overhead: 7586k
    Post-IPA-Garbage: 45067k
    Post-IPA-Leak: 45085k
    Post-IPA-Overhead: 7586k

comparing insn-attrtab.c compilation at -O2 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 53557k to 54822k, overall 2.36%
  Peak amount of GGC memory still allocated after garbage collecting increased from 43378k to 44640k, overall 2.91%
    Overall memory needed: 200069k -> 202649k
    Peak memory use before GGC: 53557k -> 54822k
    Peak memory use after GGC: 43378k -> 44640k
    Maximum of released memory in single GGC run: 18813k -> 18703k
    Garbage: 212745k -> 212767k
    Leak: 9192k -> 9192k
    Overhead: 29525k -> 29533k
    GGC runs: 325 -> 331
    Pre-IPA-Garbage: 45129k -> 45129k
    Pre-IPA-Leak: 45092k
    Pre-IPA-Overhead: 7591k -> 7591k
    Post-IPA-Garbage: 45129k -> 45129k
    Post-IPA-Leak: 45092k
    Post-IPA-Overhead: 7591k -> 7591k

comparing insn-attrtab.c compilation at -O3 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 53562k to 54822k, overall 2.35%
  Peak amount of GGC memory still allocated after garbage collecting increased from 43382k to 44640k, overall 2.90%
    Overall memory needed: 199989k -> 202429k
    Peak memory use before GGC: 53562k -> 54822k
    Peak memory use after GGC: 43382k -> 44640k
    Maximum of released memory in single GGC run: 18758k -> 18702k
    Garbage: 213959k -> 213987k
    Leak: 9199k -> 9199k
    Overhead: 29918k -> 29924k
    GGC runs: 331 -> 339
    Pre-IPA-Garbage: 45129k -> 45129k
    Pre-IPA-Leak: 45092k
    Pre-IPA-Overhead: 7591k -> 7591k
    Post-IPA-Garbage: 45129k -> 45129k
    Post-IPA-Leak: 45092k
    Post-IPA-Overhead: 7591k -> 7591k

comparing Gerald's testcase PR8361 compilation at -O0 level:
    Overall memory needed: 145989k -> 146009k
    Peak memory use before GGC: 81663k
    Peak memory use after GGC: 80854k
    Maximum of released memory in single GGC run: 13633k
    Garbage: 197989k -> 197991k
    Leak: 55388k
    Overhead: 28245k -> 28245k
    GGC runs: 447
    Pre-IPA-Garbage: 110138k -> 110139k
    Pre-IPA-Leak: 84448k
    Pre-IPA-Overhead: 14991k -> 14991k
    Post-IPA-Garbage: 110138k -> 110139k
    Post-IPA-Leak: 84448k
    Post-IPA-Overhead: 14991k -> 14991k

comparing Gerald's testcase PR8361 compilation at -O0 -g level:
    Overall memory needed: 163929k -> 163961k
    Peak memory use before GGC: 95805k -> 95804k
    Peak memory use after GGC: 94854k
    Maximum of released memory in single GGC run: 13895k
    Garbage: 203319k -> 203319k
    Leak: 82480k
    Overhead: 34808k -> 34808k
    GGC runs: 419
    Pre-IPA-Garbage: 110724k -> 110724k
    Pre-IPA-Leak: 100969k
    Pre-IPA-Overhead: 18496k -> 18496k
    Post-IPA-Garbage: 110724k -> 110724k
    Post-IPA-Leak: 100969k
    Post-IPA-Overhead: 18496k -> 18496k

comparing Gerald's testcase PR8361 compilation at -O1 level:
  Peak amount of GGC memory still allocated after garbage collecting increased from 81786k to 81887k, overall 0.12%
    Overall memory needed: 108025k -> 108289k
    Peak memory use before GGC: 82668k -> 82706k
    Peak memory use after GGC: 81786k -> 81887k
    Maximum of released memory in single GGC run: 13451k
    Garbage: 260229k -> 259974k
    Leak: 52195k -> 52199k
    Overhead: 29808k -> 29779k
    GGC runs: 515 -> 516
    Pre-IPA-Garbage: 150372k -> 150370k
    Pre-IPA-Leak: 86959k
    Pre-IPA-Overhead: 18111k -> 18111k
    Post-IPA-Garbage: 150372k -> 150370k
    Post-IPA-Leak: 86959k
    Post-IPA-Overhead: 18111k -> 18111k

comparing Gerald's testcase PR8361 compilation at -O2 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 82145k to 82671k, overall 0.64%
  Peak amount of GGC memory still allocated after garbage collecting increased from 80868k to 80972k, overall 0.13%
    Overall memory needed: 108269k -> 107885k
    Peak memory use before GGC: 82145k -> 82671k
    Peak memory use after GGC: 80868k -> 80972k
    Maximum of released memory in single GGC run: 13453k
    Garbage: 298989k -> 298515k
    Leak: 52287k -> 52288k
    Overhead: 35055k -> 34914k
    GGC runs: 567 -> 563
    Pre-IPA-Garbage: 153432k -> 153516k
    Pre-IPA-Leak: 86018k -> 85998k
    Pre-IPA-Overhead: 18328k -> 18334k
    Post-IPA-Garbage: 153432k -> 153516k
    Post-IPA-Leak: 86018k -> 85998k
    Post-IPA-Overhead: 18328k -> 18334k

comparing Gerald's testcase PR8361 compilation at -O3 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 82604k to 83129k, overall 0.64%
    Overall memory needed: 108105k -> 108065k
    Peak memory use before GGC: 82604k -> 83129k
    Peak memory use after GGC: 81094k -> 81100k
    Maximum of released memory in single GGC run: 13453k
    Garbage: 317385k -> 316584k
    Leak: 52286k -> 52290k
    Overhead: 37299k -> 37336k
    GGC runs: 583 -> 580
    Pre-IPA-Garbage: 153432k -> 153516k
    Pre-IPA-Leak: 86022k -> 86002k
    Pre-IPA-Overhead: 18328k -> 18335k
    Post-IPA-Garbage: 153432k -> 153516k
    Post-IPA-Leak: 86022k -> 86002k
    Post-IPA-Overhead: 18328k -> 18335k

comparing PR rtl-optimization/28071 testcase compilation at -O0 level:
    Overall memory needed: 358813k -> 358717k
    Peak memory use before GGC: 78173k
    Peak memory use after GGC: 49107k
    Maximum of released memory in single GGC run: 37057k
    Garbage: 140058k
    Leak: 7711k
    Overhead: 25004k
    GGC runs: 86
    Pre-IPA-Garbage: 12038k
    Pre-IPA-Leak: 18626k
    Pre-IPA-Overhead: 2447k
    Post-IPA-Garbage: 12038k
    Post-IPA-Leak: 18626k
    Post-IPA-Overhead: 2447k

comparing PR rtl-optimization/28071 testcase compilation at -O0 -g level:
    Overall memory needed: 358605k -> 359301k
    Peak memory use before GGC: 78856k
    Peak memory use after GGC: 49791k
    Maximum of released memory in single GGC run: 37041k
    Garbage: 140124k
    Leak: 9707k
    Overhead: 25573k
    GGC runs: 94
    Pre-IPA-Garbage: 12040k
    Pre-IPA-Leak: 18873k
    Pre-IPA-Overhead: 2500k
    Post-IPA-Garbage: 12040k
    Post-IPA-Leak: 18873k
    Post-IPA-Overhead: 2500k

comparing PR rtl-optimization/28071 testcase compilation at -O1 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 70831k to 74131k, overall 4.66%
  Peak amount of GGC memory still allocated after garbage collecting increased from 66115k to 69415k, overall 4.99%
    Overall memory needed: 209049k -> 210069k
    Peak memory use before GGC: 70831k -> 74131k
    Peak memory use after GGC: 66115k -> 69415k
    Maximum of released memory in single GGC run: 35381k -> 35375k
    Garbage: 216059k -> 216166k
    Leak: 9258k -> 9258k
    Overhead: 32785k -> 32776k
    GGC runs: 96 -> 95
    Pre-IPA-Garbage: 39202k
    Pre-IPA-Leak: 63682k
    Pre-IPA-Overhead: 6995k
    Post-IPA-Garbage: 39202k
    Post-IPA-Leak: 63682k
    Post-IPA-Overhead: 6995k

comparing PR rtl-optimization/28071 testcase compilation at -O2 level:
  Peak amount of GGC memory allocated before garbage collecting increased from 70831k to 74132k, overall 4.66%
  Peak amount of GGC memory still allocated after garbage collecting increased from 66115k to 69415k, overall 4.99%
    Overall memory needed: 530877k -> 538169k
    Peak memory use before GGC: 70831k -> 74132k
    Peak memory use after GGC: 66115k -> 69415k
    Maximum of released memory in single GGC run: 37550k -> 37554k
    Garbage: 266941k -> 267051k
    Leak: 9006k -> 9005k
    Overhead: 39902k -> 39877k
    GGC runs: 106
    Pre-IPA-Garbage: 89544k -> 89544k
    Pre-IPA-Leak: 80238k
    Pre-IPA-Overhead: 11099k -> 11099k
    Post-IPA-Garbage: 89544k -> 89544k
    Post-IPA-Leak: 80238k
    Post-IPA-Overhead: 11099k -> 11099k

comparing PR rtl-optimization/28071 testcase compilation at -O3 -fno-tree-pre -fno-tree-fre level:
  Peak amount of GGC memory allocated before garbage collecting increased from 131401k to 134702k, overall 2.51%
  Peak amount of GGC memory still allocated after garbage collecting increased from 123130k to 126430k, overall 2.68%
    Overall memory needed: 1235273k -> 1235873k
    Peak memory use before GGC: 131401k -> 134702k
    Peak memory use after GGC: 123130k -> 126430k
    Maximum of released memory in single GGC run: 49333k -> 54316k
    Garbage: 342802k -> 342612k
    Leak: 10281k -> 10282k
    Overhead: 43967k -> 43926k
    GGC runs: 106
    Pre-IPA-Garbage: 89544k -> 89544k
    Pre-IPA-Leak: 80238k
    Pre-IPA-Overhead: 11099k -> 11099k
    Post-IPA-Garbage: 89544k -> 89544k
    Post-IPA-Leak: 80238k
    Post-IPA-Overhead: 11099k -> 11099k

Head of the ChangeLog is:

--- /usr/src/SpecTests/sandbox-haydn-memory/x86_64/mem-result/ChangeLog	2009-05-10 10:01:59.000000000 +0000
+++ /usr/src/SpecTests/sandbox-haydn-memory/gcc/gcc/ChangeLog	2009-05-10 19:17:48.000000000 +0000
@@ -1,3 +1,125 @@
+2009-05-10  Michael Matz  <matz@suse.de>
+
+	PR target/40031
+	* config/arm/arm.c (require_pic_register): Emit on entry edge,
+	not at entry of function.
+
+2009-05-10  Richard Guenther  <rguenther@suse.de>
+
+	PR tree-optimization/40081
+	Revert
+	* tree-sra.c (instantiate_element): Instantiate scalar replacements
+	using the main variant of the element type.  Do not fiddle with
+	TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS.
+
+	* tree-sra.c (sra_type_can_be_decomposed_p): Do not decompose
+	structs with volatile fields.
+
+2009-05-10  Jan Hubicka  <jh@suse.cz>
+
+	* tree-inline.c (delete_unreachable_blocks_update_callgraph): Declare.
+	(estimate_move_cost): Assert that it does not get called for VOID_TYPE_P.
+	(estimate_num_insns): Skip VOID types in argument handling.
+	(optimize_inline_calls): Delete unreachable blocks and verify that
+	callgraph is valid.
+
+2009-05-10  Jan Hubicka  <jh@suse.cz>
+
+	* cgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node.
+	* cgraph.c (cgraph_mark_address_taken_node): New function.
+	(dump_cgraph_node): Dump new flag.
+	* cgraph.h (struct cgraph_node): Add address_taken.
+	(cgraph_mark_address_taken_node): New function.
+	* ipa.c (cgraph_postorder): Prioritize functions with address taken
+	since new direct calls can be born.
+
+2009-05-10  Joseph Myers  <joseph@codesourcery.com>
+
+	* c-lex.c (c_lex_with_flags): Expect cpp_hashnode in
+	tok->val.node.node.
+
+2009-05-10  Jan Hubicka  <jh@suse.cz>
+
+	PR middle-end/40084
+	* cgraph.c (cgraph_update_edges_for_call_stmt_node): Take old_call
+	argument; rewrite.
+	(cgraph_update_edges_for_call_stmt): Take old_decl argument.
+	* cgraph.h (cgraph_update_edges_for_call_stmt): Update prototype.
+	* tree-inline.c (copy_bb): Set frequency correctly.
+	(fold_marked_statements): Update call to
+	cgraph_update_edges_for_call_stmt.
+
+2009-05-10  Joseph Myers  <joseph@codesourcery.com>
+
+	* config/arc/arc.c (arc_handle_interrupt_attribute): Use %qE for
+	identifiers in diagnostics.
+	* config/arm/arm.c (arm_handle_fndecl_attribute,
+	arm_handle_isr_attribute): Likewise.
+	* config/avr/avr.c (avr_handle_progmem_attribute,
+	avr_handle_fndecl_attribute, avr_handle_fntype_attribute):
+	Likewise.
+	* config/bfin/bfin.c (handle_int_attribute,
+	bfin_handle_longcall_attribute, bfin_handle_l1_text_attribute,
+	bfin_handle_l1_data_attribute, bfin_handle_longcall_attribute,
+	bfin_handle_l1_text_attribute, bfin_handle_l1_data_attribute):
+	Likewise.
+	* config/darwin.c (darwin_handle_kext_attribute,
+	darwin_handle_weak_import_attribute): Likewise.
+	* config/h8300/h8300.c (h8300_handle_fndecl_attribute,
+	h8300_handle_eightbit_data_attribute,
+	h8300_handle_tiny_data_attribute): Likewise.
+	* config/i386/i386.c (ix86_handle_cconv_attribute,
+	ix86_handle_abi_attribute, ix86_handle_struct_attribute):
+	Likewise.
+	* config/i386/winnt.c (ix86_handle_shared_attribute,
+	ix86_handle_selectany_attribute): Likewise.
+	* config/ia64/ia64.c (ia64_handle_model_attribute): Likewise.
+	* config/m32c/m32c.c (function_vector_handler): Likewise.
+	* config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute,
+	m68hc11_handle_fntype_attribute): Likewise.
+	* config/m68k/m68k.c (m68k_handle_fndecl_attribute): Likewise.
+	* config/mcore/mcore.c (mcore_handle_naked_attribute): Likewise.
+	* config/mips/mips.c (mips_insert_attributes,
+	mips_merge_decl_attributes, mips_expand_builtin): Likewise.
+	* config/rs6000/rs6000.c (rs6000_handle_longcall_attribute,
+	rs6000_handle_struct_attribute): Likewise.
+	* config/sh/sh.c (sh_insert_attributes,
+	sh_handle_resbank_handler_attribute,
+	sh_handle_interrupt_handler_attribute,
+	sh2a_handle_function_vector_handler_attribute,
+	sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute):
+	Likewise.
+	* config/sh/symbian.c (sh_symbian_mark_dllimport): Likewise.
+	* config/spu/spu.c (spu_handle_fndecl_attribute,
+	spu_handle_vector_attribute): Likewise.
+	* config/stormy16/stormy16.c
+	(xstormy16_handle_interrupt_attribute): Likewise.
+	* config/v850/v850-c.c (ghs_pragma_section): Likewise.
+	* config/v850/v850.c (v850_handle_interrupt_attribute): Likewise.
+
+2009-05-10  Joseph Myers  <joseph@codesourcery.com>
+
+	* pretty-print.h (struct pretty_print_info): Add
+	translate_identifiers.
+	(pp_translate_identifiers): New.
+	(pp_identifier): Only conditionally translate identifier to locale
+	character set.
+	* pretty-print.c (pp_construct): Set pp_translate_identifiers.
+	(pp_base_tree_identifier): Only conditionally translate identifier
+	to locale character set.
+	* c-pretty-print.c (M_): Define.
+	(pp_c_type_specifier, pp_c_primary_expression): Mark English
+	fragments for conditional translation with M_.
+	* tree-pretty-print.c (maybe_init_pretty_print): Disable
+	identifier translation.
+
+2009-05-10  Richard Guenther  <rguenther@suse.de>
+
+	PR tree-optimization/40081
+	* tree-sra.c (instantiate_element): Instantiate scalar replacements
+	using the main variant of the element type.  Do not fiddle with
+	TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS.
+
 2009-05-09  Jan Hubicka  <jh@suse.cz>
 
 	PR middle-end/40080
--- /usr/src/SpecTests/sandbox-haydn-memory/x86_64/mem-result/ChangeLog.cp	2009-05-08 23:06:38.000000000 +0000
+++ /usr/src/SpecTests/sandbox-haydn-memory/gcc/gcc/cp/ChangeLog	2009-05-10 19:17:46.000000000 +0000
@@ -1,3 +1,44 @@
+2009-05-10  Jan Hubicka  <jh@suse.cz>
+
+	* decl2.c (cxx_callgraph_analyze_expr): Use
+	cgraph_mark_address_taken.
+
+2009-05-10  Joseph Myers  <joseph@codesourcery.com>
+
+	* call.c (name_as_c_string): Call type_as_string_translate.
+	Translate identifiers to locale character set.
+	* cp-tree.h (lang_decl_name): Update prototype.
+	(type_as_string_translate, decl_as_string_translate,
+	cxx_printable_name_translate): Declare.
+	* cxx-pretty-print.c (M_): Define.
+	(pp_cxx_unqualified_id, pp_cxx_canonical_template_parameter): Mark
+	English fragments for conditional translation with M_.
+	* decl.c (grokdeclarator): Translate identifiers to locale
+	character set for diagnostics.
+	* error.c (M_): Define.
+	(dump_template_bindings, dump_type, dump_aggr_type,
+	dump_type_prefix, dump_global_iord, dump_simple_decl, dump_decl,
+	dump_function_decl, dump_template_parms, dump_expr,
+	dump_binary_op, op_to_string, assop_to_string): Mark English
+	fragments for conditional translation with M_.
+	(type_as_string): Disable translation of identifiers.
+	(type_as_string_translate): New.
+	(expr_as_string): Disable translation of identifiers.
+	(decl_as_string): Disable translation of identifiers.
+	(decl_as_string_translate): New.
+	(lang_decl_name): Add parameter translate.
+	(args_to_string): Call type_as_string_translate.
+	(cp_print_error_function): Call cxx_printable_name_translate.
+	(print_instantiation_full_context,
+	print_instantiation_partial_context): Call
+	decl_as_string_translate.
+	* parser.c (cp_lexer_get_preprocessor_token): Use %qE for
+	identifier in diagnostic.
+	* tree.c (cxx_printable_name): Change to
+	cxx_printable_name_internal.  Add parameter translate.
+	(cxx_printable_name, cxx_printable_name_translate): New wrappers
+	round cxx_printable_name_internal.
+
 2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>
 
 	PR c/36892


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]