aboutsummaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2006-12-23 15:30:36 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2006-12-23 14:30:36 +0000
commita5573239ecfabfa338f4c73f0d259ace76004a9e (patch)
tree7448acc1c5f3340010e52d07355ec0e394271f55 /gcc/toplev.c
parent5b42ae41cbef45d89d615b566d5eef2469496240 (diff)
downloadgcc-a5573239ecfabfa338f4c73f0d259ace76004a9e.zip
gcc-a5573239ecfabfa338f4c73f0d259ace76004a9e.tar.gz
gcc-a5573239ecfabfa338f4c73f0d259ace76004a9e.tar.bz2
toplev.c (dump_memory_report): Break out from...
* toplev.c (dump_memory_report): Break out from... (finalize): Here. * toplev.h (dump_memory_report): Declare. (cmp_statistic): Rename to ... (final_cmp_statistic): ... this one (cmp_statistic): New. (dump_ggc_loc_staitsitcs): New FINAL parpameter. * common.opt (-fpre-ipa-mem-report, -fpost-ipa-mem-report): Declare. * varray.c (dump_varray_staitiscs): Do not segfault when no varray was allocated so far. From-SVN: r120168
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index d83da13..bcefdc0 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -2012,6 +2012,19 @@ lang_dependent_init (const char *name)
return 1;
}
+void
+dump_memory_report (bool final)
+{
+ ggc_print_statistics ();
+ stringpool_statistics ();
+ dump_tree_statistics ();
+ dump_rtx_statistics ();
+ dump_varray_statistics ();
+ dump_alloc_pool_statistics ();
+ dump_bitmap_statistics ();
+ dump_ggc_loc_statistics (final);
+}
+
/* Clean up: close opened files, etc. */
static void
@@ -2040,16 +2053,7 @@ finalize (void)
finish_optimization_passes ();
if (mem_report)
- {
- ggc_print_statistics ();
- stringpool_statistics ();
- dump_tree_statistics ();
- dump_rtx_statistics ();
- dump_varray_statistics ();
- dump_alloc_pool_statistics ();
- dump_bitmap_statistics ();
- dump_ggc_loc_statistics ();
- }
+ dump_memory_report (true);
/* Free up memory for the benefit of leak detectors. */
free_reg_info ();