diff options
author | Andi Kleen <ak@linux.intel.com> | 2012-09-08 17:26:07 +0000 |
---|---|---|
committer | Andi Kleen <ak@gcc.gnu.org> | 2012-09-08 17:26:07 +0000 |
commit | b3e44629b84562454405c9b17c639e50c536e3b6 (patch) | |
tree | ec889e25fe873beef48915b755c2472a48624c8c /gcc | |
parent | 1a760de952fb4743c2f2c8664d08651e14acc936 (diff) | |
download | gcc-b3e44629b84562454405c9b17c639e50c536e3b6.zip gcc-b3e44629b84562454405c9b17c639e50c536e3b6.tar.gz gcc-b3e44629b84562454405c9b17c639e50c536e3b6.tar.bz2 |
Add -fmem-report-wpa
For parallel LTO builds setting -fmem-report does not work very well
because all the LTRANS phases dump it in parallel and typically interleave
it to unreadability.
Since usually the memory bottleneck is WPA add a flag to only dump
the memory report for that.
gcc/:
2012-09-08 Andi Kleen <ak@linux.intel.com>
* gcc/common.opt (-fmem-report-wpa): Add
* gcc/doc/invoke.texi (-fmem-report-wpa): Document.
* gcc/lto/lto.c (do_whole_program_analysis): Run mem_report
when mem_report_wpa is set.
From-SVN: r191095
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/common.opt | 4 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 7 | ||||
-rw-r--r-- | gcc/lto/lto.c | 2 |
4 files changed, 19 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4592a5..10d9344 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2012-09-08 Andi Kleen <ak@linux.intel.com> + + * gcc/common.opt (-fmem-report-wpa): Add + * gcc/doc/invoke.texi (-fmem-report-wpa): Document. + * gcc/lto/lto.c (do_whole_program_analysis): Run mem_report + when mem_report_wpa is set. + 2012-09-07 Anthony Green <green@moxielogic.com> * config/moxie/moxie.c (moxie_expand_prologue): Optimize prologue diff --git a/gcc/common.opt b/gcc/common.opt index 87e28b5..73eebf4 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -1470,6 +1470,10 @@ fmem-report Common Report Var(mem_report) Report on permanent memory allocation +fmem-report-wpa +Common Report Var(mem_report_wpa) +Report on permanent memory allocation in WPA only + ; This will attempt to merge constant section constants, if 1 only ; string constants and constants from constant pool, if 2 also constant ; variables. diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 3c46cd9..994e4db 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -328,7 +328,7 @@ Objective-C and Objective-C++ Dialects}. -feliminate-unused-debug-symbols -femit-class-debug-always @gol -fenable-@var{kind}-@var{pass} @gol -fenable-@var{kind}-@var{pass}=@var{range-list} @gol --fdebug-types-section @gol +-fdebug-types-section -fmem-report-wpa @gol -fmem-report -fpre-ipa-mem-report -fpost-ipa-mem-report -fprofile-arcs @gol -frandom-seed=@var{string} -fsched-verbose=@var{n} @gol -fsel-sched-verbose -fsel-sched-dump-cfg -fsel-sched-pipelining-verbose @gol @@ -5132,6 +5132,11 @@ pass when it finishes. Makes the compiler print some statistics about permanent memory allocation when it finishes. +@item -fmem-report-wpa +@opindex fmem-report-wpa +Makes the compiler print some statistics about permanent memory +allocation for the WPA phase only. + @item -fpre-ipa-mem-report @opindex fpre-ipa-mem-report @item -fpost-ipa-mem-report diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index 5da5412..3c59299 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -2016,6 +2016,8 @@ do_whole_program_analysis (void) /* Show the LTO report before launching LTRANS. */ if (flag_lto_report) print_lto_report (); + if (mem_report_wpa) + dump_mem_report (); } |