> On 2017.11.18 at 00:39 +0100, Jan Hubicka wrote: > > Hi, > > this patch fixes remaining IPA profile updating issues I am aware of. With > > this change there is 1 profile mismatch after inlining for tramp3d -Ofast > > and 112 of them in .optimized dump which is about 10 times less than before. > > I did not inspect them all but they seems mostly justified and not very > > important. > > > > First patch adds new profile quality stage when global profile is 0 but not > > known precisely. This is useful for bb partitioning where we do not want to > > move adjusted 0 to cold sections. > > > > Second the patch adds little infrastructure for turning IPA info to local > > info (profile_count::combine_with_ipa_count) and commonizes all places that > > do this kind of operation. > > > > Finally it fixes profile updating bug in ipa-split where entry and return > > blocks got wrong profile. > > > > Bootstrapped/regtested x86_64-linux. I am profilebootstrapping overnight > > and plan to commit tomorrow. > > This fixes the tramp3d compile time regression with LTO/PGO bootstrapped > gcc, that I have reported earlier. > In fact gcc-8 now compiles tramp3d-v4 ~8.5% faster than gcc-7. > > The patch also fixes PR83037 and PR83039.
Thanks, I will commit it soonish (my overnight profiledbootstrap with lto died on disk space and I was on hike). I still plan to check for more profile updating errors and do re-tunning of inliner next, it is good to know there are fewer issues to look at. :) Honza > > -- > Markus