https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35545
--- Comment #19 from davidxl <xinliangli at gmail dot com> --- (In reply to Jan Hubicka from comment #18) > > WE can try some internal benchmarks with this change too. > > That would be very welcome. Tracer used to be quite useful pass in old days, > doing 1.6% on -O3+FDO SPECint (for 1.4% code size cost) that put it very > close > to the inliner (1.8%) that however needed 12.9% of code size. > > http://www.ucw.cz/~hubicka/papers/amd64/node4.html (see aggressive > optimization table) > > I do not think it was ever resonably returned for GIMPLE. Martin, do you have > any current scores? Part of benefits came from lack of global optimizers, but > I think tail duplication has a potential in modern compiler, too. > > Perhaps we should try to do that and given that we now have tail merging > pass, > consider getting it useful without FDO, too. > > Honza I saw small improvement across most of the benchmarks with this change on sandybridge machines with FDO. The geomean improvement is about 0.3%. The baseline compiler is Google gcc-49 compiler, and the test compiler is Google gcc-49 with the patch.