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: 8330k
    Peak memory use before GGC: 3394k -> 3396k
    Peak memory use after GGC: 3042k -> 3043k
    Maximum of released memory in single GGC run: 352k -> 353k
    Garbage: 525k
    Leak: 3797k -> 3798k
    Overhead: 915k -> 915k
    GGC runs: 3

comparing empty function compilation at -O0 -g level:
    Overall memory needed: 8346k
    Peak memory use before GGC: 3422k -> 3423k
    Peak memory use after GGC: 3069k -> 3071k
    Maximum of released memory in single GGC run: 353k -> 352k
    Garbage: 527k
    Leak: 3829k -> 3831k
    Overhead: 919k -> 919k
    GGC runs: 3

comparing empty function compilation at -O1 level:
    Overall memory needed: 8386k
    Peak memory use before GGC: 3394k -> 3396k
    Peak memory use after GGC: 3042k -> 3043k
    Maximum of released memory in single GGC run: 352k -> 353k
    Garbage: 527k
    Leak: 3797k -> 3799k
    Overhead: 915k -> 915k
    GGC runs: 3

comparing empty function compilation at -O2 level:
    Overall memory needed: 8390k
    Peak memory use before GGC: 3395k -> 3396k
    Peak memory use after GGC: 3042k -> 3044k
    Maximum of released memory in single GGC run: 353k -> 352k
    Garbage: 531k
    Leak: 3798k -> 3800k
    Overhead: 916k -> 916k
    GGC runs: 3

comparing empty function compilation at -O3 level:
    Overall memory needed: 8390k
    Peak memory use before GGC: 3395k -> 3396k
    Peak memory use after GGC: 3042k -> 3044k
    Maximum of released memory in single GGC run: 353k -> 352k
    Garbage: 531k
    Leak: 3798k -> 3800k
    Overhead: 916k -> 916k
    GGC runs: 3

comparing combine.c compilation at -O0 level:
  Amount of memory still referenced at the end of compilation increased from 8847k to 8856k, overall 0.11%
    Overall memory needed: 23750k -> 23754k
    Peak memory use before GGC: 10321k -> 10323k
    Peak memory use after GGC: 9565k -> 9567k
    Maximum of released memory in single GGC run: 1902k -> 1903k
    Garbage: 39098k -> 39069k
    Leak: 8847k -> 8856k
    Overhead: 5786k -> 5786k
    GGC runs: 254

comparing combine.c compilation at -O0 -g level:
    Overall memory needed: 25622k
    Peak memory use before GGC: 11982k -> 11984k
    Peak memory use after GGC: 11357k -> 11358k
    Maximum of released memory in single GGC run: 1516k
    Garbage: 39442k -> 39438k
    Leak: 11748k -> 11749k
    Overhead: 6491k -> 6492k
    GGC runs: 250

comparing combine.c compilation at -O1 level:
    Overall memory needed: 35742k -> 35738k
    Peak memory use before GGC: 18983k -> 18984k
    Peak memory use after GGC: 18793k -> 18794k
    Maximum of released memory in single GGC run: 1375k
    Garbage: 52592k -> 52590k
    Leak: 8993k -> 8994k
    Overhead: 6749k -> 6749k
    GGC runs: 321

comparing combine.c compilation at -O2 level:
    Overall memory needed: 37742k -> 37750k
    Peak memory use before GGC: 19037k -> 19038k
    Peak memory use after GGC: 18847k -> 18848k
    Maximum of released memory in single GGC run: 1409k -> 1410k
    Garbage: 70982k -> 70992k
    Leak: 9320k -> 9322k
    Overhead: 8864k -> 8864k
    GGC runs: 383

comparing combine.c compilation at -O3 level:
    Overall memory needed: 40594k -> 40566k
    Peak memory use before GGC: 19311k -> 19313k
    Peak memory use after GGC: 18964k -> 18965k
    Maximum of released memory in single GGC run: 2262k -> 2261k
    Garbage: 92935k -> 92923k
    Leak: 9441k -> 9434k
    Overhead: 11492k -> 11492k
    GGC runs: 412

comparing insn-attrtab.c compilation at -O0 level:
    Overall memory needed: 140098k
    Peak memory use before GGC: 60579k -> 60580k
    Peak memory use after GGC: 34072k -> 34074k
    Maximum of released memory in single GGC run: 34144k -> 34143k
    Garbage: 132014k -> 132016k
    Leak: 11585k -> 11586k
    Overhead: 15588k -> 15589k
    GGC runs: 197

comparing insn-attrtab.c compilation at -O0 -g level:
  Amount of produced GGC garbage increased from 132242k to 132500k, overall 0.20%
    Overall memory needed: 141354k -> 141358k
    Peak memory use before GGC: 61741k -> 61742k
    Peak memory use after GGC: 35233k -> 35235k
    Maximum of released memory in single GGC run: 34145k -> 34144k
    Garbage: 132242k -> 132500k
    Leak: 13293k -> 13040k
    Overhead: 15986k -> 15986k
    GGC runs: 199

comparing insn-attrtab.c compilation at -O1 level:
    Overall memory needed: 150234k -> 150218k
    Peak memory use before GGC: 59100k -> 59101k
    Peak memory use after GGC: 52849k -> 52850k
    Maximum of released memory in single GGC run: 24232k
    Garbage: 212964k -> 212962k
    Leak: 12479k -> 12480k
    Overhead: 25582k -> 25582k
    GGC runs: 222

comparing insn-attrtab.c compilation at -O2 level:
    Overall memory needed: 188918k -> 188902k
    Peak memory use before GGC: 59722k -> 59723k
    Peak memory use after GGC: 54428k -> 54429k
    Maximum of released memory in single GGC run: 22887k
    Garbage: 254073k
    Leak: 13560k -> 13562k
    Overhead: 31305k -> 31305k
    GGC runs: 249

comparing insn-attrtab.c compilation at -O3 level:
    Overall memory needed: 195878k -> 195882k
    Peak memory use before GGC: 71706k -> 71708k
    Peak memory use after GGC: 65139k -> 65141k
    Maximum of released memory in single GGC run: 23329k -> 23330k
    Garbage: 281239k -> 281238k
    Leak: 13571k -> 13573k
    Overhead: 33104k -> 33104k
    GGC runs: 252

comparing Gerald's testcase PR8361 compilation at -O0 level:
    Overall memory needed: 156546k -> 156609k
    Peak memory use before GGC: 91627k -> 91628k
    Peak memory use after GGC: 90710k -> 90711k
    Maximum of released memory in single GGC run: 17988k
    Garbage: 210867k -> 210869k
    Leak: 55683k -> 55684k
    Overhead: 27053k -> 27053k
    GGC runs: 397

comparing Gerald's testcase PR8361 compilation at -O0 -g level:
    Overall memory needed: 177690k -> 177757k
    Peak memory use before GGC: 104561k -> 104596k
    Peak memory use after GGC: 103523k -> 103552k
    Maximum of released memory in single GGC run: 18669k -> 18703k
    Garbage: 216714k -> 216721k
    Leak: 79111k -> 79113k
    Overhead: 33021k -> 33021k
    GGC runs: 373

comparing Gerald's testcase PR8361 compilation at -O1 level:
    Overall memory needed: 135292k -> 135255k
    Peak memory use before GGC: 96156k -> 96157k
    Peak memory use after GGC: 95202k -> 95203k
    Maximum of released memory in single GGC run: 17368k
    Garbage: 319654k -> 319652k
    Leak: 55781k -> 55783k
    Overhead: 33223k -> 33223k
    GGC runs: 498 -> 497

comparing Gerald's testcase PR8361 compilation at -O2 level:
    Overall memory needed: 145040k -> 145011k
    Peak memory use before GGC: 96089k -> 96091k
    Peak memory use after GGC: 95137k -> 95139k
    Maximum of released memory in single GGC run: 17372k -> 17371k
    Garbage: 379111k -> 379133k
    Leak: 57027k -> 57027k
    Overhead: 39586k -> 39586k
    GGC runs: 561

comparing Gerald's testcase PR8361 compilation at -O3 level:
    Overall memory needed: 148672k -> 148695k
    Peak memory use before GGC: 97699k -> 97701k
    Peak memory use after GGC: 96614k -> 96616k
    Maximum of released memory in single GGC run: 17787k
    Garbage: 417870k -> 417863k
    Leak: 57337k -> 57338k
    Overhead: 42927k -> 42927k
    GGC runs: 584

comparing PR rtl-optimization/28071 testcase compilation at -O0 level:
    Overall memory needed: 381009k -> 381016k
    Peak memory use before GGC: 103475k -> 103476k
    Peak memory use after GGC: 59129k -> 59130k
    Maximum of released memory in single GGC run: 50582k
    Garbage: 179674k -> 179674k
    Leak: 9009k -> 9010k
    Overhead: 31654k -> 31654k
    GGC runs: 65

comparing PR rtl-optimization/28071 testcase compilation at -O0 -g level:
    Overall memory needed: 381829k -> 381836k
    Peak memory use before GGC: 104121k -> 104123k
    Peak memory use after GGC: 59775k -> 59776k
    Maximum of released memory in single GGC run: 50582k -> 50583k
    Garbage: 179835k -> 179827k
    Leak: 10777k -> 10778k
    Overhead: 32150k -> 32150k
    GGC runs: 72

comparing PR rtl-optimization/28071 testcase compilation at -O1 level:
    Overall memory needed: 290234k -> 289898k
    Peak memory use before GGC: 82783k -> 82784k
    Peak memory use after GGC: 75171k -> 75172k
    Maximum of released memory in single GGC run: 40018k -> 40017k
    Garbage: 236071k
    Leak: 18347k -> 18348k
    Overhead: 32719k -> 32719k
    GGC runs: 69

comparing PR rtl-optimization/28071 testcase compilation at -O2 level:
    Overall memory needed: 279554k -> 279366k
    Peak memory use before GGC: 80157k -> 80159k
    Peak memory use after GGC: 75171k -> 75173k
    Maximum of released memory in single GGC run: 33751k -> 33750k
    Garbage: 246134k
    Leak: 18436k -> 18437k
    Overhead: 34945k -> 34945k
    GGC runs: 82

comparing PR rtl-optimization/28071 testcase compilation at -O3 -fno-tree-pre -fno-tree-fre level:
    Overall memory needed: 1012346k -> 1012670k
    Peak memory use before GGC: 168799k -> 168800k
    Peak memory use after GGC: 158363k -> 158364k
    Maximum of released memory in single GGC run: 83495k
    Garbage: 356480k
    Leak: 28510k -> 28512k
    Overhead: 46899k -> 46899k
    GGC runs: 65

Head of the ChangeLog is:

--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog	2007-08-22 22:33:48.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog	2007-08-23 14:08:15.000000000 +0000
@@ -1,3 +1,144 @@
+2007-08-23  Richard Guenther  <rguenther@suse.de>
+
+	* tree-pretty-print.c (dump_generic_node): Annotate
+	GIMPLE_MODIFY_STMTs with volatile ops with "{v}".
+
+2007-08-23  Richard Guenther  <rguenther@suse.de>
+
+	* builtins.c (expand_builtin_mathfn): Wrap argument in
+	save_expr directly instead of re-building the call.
+	(expand_builtin_mathfn_2): Likewise.
+	(expand_builtin_mathfn_3): Likewise.
+	(expand_builtin_interclass_mathfn): Likewise.
+	(expand_builtin_int_roundingfn): Set arg.
+	(expand_builtin_int_roundingfn_2): Likewise.
+
+2007-08-23  Paolo Bonzini  <bonzini@gnu.org>
+
+	* config/i386/sse.md (*sse_and<mode>3, *sse_ior<mode>3,
+	*sse_nand<mode>3, *sse_xor<mode>3): New.
+
+2007-08-23  Uros Bizjak  <ubizjak@gmail.com>
+
+	* config/i386/i386.h (PRINT_OPERAND_PUNCT_VALID_P): Add ';' code.
+	* config/i386/i386.c (print_operand): Handle ';' code.  Output
+	semicolon for TARGET_MACHO.
+	* config/i386/sync.md (*sync_compare_and_swap<mode>): Use '%;' to
+	emit semicolon after 'lock' prefix.
+	(sync_double_compare_and_swap<mode>): Ditto.
+	(*sync_double_compare_and_swapdi_pic): Ditto.
+	(*sync_compare_and_swap_cc<mode>): Ditto.
+	(sync_double_compare_and_swap_cc<mode>): Ditto.
+	(*sync_double_compare_and_swap_ccdi_pic): Ditto.
+	(sync_old_add<mode>): Ditto.
+	(sync_add<mode>): Ditto.
+	(sync_sub<mode>): Ditto.
+	(sync_ior<mode>): Ditto.
+	(sync_and<mode>): Ditto.
+	(sync_xor<mode>): Ditto.
+
+2007-08-22  Chao-ying Fu  <fu@mips.com>
+
+	* rtl.c (rtx_code_size): Check CONST_FIXED to calcualte correct sizes
+	in DEF_RTL_EXPR.
+	(copy_rtx): Handle CONST_FIXED.
+	(rtx_equal_p): Likewise.
+	* rtl.h (fixed_value.h): New include.
+	(rtx_def): Add a new field of fixed_value to u.
+	(XCNMPFV): Define for accessing fixed_value.
+	(CONST_FIXED_VALUE, CONST_FIXED_VALUE_HIGH, CONST_FIXED_VALUE_LOW):
+	Define.
+	* rtl.def (CONST_FIXED): New constant.
+	(SS_MULT, US_MULT, SS_DIV, US_DIV, FRACT_CONVERT,
+	UNSIGNED_FRACT_CONVERT, SAT_FRACT, UNSIGNED_SAT_FRACT, US_NEG,
+	US_ASHIFT): New codes.
+	* doc/rtl.texi (Expressions): Document const_fixed, us_neg, ss_mult,
+	us_mult, ss_div, us_div, us_ashift, fract_convert, sat_fract,
+	unsigned_fract_convert, unsigned_sat_fract): Document them.
+	* varasm.c (assemble_integer): Extend to support fixed-point constants
+	by using different machine classes.
+	(decode_addr_const): Handle FIXED_CST.
+	(const_hash_1): Likewise.
+	(compare_constant): Likewise.
+	(copy_constant): Likewise.
+	(const_rtx_hash_1): Handle CONST_FIXED.
+	(output_constant_pool_2): Handle MODE_FRACT, MODE_UFRACT, MODE_ACCUM,
+	MODE_UACCUM, MODE_VECTOR_FRACT, MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM,
+	MODE_VECTOR_UACCUM.
+	(initializer_constant_valid_p): Handle FIXED_CST.
+	(output_constant): Support FIXED_POINT_TYPE.
+	* gengenrtl.c (excluded_rtx): Check CONST_FIXED to exclude.
+	* cse.c (hash_rtx): Support CONST_FIXED.
+	(exp_equiv_p): Likewise.
+	(cannon_reg): Likewise.
+	(fold_rtx): Likewise.
+	(equiv_constant): Likewise.
+	(cse_process_notes_1): Likewise.
+	(count_reg_usage): Likewise.
+	* cselib.c (entry_and_rtx_equal_p): Check CONST_FIXED.
+	(rtx_equal_for_cselib_p): Handle CONST_FIXED.
+	(wrap_constant): Check CONST_FIXED.
+	(cselib_hash_rtx): Support CONST_FIXED.
+	(cselib_subst_to_values): Likewise.
+	* df-scan.c (df_uses_record): Likewise.
+	* gcse.c (want_to_gcse_p): Likewise.
+	(oprs_unchanged_p): Likewise.
+	(oprs_not_set_p): Likewise.
+	(compute_transp): Likewise.
+	(extract_mentioned_regs_helper): Likewise.
+	* genemit.c (gen_exp): Likewise.
+	* local-alloc.c (equiv_init_varies_p): Likewise.
+	(contains_replace_regs): Likewise.
+	(memref_referenced_p): Likewise.
+	* loop-invariant.c (check_maybe_invariant): Likewise.
+	(hash_invariant_expr_1): Likewise.
+	(invariant_expr_equal_p): Likewise.
+	* postreload-gcse.c (oprs_unchanged_p): Likewise.
+	* regclass.c (reg_scan_mark_refs): Likewise.
+	* regrename.c (scan_rtx): Likewise.
+	* resource.c (mark_referenced_resources): Likewise.
+	(mark_set_resources): Likewise.
+	* rtlanal.c (rtx_unstable_p): Likewise.
+	(rtx_varies_p): Likewise.
+	(count_occurrences): Likewise.
+	(reg_mentioned_p): Likewise.
+	(modified_between_p): Likewise.
+	(modified_in_p): Likewise.
+	(volatile_insn_p): Likewise.
+	(volatile_refs_p): Likewise.
+	(side_effects_p): Likewise.
+	(may_trap_p_1): Likewise.
+	(inequality_comparisons_p): Likewise.
+	(computed_jump_p_1): Likewise.
+	(commutative_operand_precedence): Likewise.
+	* sched-deps.c (sched_analyze_2): Likewise.
+	* sched-vis.c (print_value): Likewise.
+	* reload.c (operands_match_p): Likewise.
+	(subst_reg_equivs): Likewise.
+	* reload1.c (eliminate_regs_1): Likewise.
+	(elimination_effects): Likewise.
+	(scan_paradoxical_subregs): Likewise.
+	* alias.c (rtx_equal_for_memref_p): Likewise.
+	* Makefile.in (RTL_BASE_H): Add fixed-value.h.
+	* emit-rtl.c (const_fixed_htab): New hash table.
+	(const_fixed_htab_hash, const_fixed_htab_eq, lookup_const_fixed):
+	Declare.
+	(const_fixed_htab_hash, const_fixed_htab_eq, lookup_const_fixed,
+	const_fixed_from_fixed_value): New functions.
+	(verify_rtx_sharing): Handle CONST_FIXED.
+	(copy_rtx_if_shared_1): Likewise.
+	(reset_used_flags): Likewise.
+	(set_used_flags): Likewise.
+	(copy_insn_1): Likewise.
+	(init_emit_once): Create const_fixed_htab.
+	Store fixed-point scalar and vector zero and one to const_tiny_rtx.
+
+2007-08-22  Zdenek Dvorak  <ook@ucw.cz>
+
+	PR tree-optimization/32949
+	* tree-ssa-loop-niter.c (scev_probably_wraps_p): Test nowrap_type_p
+	before failing for ivs with non-constant step.
+
 2007-08-22  Hans-Peter Nilsson  <hp@axis.com>
 
 	* doc/md.texi (Iterators): Renamed from Macros.  All contents
@@ -185,8 +326,8 @@
 	* c-tree.h (enum c_typespec_keyword): Add cts_fract and cts_accum.
 	(c_declspecs): Add saturating_p.
 	* c-decl.c (build_null_declspecs): Initialize saturating_p.
-	(declspecs_add_type): Avoid using complex with _Fract, _Accum, or _Sat.
-	Handle RID_SAT.
+	(declspecs_add_type): Avoid using complex with _Fract, _Accum, or
+	_Sat.  Handle RID_SAT.
 	Avoid using void, bool, char, int, float, double, _Decimal32,
 	_Decimal64, _Decimal128, and complex with _Sat.
 	Handle RID_FRACT and RID_ACCUM.
@@ -482,14 +623,14 @@
 	'nested_in_vect_loop' case. Change verbosity level.
 	(vect_analyze_data_ref_access): Handle the 'nested_in_vect_loop' case.
 	Don't fail on zero step in the outer-loop for loads.
-	(vect_analyze_data_refs): Call split_constant_offset to calculate base,
-	offset and init relative to the outer-loop.
+	(vect_analyze_data_refs): Call split_constant_offset to calculate
+	base, offset and init relative to the outer-loop.
 
 	* tree-vect-transform.c (vect_create_data_ref_ptr): Replace the unused
 	BSI function argument with a new function argument - at_loop.
 	Simplify the condition that determines STEP. Takes additional argument
-	INV_P. Support outer-loop vectorization (handle the nested_in_vect_loop
-	case), including zero step in the outer-loop. Call
+	INV_P. Support outer-loop vectorization (handle the
+	nested_in_vect_loop case), including zero step in the outer-loop. Call
 	vect_create_addr_base_for_vector_ref with additional argument.
 	(vect_create_addr_base_for_vector_ref): Takes additional argument LOOP.
 	Updated function documentation. Handle the 'nested_in_vect_loop' case.
@@ -499,12 +640,12 @@
 	additional argument. Fix typos. Handle the 'nested_in_vect_loop' case.
 	(vect_setup_realignment): Takes additional arguments INIT_ADDR and
 	DR_ALIGNMENT_SUPPORT. Returns another value AT_LOOP. Handle the case
-	when the realignment setup needs to take place inside the loop.  Support
-	the dr_explicit_realign scheme. Allow generating the optimized
+	when the realignment setup needs to take place inside the loop.
+	Support the dr_explicit_realign scheme. Allow generating the optimized
 	realignment scheme for outer-loop vectorization. Added documentation.
-	(vectorizable_load): Support the dr_explicit_realign scheme. Handle the
-	'nested_in_vect_loop' case, including loads that are invariant in the
-	outer-loop and the realignment schemes. Handle the case when the
+	(vectorizable_load): Support the dr_explicit_realign scheme. Handle
+	the 'nested_in_vect_loop' case, including loads that are invariant in
+	the outer-loop and the realignment schemes. Handle the case when the
 	realignment setup needs to take place inside the loop. Call
 	vect_setup_realignment with additional arguments.  Call
 	vect_create_data_ref_ptr with additional argument and with loop instead
@@ -542,9 +683,9 @@
 	(new_stmt_vec_info): When setting def_type for phis differentiate 
 	loop-header phis from other phis.
 	(bb_in_loop_p): New function.
-	(new_loop_vec_info): Inner-loop phis already have a stmt_vinfo, so just
-	update their loop_vinfo.  Order of BB traversal now matters - call
-	dfs_enumerate_from with bb_in_loop_p.
+	(new_loop_vec_info): Inner-loop phis already have a stmt_vinfo, so
+	just update their loop_vinfo.  Order of BB traversal now matters -
+	call dfs_enumerate_from with bb_in_loop_p.
 	(destroy_loop_vec_info): Takes additional argument to control whether
 	stmt_vinfo of the loop stmts should be destroyed as well.
 	(vect_is_simple_reduction): Allow the "non-reduction" use of a
@@ -1003,8 +1144,8 @@
 	(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_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.
@@ -1145,8 +1286,8 @@
 	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.
+	(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.
@@ -2220,13 +2361,14 @@
 2007-08-04  Andrew Pinski  <andrew_pinski@playstation.sony.com>
 
 	PR middle-end/32780
-	* fold-const.c (fold_binary <case MINUS_EXPR>): Fix the type of operands
-	for the folding of "A - (A & B)" into "~B & A"; cast them to type.
+	* fold-const.c (fold_binary <case MINUS_EXPR>): Fix the type of
+	operands for the folding of "A - (A & B)" into "~B & A"; cast them
+	to type.
 
 2007-08-03  Zdenek Dvorak  <ook@ucw.cz>
 
-	* tree-ssa-threadupdate.c (thread_through_all_blocks): Use loops' state
-	accessor functions.
+	* tree-ssa-threadupdate.c (thread_through_all_blocks): Use loops'
+	state accessor functions.
 	* cfgloopmanip.c (remove_path, create_preheaders,
 	force_single_succ_latches, fix_loop_structure): Ditto.
 	* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa,
@@ -3109,8 +3251,8 @@
 
 2007-07-27  Jan Hubicka  <jh@suse.cz>
 
-	* config/i386/i386.c (register_move_cost): Remove accidentally comitted
-	#if 0 block.
+	* config/i386/i386.c (register_move_cost): Remove accidentally
+	comitted #if 0 block.
 
 	* attribs.c: Include hashtab.h
 	(attribute_hash): New.
@@ -4039,7 +4181,8 @@
 	    Jakub Jelinek  <jakub@redhat.com>
 
 	PR middle-end/PR28690
-	* optabs.c (expand_binop): (emit_cmp_and_jump_insns): Allow EQ compares.
+	* optabs.c (expand_binop): (emit_cmp_and_jump_insns): Allow
+	EQ compares.
 	* rtlanal.c (commutative_operand_precedence): Prefer both REG_POINTER
 	and MEM_POINTER operands over REG and MEM operands.
 	(swap_commutative_operands_p): Change return value to bool.
@@ -4085,8 +4228,8 @@
 	(expand_copysign_absneg): If back end provides signbit insn, use it
 	instead of bit operations on floating point argument.
 	* builtins.c (enum insn_code signbit_optab[]): Remove array.
-	(expand_builtin_signbit): Check signbit_optab->handlers[].insn_code for
-	availability of signbit insn.
+	(expand_builtin_signbit): Check signbit_optab->handlers[].insn_code
+	for availability of signbit insn.
 
 	* config/i386/i386.md (signbit<mode>2): New insn pattern to implement
 	signbitf, signbit and signbitl built-ins as inline x87 intrinsics when
@@ -4371,8 +4514,8 @@
 	* pa-protos.h (pa_eh_return_handler_rtx): Declare.
 	* pa.c (pa_extra_live_on_entry, rp_saved): Declare.
 	(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
-	(pa_output_function_prologue): Use rp_saved and current_function_is_leaf
-	to generate .CALLINFO statement.
+	(pa_output_function_prologue): Use rp_saved and
+	current_function_is_leaf to generate .CALLINFO statement.
 	(hppa_expand_prologue): Set rp_saved.
 	(hppa_expand_epilogue): Use rp_saved.
 	(pa_extra_live_on_entry, pa_eh_return_handler_rtx): New functions.


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]