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]

Re: A recent patch increased GCC's memory consumption!


Hi,
can that 11% memory use growth on combine be result of dataflow change?
The clones affects pretty much everything, but all that exists in GGC memory.

Honza

Am Sat 09 May 2009 03:15:28 AM CEST schrieb gcctest@suse.de:

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 -> 1537k Overhead: 187k -> 187k GGC runs: 4 Pre-IPA-Garbage: 210k Pre-IPA-Leak: 1540k -> 1539k Pre-IPA-Overhead: 186k -> 186k Post-IPA-Garbage: 210k Post-IPA-Leak: 1540k -> 1539k Post-IPA-Overhead: 186k -> 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 -> 1570k
    Overhead: 192k -> 192k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k -> 1539k
    Pre-IPA-Overhead: 186k -> 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k -> 1539k
    Post-IPA-Overhead: 186k -> 186k

comparing empty function compilation at -O1 level:
    Overall memory needed: 8929k -> 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 -> 1537k
    Overhead: 188k -> 188k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k -> 1540k
    Pre-IPA-Overhead: 186k -> 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k -> 1540k
    Post-IPA-Overhead: 186k -> 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 -> 1537k
    Overhead: 189k -> 189k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k -> 1540k
    Pre-IPA-Overhead: 186k -> 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k -> 1540k
    Post-IPA-Overhead: 186k -> 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 -> 1537k
    Overhead: 189k -> 189k
    GGC runs: 4
    Pre-IPA-Garbage: 210k
    Pre-IPA-Leak: 1540k -> 1540k
    Pre-IPA-Overhead: 186k -> 186k
    Post-IPA-Garbage: 210k
    Post-IPA-Leak: 1540k -> 1540k
    Post-IPA-Overhead: 186k -> 186k

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

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

comparing combine.c compilation at -O1 level:
Amount of produced GGC garbage increased from 44920k to 45478k, overall 1.24%
Overall memory needed: 31901k -> 31929k
Peak memory use before GGC: 16492k -> 16493k
Peak memory use after GGC: 16317k
Maximum of released memory in single GGC run: 1389k -> 1378k
Garbage: 44920k -> 45478k
Leak: 7164k -> 7155k
Overhead: 6321k -> 6416k
GGC runs: 382 -> 386
Pre-IPA-Garbage: 12959k
Pre-IPA-Leak: 17629k -> 17620k
Pre-IPA-Overhead: 2512k -> 2503k
Post-IPA-Garbage: 12959k
Post-IPA-Leak: 17629k -> 17620k
Post-IPA-Overhead: 2512k -> 2503k


comparing combine.c compilation at -O2 level:
    Overall memory needed: 33109k -> 33213k
    Peak memory use before GGC: 16585k
    Peak memory use after GGC: 16415k
    Maximum of released memory in single GGC run: 1489k
    Garbage: 56710k -> 56705k
    Leak: 7191k -> 7182k
    Overhead: 8196k -> 8187k
    GGC runs: 441
    Pre-IPA-Garbage: 13096k
    Pre-IPA-Leak: 17716k -> 17707k
    Pre-IPA-Overhead: 2528k -> 2520k
    Post-IPA-Garbage: 13096k
    Post-IPA-Leak: 17716k -> 17707k
    Post-IPA-Overhead: 2528k -> 2520k

comparing combine.c compilation at -O3 level:
    Overall memory needed: 33613k -> 33657k
    Peak memory use before GGC: 16586k
    Peak memory use after GGC: 16420k
    Maximum of released memory in single GGC run: 1673k -> 1672k
    Garbage: 67489k -> 67490k
    Leak: 7227k -> 7218k
    Overhead: 9710k -> 9701k
    GGC runs: 467
    Pre-IPA-Garbage: 13096k
    Pre-IPA-Leak: 17716k -> 17707k
    Pre-IPA-Overhead: 2528k -> 2520k
    Post-IPA-Garbage: 13096k
    Post-IPA-Leak: 17716k -> 17707k
    Post-IPA-Overhead: 2528k -> 2520k

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

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

comparing insn-attrtab.c compilation at -O1 level:
Overall memory allocated via mmap and sbrk increased from 137841k to 154085k, overall 11.78%
Amount of produced GGC garbage increased from 178725k to 182194k, overall 1.94%
Overall memory needed: 137841k -> 154085k
Peak memory use before GGC: 54138k
Peak memory use after GGC: 43653k -> 43649k
Maximum of released memory in single GGC run: 17381k -> 17343k
Garbage: 178725k -> 182194k
Leak: 9181k -> 9178k
Overhead: 22974k -> 23658k
GGC runs: 290 -> 293
Pre-IPA-Garbage: 45067k
Pre-IPA-Leak: 45088k -> 45085k
Pre-IPA-Overhead: 7589k -> 7586k
Post-IPA-Garbage: 45067k
Post-IPA-Leak: 45088k -> 45085k
Post-IPA-Overhead: 7589k -> 7586k


comparing insn-attrtab.c compilation at -O2 level:
    Overall memory needed: 201565k -> 199849k
    Peak memory use before GGC: 53557k
    Peak memory use after GGC: 43378k
    Maximum of released memory in single GGC run: 18813k
    Garbage: 212745k
    Leak: 9196k -> 9192k
    Overhead: 29528k -> 29525k
    GGC runs: 325
    Pre-IPA-Garbage: 45129k
    Pre-IPA-Leak: 45095k -> 45092k
    Pre-IPA-Overhead: 7594k -> 7591k
    Post-IPA-Garbage: 45129k
    Post-IPA-Leak: 45095k -> 45092k
    Post-IPA-Overhead: 7594k -> 7591k

comparing insn-attrtab.c compilation at -O3 level:
    Overall memory needed: 201485k -> 199989k
    Peak memory use before GGC: 53562k
    Peak memory use after GGC: 43382k
    Maximum of released memory in single GGC run: 18758k
    Garbage: 213959k
    Leak: 9203k -> 9199k
    Overhead: 29922k -> 29918k
    GGC runs: 331
    Pre-IPA-Garbage: 45129k
    Pre-IPA-Leak: 45095k -> 45092k
    Pre-IPA-Overhead: 7594k -> 7591k
    Post-IPA-Garbage: 45129k
    Post-IPA-Leak: 45095k -> 45092k
    Post-IPA-Overhead: 7594k -> 7591k

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

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

comparing Gerald's testcase PR8361 compilation at -O1 level:
Amount of produced GGC garbage increased from 258284k to 260228k, overall 0.75%
Overall memory needed: 108133k -> 107989k
Peak memory use before GGC: 82660k -> 82668k
Peak memory use after GGC: 81778k -> 81786k
Maximum of released memory in single GGC run: 13451k
Garbage: 258284k -> 260228k
Leak: 52390k -> 52195k
Overhead: 29645k -> 29809k
GGC runs: 513 -> 515
Pre-IPA-Garbage: 150372k
Pre-IPA-Leak: 87178k -> 86958k
Pre-IPA-Overhead: 18330k -> 18111k
Post-IPA-Garbage: 150372k
Post-IPA-Leak: 87178k -> 86958k
Post-IPA-Overhead: 18330k -> 18111k


comparing Gerald's testcase PR8361 compilation at -O2 level:
    Overall memory needed: 109149k -> 108237k
    Peak memory use before GGC: 82971k -> 82145k
    Peak memory use after GGC: 82148k -> 80868k
    Maximum of released memory in single GGC run: 13453k
    Garbage: 299248k -> 298989k
    Leak: 52487k -> 52287k
    Overhead: 35303k -> 35055k
    GGC runs: 567
    Pre-IPA-Garbage: 154592k -> 153432k
    Pre-IPA-Leak: 86244k -> 86018k
    Pre-IPA-Overhead: 18642k -> 18328k
    Post-IPA-Garbage: 154592k -> 153432k
    Post-IPA-Leak: 86244k -> 86018k
    Post-IPA-Overhead: 18642k -> 18328k

comparing Gerald's testcase PR8361 compilation at -O3 level:
    Overall memory needed: 108969k -> 108129k
    Peak memory use before GGC: 83377k -> 82604k
    Peak memory use after GGC: 82550k -> 81094k
    Maximum of released memory in single GGC run: 13453k
    Garbage: 317898k -> 317385k
    Leak: 52486k -> 52286k
    Overhead: 37577k -> 37299k
    GGC runs: 582 -> 583
    Pre-IPA-Garbage: 154654k -> 153432k
    Pre-IPA-Leak: 86665k -> 86022k
    Pre-IPA-Overhead: 18668k -> 18328k
    Post-IPA-Garbage: 154654k -> 153432k
    Post-IPA-Leak: 86665k -> 86022k
    Post-IPA-Overhead: 18668k -> 18328k

comparing PR rtl-optimization/28071 testcase compilation at -O0 level:
    Overall memory needed: 358881k -> 358789k
    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 -> 7711k
    Overhead: 25005k -> 25004k
    GGC runs: 86
    Pre-IPA-Garbage: 12038k
    Pre-IPA-Leak: 18627k -> 18626k
    Pre-IPA-Overhead: 2448k -> 2447k
    Post-IPA-Garbage: 12038k
    Post-IPA-Leak: 18627k -> 18626k
    Post-IPA-Overhead: 2448k -> 2447k

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

comparing PR rtl-optimization/28071 testcase compilation at -O1 level:
Amount of produced GGC garbage increased from 210889k to 216059k, overall 2.45%
Overall memory needed: 207349k -> 209041k
Peak memory use before GGC: 71011k -> 70831k
Peak memory use after GGC: 66115k
Maximum of released memory in single GGC run: 35381k
Garbage: 210889k -> 216059k
Leak: 9405k -> 9258k
Overhead: 31867k -> 32785k
GGC runs: 94 -> 96
Pre-IPA-Garbage: 39202k
Pre-IPA-Leak: 63828k -> 63682k
Pre-IPA-Overhead: 7142k -> 6995k
Post-IPA-Garbage: 39202k
Post-IPA-Leak: 63828k -> 63682k
Post-IPA-Overhead: 7142k -> 6995k


comparing PR rtl-optimization/28071 testcase compilation at -O2 level:
    Overall memory needed: 527917k -> 527969k
    Peak memory use before GGC: 70831k
    Peak memory use after GGC: 66115k
    Maximum of released memory in single GGC run: 37550k
    Garbage: 267164k -> 266941k
    Leak: 9152k -> 9006k
    Overhead: 40049k -> 39902k
    GGC runs: 106
    Pre-IPA-Garbage: 89544k
    Pre-IPA-Leak: 80531k -> 80238k
    Pre-IPA-Overhead: 11392k -> 11099k
    Post-IPA-Garbage: 89544k
    Post-IPA-Leak: 80531k -> 80238k
    Post-IPA-Overhead: 11392k -> 11099k

comparing PR rtl-optimization/28071 testcase compilation at -O3 -fno-tree-pre -fno-tree-fre level:
Overall memory needed: 1249521k -> 1235429k
Peak memory use before GGC: 131401k
Peak memory use after GGC: 123130k
Maximum of released memory in single GGC run: 49333k
Garbage: 342808k -> 342802k
Leak: 10574k -> 10281k
Overhead: 44260k -> 43967k
GGC runs: 106
Pre-IPA-Garbage: 89544k
Pre-IPA-Leak: 80531k -> 80238k
Pre-IPA-Overhead: 11392k -> 11099k
Post-IPA-Garbage: 89544k
Post-IPA-Leak: 80531k -> 80238k
Post-IPA-Overhead: 11392k -> 11099k


Head of the ChangeLog is:

--- /usr/src/SpecTests/sandbox-haydn-memory/x86_64/mem-result/ChangeLog 2009-05-08 09:03:59.000000000 +0000
+++ /usr/src/SpecTests/sandbox-haydn-memory/gcc/gcc/ChangeLog 2009-05-08 23:06:39.000000000 +0000
@@ -1,3 +1,136 @@
+2009-05-07 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR tree-optimization/40049
+ * tree-vect-stmts.c (vectorizable_operation): If the machine has
+ only vector/vector shifts, convert the type of the constant to the
+ appropriate type to avoid building incorrect trees, which
+ eventually have problems with garbage collection.
+
+2009-05-08 Joseph Myers <joseph@codesourcery.com>
+
+ * fold-const.c (fold_binary): Do not fold multiplication by 1 or
+ -1 for complex floating-point types if honoring signed zeros.
+
+2009-05-08 Jan Hubicka <jh@suse.cz>
+
+ * cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument;
+ handle correctly when profile is absent.
+ (build_cgraph_edges): Update.
+ (rebuild_cgraph_edges): Update.
+ * cgraph.c: Do not include varrau.h
+ (cgraph_set_call_stmt_including_clones, cgraph_create_edge_including_clones):
+ New function
+ (cgraph_update_edges_for_call_stmt_node): New stati cfunction.
+ (cgraph_update_edges_for_call_stmt): Handle clones.
+ (cgraph_remove_node): Handle clone tree.
+ (cgraph_remove_node_and_inline_clones): New function.
+ (dump_cgraph_node): Dump clone tree.
+ (cgraph_clone_node): Handle clone tree.
+ (clone_function_name): Bring here from tree-inline.c
+ (cgraph_create_virtual_clone): New function.
+ * cgraph.h (ipa_replace_map): Move ehre from ipa.h
+ (cgraph_clone_info): New function
+ (strut cgraph_node): Add clone_info and new clone tree pointers.
+ (cgraph_remove_node_and_inline_clones, cgraph_set_call_stmt_including_clones,
+ cgraph_create_edge_including_clones, cgraph_create_virtual_clone): Declare.
+ (cgraph_function_versioning): Use VEC argument.
+ (compute_call_stmt_bb_frequency): Update prototype.
+ (cgraph_materialize_all_clones): New function.
+ * ipa-cp.c (ipcp_update_cloned_node): Remove.
+ (ipcp_create_replace_map): Update to VECtors.
+ (ipcp_update_callgraph): Use virtual clones.
+ (ipcp_update_bb_counts, ipcp_update_edges_counts): Remove.
+ (ipcp_update_profiling): Do not update local profiling.
+ (ipcp_insert_stage): Use VECtors and virtual clones.
+ * cgraphunit.c (verify_cgraph_node): Verify clone tree.
+ (clone_of_p): New function.
+ (cgraph_preserve_function_body_p): Use clone tree.
+ (cgraph_optimize): Materialize clones.
+ (cgraph_function_versioning): Update for VECtors.
+ (save_inline_function_body): Use clone tree.
+ (cgraph_materialize_clone, cgraph_materialize_all_clones): New functions.
+ * ipa-inline.c (cgraph_default_inline_p): Use analyzed flags.
+ * ipa.c: Include gimple.h.
+ (cgraph_remove_unreachable_nodes): Use clone tree.
+ * ipa-prop.c (ipa_note_param_call): Update call of compute_call_stmt_bb_frequency.
+ * ipa-prop.h (ipa_replace_map): Move to cgraph.h.
+ * tree-inline.c: Do not include varray.h; do not include gt-tree-inline.h
+ (copy_bb): Handle updating of clone tree; add new edge when new call
+ appears.
+ (expand_call_inline): Be strict about every call having edge.
+ (clone_fn_id_num, clone_function_name): Move to cgraph.c.
+ (delete_unreachable_blocks_update_callgraph): New function.
+ (tree_function_versioning): Use VECtors; always remove unreachable blocks
+ and fold conditionals.
+ * tree-inline.h: Do not include varray.h
+ (tree_function_versioning): Remove.
+ * Makefile.in (GTFILES): Remove tree-inline.c
+ * passes.c (do_per_function): Do only functions having body.
+ * ipa-struct-reorg.c (do_reorg_1, collect_data_accesses): Handle cone tree.
+
+2009-05-08 H.J. Lu <hongjiu.lu@intel.com>
+ Andrew Morrow <acm@google.com>
+
+ PR c/36892
+ * c-common.c (c_common_attribute_table): Permit deprecated
+ attribute to take an optional argument.
+ (handle_deprecated_attribute): If the optional argument to
+ __attribute__((deprecated)) is not a string ignore the attribute
+ and emit a warning.
+
+ * c-decl.c (grokdeclarator): Updated warn_deprecated_use call.
+ * c-typeck.c (build_component_ref): Likewise.
+ (build_external_ref): Likewise.
+
+ * toplev.c (warn_deprecated_use): Add an attribute argument.
+ Emit the message associated with __attribute__((deprecated)).
+
+ * toplev.h (warn_deprecated_use): Updated.
+
+ * doc/extend.texi: Document new optional parameter to
+ __attribute__((deprecated))
+
+2009-05-08 Michael Eager <eager@eagercon.com>
+
+ * config/rs6000/rs6000.md (*movdf_softfloat32): replace
+ !TARGET_DOUBLE_FLOAT with TARGET_SINGLE_FLOAT.
+
+2009-05-08 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/40062
+ * tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi):
+ Avoid exponential behavior.
+
+2009-05-08 Paolo Bonzini <bonzini@gnu.org>
+
+ PR rtl-optimization/33928
+ PR 26854
+ * fwprop.c (use_def_ref, get_def_for_use, bitmap_only_bit_bitween,
+ process_uses, build_single_def_use_links): New.
+ (update_df): Update use_def_ref.
+ (forward_propagate_into): Use get_def_for_use instead of use-def
+ chains.
+ (fwprop_init): Call build_single_def_use_links and let it initialize
+ dataflow.
+ (fwprop_done): Free use_def_ref.
+ (fwprop_addr): Eliminate duplicate call to df_set_flags.
+ * df-problems.c (df_rd_simulate_artificial_defs_at_top,
+ df_rd_simulate_one_insn): New.
+ (df_rd_bb_local_compute_process_def): Update head comment.
+ (df_chain_create_bb): Use the new RD simulation functions.
+ * df.h (df_rd_simulate_artificial_defs_at_top,
+ df_rd_simulate_one_insn): New.
+ * opts.c (decode_options): Enable fwprop at -O1.
+ * doc/invoke.texi (-fforward-propagate): Document this.
+
+2009-05-08 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/24581
+ * c-typeck.c (build_binary_op): Handle arithmetic between one real
+ and one complex operand specially.
+ * tree-complex.c (some_nonzerop): Do not identify a real value as
+ zero if flag_signed_zeros.
+
2009-05-08 Paolo Bonzini <bonzini@gnu.org>


PR rtl-optimization/33928
--- /usr/src/SpecTests/sandbox-haydn-memory/x86_64/mem-result/ChangeLog.cp 2009-05-06 23:03:45.000000000 +0000
+++ /usr/src/SpecTests/sandbox-haydn-memory/gcc/gcc/cp/ChangeLog 2009-05-08 23:06:38.000000000 +0000
@@ -1,3 +1,14 @@
+2009-05-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR c/36892
+ * call.c (build_call_a): Updated warn_deprecated_use call.
+ (build_over_call): Likewise.
+ * decl.c (grokdeclarator): Likewise.
+ (grokparms): Likewise.
+ * semantics.c (finish_id_expression): Likewise.
+ * typeck.c (build_class_member_access_expr): Likewise.
+ (finish_class_member_access_expr): Likewise.
+
2009-05-06 Dodji Seketeli <dodji@redhat.com>


 	PR c++/17395
@@ -7,23 +18,23 @@
 2009-05-05  Shujing Zhao  <pearly.zhao@oracle.com>

* cp-tree.h:
- (opname_tab, assignop_tab, update_member_visibility, yyerror, yyhook,
- mangle_compound_literal): Remove unused declarations.
- (build_vfield_ref, cxx_print_statistics, clone_function_decl,
- adjust_clone_args, maybe_push_cleanup_level, pushtag, make_anon_name,
- pushdecl_top_level_maybe_friend, pushdecl_top_level_and_finish,
- check_for_out_of_scope_variable, print_other_binding_stack,
- maybe_push_decl, cxx_mark_addressable, force_target_expr,
- build_target_expr_with_type, finish_case_label,
- cxx_maybe_build_cleanup, begin_eh_spec_block, finish_eh_spec_block,
- check_template_keyword, cxx_omp_predetermined_sharing,
- cxx_omp_clause_default_ctor, cxx_omp_clause_copy_ctor,
- cxx_omp_clause_assign_op, cxx_omp_clause_dtor, cxx_omp_finish_clause,
- cxx_omp_privatize_by_reference): Rearrange the declarations line to
- match the comment that indicates the .c file which the functions are
- defined.
- (cxx_print_xnode, cxx_print_decl, cxx_print_type,
- cxx_print_identifier, cxx_print_error_function, pushdecl): Add comment.
+ (opname_tab, assignop_tab, update_member_visibility, yyerror, yyhook,
+ mangle_compound_literal): Remove unused declarations.
+ (build_vfield_ref, cxx_print_statistics, clone_function_decl,
+ adjust_clone_args, maybe_push_cleanup_level, pushtag, make_anon_name,
+ pushdecl_top_level_maybe_friend, pushdecl_top_level_and_finish,
+ check_for_out_of_scope_variable, print_other_binding_stack,
+ maybe_push_decl, cxx_mark_addressable, force_target_expr,
+ build_target_expr_with_type, finish_case_label,
+ cxx_maybe_build_cleanup, begin_eh_spec_block, finish_eh_spec_block,
+ check_template_keyword, cxx_omp_predetermined_sharing,
+ cxx_omp_clause_default_ctor, cxx_omp_clause_copy_ctor,
+ cxx_omp_clause_assign_op, cxx_omp_clause_dtor, cxx_omp_finish_clause,
+ cxx_omp_privatize_by_reference): Rearrange the declarations line to
+ match the comment that indicates the .c file which the functions are
+ defined.
+ (cxx_print_xnode, cxx_print_decl, cxx_print_type,
+ cxx_print_identifier, cxx_print_error_function, pushdecl): Add comment.


2009-05-05 Nathan Sidwell <nathan@codesourcery.com>

@@ -821,9 +832,9 @@

2009-02-01 Paolo Carlini <paolo.carlini@oracle.com>

-        PR c++/39053
-        * parser.c (cp_parser_pure_specifier): If there are no tokens left
-        do not call cp_lexer_consume_token.
+	PR c++/39053
+	* parser.c (cp_parser_pure_specifier): If there are no tokens left
+	do not call cp_lexer_consume_token.

2009-01-30 Jakub Jelinek <jakub@redhat.com>



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]