On 6/5/19 3:49 PM, Richard Biener wrote: > On Tue, Jun 4, 2019 at 10:44 AM Martin Liska <mli...@suse.cz> wrote: >> >> Hi. >> >> It's becoming more common that a training run happens in parallel >> environment. >> That can lead to a not reproducible builds caused by different order of >> merging >> of .gcda files. So that I'm suggesting to store up to 4 values for >> HIST_TYPE_SINGLE_VALUE >> and HIST_TYPE_INDIR_CALL on disk. If the capacity is exceeded the whole >> counter is >> marked as unstable (not reproducible). >> >> Patch can bootstrap on x86_64-linux-gnu and survives regression tests. >> >> Ready to be installed? > > Thanks for working on this, I hope Honza can review and approve it.
Yes, he'll do it soon. > Does this > solve the issue of profiledbootstrap results being not reproducible? (if you > fix genchecksum to not generate different checksums) Hopefully, but it needs to be tested. > > I suppose this would also apply to a GCC 9 tree? Yes, it applies smoothly. Would you like to see it backported to 9.2? Martin > > Thanks, > Richard. > >> Thanks, >> Martin >> >> marxin (4): >> Remove indirect call top N counter type. >> Implement N disk counters for single value and indirect call counters. >> Dump histograms only if present. >> Update a bit dump format. >> >> gcc/doc/invoke.texi | 3 - >> gcc/gcov-counter.def | 3 - >> gcc/gcov-io.h | 9 +- >> gcc/ipa-profile.c | 13 ++- >> gcc/params.def | 8 -- >> gcc/profile.c | 1 - >> gcc/tree-profile.c | 23 +--- >> gcc/value-prof.c | 224 ++++++++++++++++---------------------- >> gcc/value-prof.h | 4 +- >> libgcc/Makefile.in | 10 +- >> libgcc/libgcov-driver.c | 80 -------------- >> libgcc/libgcov-merge.c | 139 +++++++++-------------- >> libgcc/libgcov-profiler.c | 176 ++---------------------------- >> libgcc/libgcov-util.c | 19 ---- >> libgcc/libgcov.h | 12 +- >> 15 files changed, 179 insertions(+), 545 deletions(-) >> >> -- >> 2.21.0 >>