mirror of git://gcc.gnu.org/git/gcc.git
Introduce 4-stages profiledbootstrap to get a better profile.
2017-06-19 Martin Liska <mliska@suse.cz> * doc/install.texi: Document that PGO runs in 4 stages. 2017-06-19 Martin Liska <mliska@suse.cz> * Makefile.def: Define 4 stages PGO bootstrap. * Makefile.tpl: Define FLAGS. * Makefile.in: Regenerate. From-SVN: r249366
This commit is contained in:
parent
871cc215f7
commit
0d053a49b6
|
|
@ -1,3 +1,9 @@
|
||||||
|
2017-06-19 Martin Liska <mliska@suse.cz>
|
||||||
|
|
||||||
|
* Makefile.def: Define 4 stages PGO bootstrap.
|
||||||
|
* Makefile.tpl: Define FLAGS.
|
||||||
|
* Makefile.in: Regenerate.
|
||||||
|
|
||||||
2017-06-14 Ian Lance Taylor <iant@golang.org>
|
2017-06-14 Ian Lance Taylor <iant@golang.org>
|
||||||
|
|
||||||
* Makefile.def: Add check-gotools to go check targets.
|
* Makefile.def: Add check-gotools to go check targets.
|
||||||
|
|
|
||||||
|
|
@ -623,7 +623,10 @@ bootstrap_stage = {
|
||||||
bootstrap_stage = {
|
bootstrap_stage = {
|
||||||
id=profile ; prev=1 ; };
|
id=profile ; prev=1 ; };
|
||||||
bootstrap_stage = {
|
bootstrap_stage = {
|
||||||
id=feedback ; prev=profile ;
|
id=train; prev=profile ;
|
||||||
|
bootstrap_target=profiledbootstrap ; };
|
||||||
|
bootstrap_stage = {
|
||||||
|
id=feedback ; prev=train;
|
||||||
bootstrap_target=profiledbootstrap ; };
|
bootstrap_target=profiledbootstrap ; };
|
||||||
bootstrap_stage = {
|
bootstrap_stage = {
|
||||||
id=autoprofile ; prev=1 ;
|
id=autoprofile ; prev=1 ;
|
||||||
|
|
|
||||||
2749
Makefile.in
2749
Makefile.in
File diff suppressed because it is too large
Load Diff
|
|
@ -455,8 +455,11 @@ STAGE1_CONFIGURE_FLAGS = --disable-intermodule $(STAGE1_CHECKING) \
|
||||||
STAGEprofile_CFLAGS = $(STAGE2_CFLAGS) -fprofile-generate
|
STAGEprofile_CFLAGS = $(STAGE2_CFLAGS) -fprofile-generate
|
||||||
STAGEprofile_TFLAGS = $(STAGE2_TFLAGS)
|
STAGEprofile_TFLAGS = $(STAGE2_TFLAGS)
|
||||||
|
|
||||||
STAGEfeedback_CFLAGS = $(STAGE3_CFLAGS) -fprofile-use
|
STAGEtrain_CFLAGS = $(STAGE3_CFLAGS)
|
||||||
STAGEfeedback_TFLAGS = $(STAGE3_TFLAGS)
|
STAGEtrain_TFLAGS = $(STAGE3_TFLAGS)
|
||||||
|
|
||||||
|
STAGEfeedback_CFLAGS = $(STAGE4_CFLAGS) -fprofile-use
|
||||||
|
STAGEfeedback_TFLAGS = $(STAGE4_TFLAGS)
|
||||||
|
|
||||||
STAGEautoprofile_CFLAGS = $(STAGE2_CFLAGS) -g
|
STAGEautoprofile_CFLAGS = $(STAGE2_CFLAGS) -g
|
||||||
STAGEautoprofile_TFLAGS = $(STAGE2_TFLAGS)
|
STAGEautoprofile_TFLAGS = $(STAGE2_TFLAGS)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
2017-06-19 Martin Liska <mliska@suse.cz>
|
||||||
|
|
||||||
|
* doc/install.texi: Document that PGO runs in 4 stages.
|
||||||
|
|
||||||
2017-06-19 Martin Liska <mliska@suse.cz>
|
2017-06-19 Martin Liska <mliska@suse.cz>
|
||||||
|
|
||||||
PR ipa/80732
|
PR ipa/80732
|
||||||
|
|
|
||||||
|
|
@ -2619,8 +2619,9 @@ bootstrap the compiler with profile feedback, use @code{make profiledbootstrap}.
|
||||||
When @samp{make profiledbootstrap} is run, it will first build a @code{stage1}
|
When @samp{make profiledbootstrap} is run, it will first build a @code{stage1}
|
||||||
compiler. This compiler is used to build a @code{stageprofile} compiler
|
compiler. This compiler is used to build a @code{stageprofile} compiler
|
||||||
instrumented to collect execution counts of instruction and branch
|
instrumented to collect execution counts of instruction and branch
|
||||||
probabilities. Then runtime libraries are compiled with profile collected.
|
probabilities. Training run is done by building @code{stagetrain}
|
||||||
Finally a @code{stagefeedback} compiler is built using the information collected.
|
compiler. Finally a @code{stagefeedback} compiler is built
|
||||||
|
using the information collected.
|
||||||
|
|
||||||
Unlike standard bootstrap, several additional restrictions apply. The
|
Unlike standard bootstrap, several additional restrictions apply. The
|
||||||
compiler used to build @code{stage1} needs to support a 64-bit integral type.
|
compiler used to build @code{stage1} needs to support a 64-bit integral type.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue