This is the mail archive of the
gcc-regression@gcc.gnu.org
mailing list for the GCC project.
A recent patch increased GCC's memory consumption in some cases!
- From: gcctest at suse dot de
- To: jh at suse dot cz, gcc-regression at gcc dot gnu dot org
- Date: Thu, 28 Feb 2008 15:05:46 +0000
- Subject: A recent patch increased GCC's memory consumption in some cases!
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:
Peak amount of GGC memory still allocated after garbage collecting decreased from 1035k to 995k, overall -4.02%
Amount of memory still referenced at the end of compilation decreased from 984k to 952k, overall -3.38%
Overall memory needed: 8181k -> 8152k
Peak memory use before GGC: 1130k -> 1097k
Peak memory use after GGC: 1035k -> 995k
Maximum of released memory in single GGC run: 127k -> 129k
Garbage: 238k -> 238k
Leak: 984k -> 952k
Overhead: 80k -> 80k
GGC runs: 4 -> 2
Testing has produced no results
Testing has produced no results
comparing empty function compilation at -O0 -g level:
Amount of memory still referenced at the end of compilation decreased from 1017k to 985k, overall -3.26%
Overall memory needed: 8197k -> 8168k
Peak memory use before GGC: 1157k -> 1125k
Peak memory use after GGC: 1062k -> 1031k
Maximum of released memory in single GGC run: 127k -> 128k
Garbage: 240k
Leak: 1017k -> 985k
Overhead: 84k -> 84k
GGC runs: 4
Testing has produced no results
Testing has produced no results
comparing empty function compilation at -O1 level:
Peak amount of GGC memory still allocated after garbage collecting decreased from 1027k to 995k, overall -3.22%
Amount of produced GGC garbage increased from 239k to 240k, overall 0.14%
Amount of memory still referenced at the end of compilation decreased from 985k to 953k, overall -3.37%
Overall memory needed: 8237k -> 8204k
Peak memory use before GGC: 1130k -> 1097k
Peak memory use after GGC: 1027k -> 995k
Maximum of released memory in single GGC run: 120k -> 131k
Garbage: 239k -> 240k
Leak: 985k -> 953k
Overhead: 81k -> 81k
GGC runs: 3 -> 2
Amount of memory referenced pre-ipa decreased from 987k to 955k, overall -3.33%
Pre-IPA-Garbage: 227k
Pre-IPA-Leak: 987k -> 955k
Pre-IPA-Overhead: 79k -> 79k
Amount of memory referenced post-ipa decreased from 987k to 955k, overall -3.33%
Post-IPA-Garbage: 227k
Post-IPA-Leak: 987k -> 955k
Post-IPA-Overhead: 79k -> 79k
comparing empty function compilation at -O2 level:
Peak amount of GGC memory still allocated after garbage collecting decreased from 1027k to 995k, overall -3.22%
Amount of produced GGC garbage increased from 243k to 243k, overall 0.14%
Amount of memory still referenced at the end of compilation decreased from 986k to 954k, overall -3.37%
Overall memory needed: 8257k -> 8224k
Peak memory use before GGC: 1130k -> 1098k
Peak memory use after GGC: 1027k -> 995k
Maximum of released memory in single GGC run: 121k -> 134k
Garbage: 243k -> 243k
Leak: 986k -> 954k
Overhead: 81k -> 81k
GGC runs: 3 -> 2
Amount of memory referenced pre-ipa decreased from 988k to 956k, overall -3.33%
Pre-IPA-Garbage: 227k
Pre-IPA-Leak: 988k -> 956k
Pre-IPA-Overhead: 79k -> 79k
Amount of memory referenced post-ipa decreased from 988k to 956k, overall -3.33%
Post-IPA-Garbage: 227k
Post-IPA-Leak: 988k -> 956k
Post-IPA-Overhead: 79k -> 79k
comparing empty function compilation at -O3 level:
Peak amount of GGC memory still allocated after garbage collecting decreased from 1027k to 995k, overall -3.22%
Amount of produced GGC garbage increased from 243k to 243k, overall 0.14%
Amount of memory still referenced at the end of compilation decreased from 986k to 954k, overall -3.37%
Overall memory needed: 8257k -> 8224k
Peak memory use before GGC: 1130k -> 1098k
Peak memory use after GGC: 1027k -> 995k
Maximum of released memory in single GGC run: 121k -> 134k
Garbage: 243k -> 243k
Leak: 986k -> 954k
Overhead: 81k -> 81k
GGC runs: 3 -> 2
Amount of memory referenced pre-ipa decreased from 988k to 956k, overall -3.33%
Pre-IPA-Garbage: 227k
Pre-IPA-Leak: 988k -> 956k
Pre-IPA-Overhead: 79k -> 79k
Amount of memory referenced post-ipa decreased from 988k to 956k, overall -3.33%
Post-IPA-Garbage: 227k
Post-IPA-Leak: 988k -> 956k
Post-IPA-Overhead: 79k -> 79k
comparing combine.c compilation at -O0 level:
Peak amount of GGC memory allocated before garbage collecting run decreased from 8064k to 7810k, overall -3.25%
Peak amount of GGC memory still allocated after garbage collecting decreased from 7443k to 7187k, overall -3.56%
Amount of memory still referenced at the end of compilation decreased from 5771k to 5515k, overall -4.65%
Overall memory needed: 22957k -> 22700k
Peak memory use before GGC: 8064k -> 7810k
Peak memory use after GGC: 7443k -> 7187k
Maximum of released memory in single GGC run: 1550k
Garbage: 38412k -> 37932k
Leak: 5771k -> 5515k
Overhead: 4649k -> 4649k
GGC runs: 363 -> 372
Testing has produced no results
Testing has produced no results
comparing combine.c compilation at -O0 -g level:
Overall memory needed: 24961k -> 24708k
Peak memory use before GGC: 9886k -> 9648k
Peak memory use after GGC: 9211k -> 8955k
Maximum of released memory in single GGC run: 1838k
Garbage: 38776k -> 38271k
Leak: 8637k -> 8380k
Overhead: 5277k -> 5276k
GGC runs: 338 -> 343
Testing has produced no results
Testing has produced no results
comparing combine.c compilation at -O1 level:
Amount of memory still referenced at the end of compilation decreased from 5925k to 5660k, overall -4.67%
Overall memory needed: 33105k -> 32940k
Peak memory use before GGC: 16514k -> 16345k
Peak memory use after GGC: 16330k -> 16161k
Maximum of released memory in single GGC run: 1361k -> 1362k
Garbage: 51713k -> 51449k
Leak: 5925k -> 5660k
Overhead: 5777k -> 5777k
GGC runs: 435 -> 444
Pre-IPA-Garbage: 14319k -> 13922k
Pre-IPA-Leak: 17607k -> 17182k
Pre-IPA-Overhead: 2128k -> 2129k
Post-IPA-Garbage: 14319k -> 13922k
Post-IPA-Leak: 17607k -> 17182k
Post-IPA-Overhead: 2128k -> 2129k
comparing combine.c compilation at -O2 level:
Amount of memory still referenced at the end of compilation decreased from 6242k to 5986k, overall -4.28%
Overall memory needed: 35881k -> 35748k
Peak memory use before GGC: 16608k -> 16447k
Peak memory use after GGC: 16442k -> 16280k
Maximum of released memory in single GGC run: 1317k
Garbage: 71391k -> 71179k
Leak: 6242k -> 5986k
Overhead: 8067k -> 8077k
GGC runs: 502 -> 511
Pre-IPA-Garbage: 14465k -> 14079k
Pre-IPA-Leak: 17665k -> 17247k
Pre-IPA-Overhead: 2143k -> 2144k
Post-IPA-Garbage: 14465k -> 14079k
Post-IPA-Leak: 17665k -> 17247k
Post-IPA-Overhead: 2143k -> 2144k
comparing combine.c compilation at -O3 level:
Amount of memory still referenced at the end of compilation decreased from 6295k to 6039k, overall -4.24%
Overall memory needed: 38977k -> 38760k
Peak memory use before GGC: 16779k -> 16616k
Peak memory use after GGC: 16458k -> 16293k
Maximum of released memory in single GGC run: 2018k -> 2041k
Garbage: 88828k -> 88677k
Leak: 6295k -> 6039k
Overhead: 9989k -> 10002k
GGC runs: 535 -> 544
Pre-IPA-Garbage: 14471k -> 14085k
Pre-IPA-Leak: 17677k -> 17258k
Pre-IPA-Overhead: 2145k -> 2145k
Post-IPA-Garbage: 14471k -> 14085k
Post-IPA-Leak: 17677k -> 17258k
Post-IPA-Overhead: 2145k -> 2145k
comparing insn-attrtab.c compilation at -O0 level:
Peak amount of GGC memory still allocated after garbage collecting decreased from 32481k to 31457k, overall -3.26%
Amount of memory still referenced at the end of compilation decreased from 9407k to 8383k, overall -12.22%
Overall memory needed: 138977k -> 137440k
Peak memory use before GGC: 58536k -> 57000k
Peak memory use after GGC: 32481k -> 31457k
Maximum of released memory in single GGC run: 33768k -> 33256k
Garbage: 129603k -> 128611k
Leak: 9407k -> 8383k
Overhead: 14369k -> 14368k
GGC runs: 289 -> 293
Testing has produced no results
Testing has produced no results
comparing insn-attrtab.c compilation at -O0 -g level:
Peak amount of GGC memory still allocated after garbage collecting decreased from 33623k to 32599k, overall -3.14%
Amount of memory still referenced at the end of compilation decreased from 11082k to 10058k, overall -10.18%
Overall memory needed: 140225k -> 138696k
Peak memory use before GGC: 59678k -> 58142k
Peak memory use after GGC: 33623k -> 32599k
Maximum of released memory in single GGC run: 33768k -> 33256k
Garbage: 129856k -> 128862k
Leak: 11082k -> 10058k
Overhead: 14724k -> 14724k
GGC runs: 284 -> 288
Testing has produced no results
Testing has produced no results
comparing insn-attrtab.c compilation at -O1 level:
Amount of memory still referenced at the end of compilation decreased from 10300k to 9276k, overall -11.04%
Overall memory needed: 143801k -> 142956k
Peak memory use before GGC: 56776k -> 56212k
Peak memory use after GGC: 50757k -> 49987k
Maximum of released memory in single GGC run: 23976k -> 23977k
Garbage: 206763k -> 206428k
Leak: 10300k -> 9276k
Overhead: 24744k -> 24742k
GGC runs: 312 -> 315
Pre-IPA-Garbage: 51059k -> 50356k
Pre-IPA-Leak: 50420k -> 49677k
Pre-IPA-Overhead: 7544k -> 7543k
Post-IPA-Garbage: 51059k -> 50356k
Post-IPA-Leak: 50420k -> 49677k
Post-IPA-Overhead: 7544k -> 7543k
comparing insn-attrtab.c compilation at -O2 level:
Amount of memory still referenced at the end of compilation decreased from 11387k to 10363k, overall -9.88%
Overall memory needed: 185445k -> 184536k
Peak memory use before GGC: 57882k -> 56854k
Peak memory use after GGC: 52347k -> 51574k
Maximum of released memory in single GGC run: 22904k -> 22909k
Garbage: 249215k -> 247266k
Leak: 11387k -> 10363k
Overhead: 30401k -> 30401k
GGC runs: 342 -> 346
Pre-IPA-Garbage: 51129k -> 50428k
Pre-IPA-Leak: 50425k -> 49681k
Pre-IPA-Overhead: 7551k -> 7550k
Post-IPA-Garbage: 51129k -> 50428k
Post-IPA-Leak: 50425k -> 49681k
Post-IPA-Overhead: 7551k -> 7550k
comparing insn-attrtab.c compilation at -O3 level:
Amount of memory still referenced at the end of compilation decreased from 11424k to 10400k, overall -9.85%
Overall memory needed: 191465k -> 190652k
Peak memory use before GGC: 68810k -> 68037k
Peak memory use after GGC: 63054k -> 62281k
Maximum of released memory in single GGC run: 23396k -> 23405k
Garbage: 276812k -> 275121k
Leak: 11424k -> 10400k
Overhead: 32191k -> 32191k
GGC runs: 343 -> 348
Pre-IPA-Garbage: 51129k -> 50428k
Pre-IPA-Leak: 50425k -> 49681k
Pre-IPA-Overhead: 7551k -> 7550k
Post-IPA-Garbage: 51129k -> 50428k
Post-IPA-Leak: 50425k -> 49681k
Post-IPA-Overhead: 7551k -> 7550k
comparing Gerald's testcase PR8361 compilation at -O0 level:
Amount of memory still referenced at the end of compilation decreased from 50072k to 48024k, overall -4.26%
Overall memory needed: 150807k -> 148463k
Peak memory use before GGC: 86709k -> 84242k
Peak memory use after GGC: 85850k -> 83407k
Maximum of released memory in single GGC run: 17150k -> 16731k
Garbage: 202940k -> 200926k
Leak: 50072k -> 48024k
Overhead: 23992k -> 23992k
GGC runs: 412 -> 417
Pre-IPA-Garbage: 111807k -> 109791k
Pre-IPA-Leak: 73200k -> 71152k
Pre-IPA-Overhead: 12100k -> 12099k
Post-IPA-Garbage: 111807k -> 109791k
Post-IPA-Leak: 73200k -> 71152k
Post-IPA-Overhead: 12100k -> 12099k
comparing Gerald's testcase PR8361 compilation at -O0 -g level:
Overall memory needed: 171611k -> 169711k
Peak memory use before GGC: 97994k -> 96213k
Peak memory use after GGC: 97015k -> 95248k
Maximum of released memory in single GGC run: 17279k -> 17546k
Garbage: 208569k -> 206565k
Leak: 71755k -> 69707k
Overhead: 28969k -> 28969k
GGC runs: 387 -> 390
Pre-IPA-Garbage: 112451k -> 110434k
Pre-IPA-Leak: 86481k -> 84433k
Pre-IPA-Overhead: 14676k -> 14675k
Post-IPA-Garbage: 112451k -> 110434k
Post-IPA-Leak: 86481k -> 84433k
Post-IPA-Overhead: 14676k -> 14675k
comparing Gerald's testcase PR8361 compilation at -O1 level:
Peak amount of GGC memory allocated before garbage collecting run decreased from 87486k to 84151k, overall -3.96%
Peak amount of GGC memory still allocated after garbage collecting decreased from 86611k to 83317k, overall -3.95%
Amount of memory still referenced at the end of compilation decreased from 51526k to 47431k, overall -8.63%
Overall memory needed: 126185k -> 122812k
Peak memory use before GGC: 87486k -> 84151k
Peak memory use after GGC: 86611k -> 83317k
Maximum of released memory in single GGC run: 16221k -> 16272k
Garbage: 290943k -> 290109k
Leak: 51526k -> 47431k
Overhead: 29287k -> 29317k
GGC runs: 498 -> 513
Amount of memory referenced pre-ipa decreased from 91245k to 87948k, overall -3.75%
Pre-IPA-Garbage: 157328k -> 155013k
Pre-IPA-Leak: 91245k -> 87948k
Pre-IPA-Overhead: 17483k -> 17503k
Amount of memory referenced post-ipa decreased from 91245k to 87948k, overall -3.75%
Post-IPA-Garbage: 157328k -> 155013k
Post-IPA-Leak: 91245k -> 87948k
Post-IPA-Overhead: 17483k -> 17503k
comparing Gerald's testcase PR8361 compilation at -O2 level:
Peak amount of GGC memory allocated before garbage collecting run decreased from 87770k to 84382k, overall -4.02%
Peak amount of GGC memory still allocated after garbage collecting decreased from 86851k to 83500k, overall -4.01%
Amount of memory still referenced at the end of compilation decreased from 52529k to 48431k, overall -8.46%
Overall memory needed: 128005k -> 124580k
Peak memory use before GGC: 87770k -> 84382k
Peak memory use after GGC: 86851k -> 83500k
Maximum of released memory in single GGC run: 16224k -> 16273k
Garbage: 355674k -> 355257k
Leak: 52529k -> 48431k
Overhead: 36116k -> 36160k
GGC runs: 571 -> 591
Amount of memory referenced pre-ipa decreased from 91407k to 88098k, overall -3.76%
Pre-IPA-Garbage: 159776k -> 157657k
Pre-IPA-Leak: 91407k -> 88098k
Pre-IPA-Overhead: 17773k -> 17796k
Amount of memory referenced post-ipa decreased from 91407k to 88098k, overall -3.76%
Post-IPA-Garbage: 159776k -> 157657k
Post-IPA-Leak: 91407k -> 88098k
Post-IPA-Overhead: 17773k -> 17796k
comparing Gerald's testcase PR8361 compilation at -O3 level:
Peak amount of GGC memory allocated before garbage collecting run decreased from 88576k to 85615k, overall -3.46%
Peak amount of GGC memory still allocated after garbage collecting decreased from 87692k to 84751k, overall -3.47%
Amount of memory still referenced at the end of compilation decreased from 52973k to 48886k, overall -8.36%
Overall memory needed: 130485k -> 127276k
Peak memory use before GGC: 88576k -> 85615k
Peak memory use after GGC: 87692k -> 84751k
Maximum of released memory in single GGC run: 16660k -> 16624k
Garbage: 381599k -> 381361k
Leak: 52973k -> 48886k
Overhead: 38335k -> 38401k
GGC runs: 597 -> 612
Amount of memory referenced pre-ipa decreased from 91700k to 88381k, overall -3.76%
Pre-IPA-Garbage: 162490k -> 160395k
Pre-IPA-Leak: 91700k -> 88381k
Pre-IPA-Overhead: 18023k -> 18046k
Amount of memory referenced post-ipa decreased from 91700k to 88381k, overall -3.76%
Post-IPA-Garbage: 162490k -> 160395k
Post-IPA-Leak: 91700k -> 88381k
Post-IPA-Overhead: 18023k -> 18046k
comparing PR rtl-optimization/28071 testcase compilation at -O0 level:
Amount of memory still referenced at the end of compilation decreased from 6355k to 6099k, overall -4.20%
Overall memory needed: 380695k -> 380439k
Peak memory use before GGC: 101466k -> 101210k
Peak memory use after GGC: 57119k -> 56863k
Maximum of released memory in single GGC run: 50583k
Garbage: 179256k -> 178904k
Leak: 6355k -> 6099k
Overhead: 30783k -> 30782k
GGC runs: 106
Testing has produced no results
Testing has produced no results
comparing PR rtl-optimization/28071 testcase compilation at -O0 -g level:
Amount of memory still referenced at the end of compilation decreased from 8085k to 7829k, overall -3.27%
Overall memory needed: 381491k -> 381243k
Peak memory use before GGC: 102097k -> 101840k
Peak memory use after GGC: 57750k -> 57494k
Maximum of released memory in single GGC run: 50583k -> 50582k
Garbage: 179371k -> 179019k
Leak: 8085k -> 7829k
Overhead: 31215k -> 31215k
GGC runs: 109 -> 111
Testing has produced no results
Testing has produced no results
comparing PR rtl-optimization/28071 testcase compilation at -O1 level:
Amount of memory still referenced at the end of compilation decreased from 17951k to 15903k, overall -12.88%
Overall memory needed: 443933k -> 437484k
Peak memory use before GGC: 79761k -> 78686k
Peak memory use after GGC: 71493k -> 70437k
Maximum of released memory in single GGC run: 36621k -> 37594k
Garbage: 237606k -> 234297k
Leak: 17951k -> 15903k
Overhead: 35598k -> 35589k
GGC runs: 108 -> 105
Amount of produced pre-ipa-GGC garbage decreased from 58078k to 52925k, overall -9.74%
Amount of memory referenced pre-ipa decreased from 51236k to 49233k, overall -4.07%
Pre-IPA-Garbage: 58078k -> 52925k
Pre-IPA-Leak: 51236k -> 49233k
Pre-IPA-Overhead: 7126k -> 7120k
Amount of produced post-ipa-GGC garbage decreased from 58078k to 52925k, overall -9.74%
Amount of memory referenced post-ipa decreased from 51236k to 49233k, overall -4.07%
Post-IPA-Garbage: 58078k -> 52925k
Post-IPA-Leak: 51236k -> 49233k
Post-IPA-Overhead: 7126k -> 7120k
comparing PR rtl-optimization/28071 testcase compilation at -O2 level:
Amount of memory still referenced at the end of compilation decreased from 18123k to 16075k, overall -12.74%
Overall memory needed: 356213k -> 358096k
Peak memory use before GGC: 77503k -> 75424k
Peak memory use after GGC: 71493k -> 70438k
Maximum of released memory in single GGC run: 32243k
Garbage: 249554k -> 245000k
Leak: 18123k -> 16075k
Overhead: 38765k -> 38757k
GGC runs: 121 -> 116
Amount of produced pre-ipa-GGC garbage decreased from 102437k to 91836k, overall -11.54%
Amount of memory referenced pre-ipa decreased from 81162k to 77291k, overall -5.01%
Pre-IPA-Garbage: 102437k -> 91836k
Pre-IPA-Leak: 81162k -> 77291k
Pre-IPA-Overhead: 11804k -> 11793k
Amount of produced post-ipa-GGC garbage decreased from 102437k to 91836k, overall -11.54%
Amount of memory referenced post-ipa decreased from 81162k to 77291k, overall -5.01%
Post-IPA-Garbage: 102437k -> 91836k
Post-IPA-Leak: 81162k -> 77291k
Post-IPA-Overhead: 11804k -> 11793k
comparing PR rtl-optimization/28071 testcase compilation at -O3 -fno-tree-pre -fno-tree-fre level:
Amount of memory still referenced at the end of compilation decreased from 28985k to 24889k, overall -16.46%
Overall memory needed: 1203673k -> 1197912k
Peak memory use before GGC: 140747k -> 136585k
Peak memory use after GGC: 130057k -> 127943k
Maximum of released memory in single GGC run: 58637k -> 59911k
Garbage: 382908k -> 371518k
Leak: 28985k -> 24889k
Overhead: 49936k -> 49888k
GGC runs: 110 -> 103
Amount of produced pre-ipa-GGC garbage decreased from 102437k to 91836k, overall -11.54%
Amount of memory referenced pre-ipa decreased from 81162k to 77291k, overall -5.01%
Pre-IPA-Garbage: 102437k -> 91836k
Pre-IPA-Leak: 81162k -> 77291k
Pre-IPA-Overhead: 11804k -> 11793k
Amount of produced post-ipa-GGC garbage decreased from 102437k to 91836k, overall -11.54%
Amount of memory referenced post-ipa decreased from 81162k to 77291k, overall -5.01%
Post-IPA-Garbage: 102437k -> 91836k
Post-IPA-Leak: 81162k -> 77291k
Post-IPA-Overhead: 11804k -> 11793k
Head of the ChangeLog is:
--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog 2008-02-27 19:53:03.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/ChangeLog 2008-02-28 11:47:13.000000000 +0000
@@ -1,3 +1,66 @@
+2008-02-28 Richard Guenther <rguenther@suse.de>
+
+ Revert:
+ 2008-02-26 Richard Guenther <rguenther@suse.de>
+
+ * tree-flow.h (uid_decl_map_hash, uid_decl_map_eq): Move ...
+ * tree.h (uid_decl_map_hash, uid_decl_map_eq): ... here.
+ (lookup_decl_from_uid): Declare.
+ (remove_decl_from_map): Likewise.
+ * tree-ssa.c (uid_decl_map_eq, uid_decl_map_hash): Move ...
+ * tree.c (uid_decl_map_eq, uid_decl_map_hash): ... here.
+ (decl_for_uid_map): New global hashtable mapping DECL_UID
+ to the decl tree.
+ (init_ttree): Allocate it.
+ (insert_decl_to_uid_decl_map): New helper function.
+ (make_node_stat): Insert new decls into the map.
+ (copy_node_stat): Likewise.
+ (lookup_decl_from_uid): New function.
+ (remove_decl_from_map): Likewise.
+ (print_decl_for_uid_map_statistics): New helper.
+ (dump_tree_statistics): Call it.
+
+ * tree-flow.h (struct gimple_df): Make referenced_vars a bitmap.
+ (referenced_var_iterator): Adjust.
+ (FOR_EACH_REFERENCED_VAR): Adjust.
+ (FOR_EACH_REFERENCED_VAR_IN_BITMAP): New iterator.
+ (num_referenced_vars): Adjust.
+ * tree-flow-inline.h (gimple_referenced_vars): Adjust.
+ (first_referenced_var): Remove.
+ (end_referenced_vars_p): Likewise.
+ (next_referenced_var): Likewise.
+ (referenced_var_iterator_set): New helper function.
+ * tree-dfa.c (referenced_var_lookup): Adjust.
+ (referenced_var_check_and_insert): Likewise.
+ (remove_referenced_var): Likewise.
+ * tree-ssa.c (verify_flow_insensitive_alias_info): Use
+ FOR_EACH_REFERENCED_VAR_IN_BITMAP.
+ (verify_call_clobbering): Likewise.
+ (verify_memory_partitions): Likewise.
+ (init_tree_ssa): Allocate bitmap instead of hashtable for
+ referenced_vars.
+ (delete_tree_ssa): Adjust.
+ * tree-ssa-alias.c (mark_aliases_call_clobbered): Use
+ FOR_EACH_REFERENCED_VAR_IN_BITMAP.
+ (compute_tag_properties): Likewise.
+ (set_initial_properties): Likewise.
+ (find_partition_for): Likewise.
+ (update_reference_counts): Likewise.
+ (dump_may_aliases_for): Likewise.
+ * tree-ssa-operands.c (add_virtual_operand): Likewise.
+ (add_call_clobber_ops): Likewise.
+ (add_call_read_ops): Likewise.
+ (get_asm_expr_operands): Likewise.
+ * tree-into-ssa.c (dump_decl_set): Likewise.
+ (update_ssa): Likewise.
+ * tree-sra.c (scan_function): Likewise.
+ (decide_instantiations): Likewise.
+ (scalarize_parms): Likewise.
+ * tree-ssa-alias-warnings.c (build_reference_table): Likewise.
+ (dsa_named_for): Likewise.
+ * tree-ssa-structalias.c (update_alias_info): Likewise.
+ (merge_smts_into): Likewise.
+
2008-02-27 David Daney <ddaney@avtrex.com>
PR target/34409
@@ -37,7 +100,7 @@
2008-02-27 Richard Guenther <rguenther@suse.de>
- PR middle-end/25290
+ PR middle-end/35390
* fold-const.c (fold_unary): Return the correct argument,
converted to the result type.
--- /usr/src/SpecTests/sandbox-britten-memory/x86_64/mem-result/ChangeLog.cp 2008-02-27 19:52:40.000000000 +0000
+++ /usr/src/SpecTests/sandbox-britten-memory/gcc/gcc/cp/ChangeLog 2008-02-28 11:47:13.000000000 +0000
@@ -1,3 +1,11 @@
+2008-02-28 Richard Guenther <rguenther@suse.de>
+
+ Revert:
+ 2008-02-26 Richard Guenther <rguenther@suse.de>
+
+ * decl.c (duplicate_decls): Remove decl from global mapping
+ before ggc_freeing it.
+
2008-02-27 Jakub Jelinek <jakub@redhat.com>
PR c++/35368
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.