[RFC] Remove -freorder-blocks-and-partition
Jan Hubicka
hubicka@ucw.cz
Thu Aug 4 13:32:00 GMT 2011
> On Wed, Aug 3, 2011 at 2:06 PM, Jan Hubicka <hubicka@ucw.cz> wrote:
> >> In xalancbmk, with the partition option, most of object files have
> >> nonzero size cold sections generated. The text size of the binary is
> >> increased to 3572728 bytes from 3466790 bytes. Â Profiling the program
> >> using the training input shows the following differences. With
> >> partitioning, number of executed branch instructions slightly
> >> increases, but itlb misses and icache load misses are significantly
> >> lower compared with the binary without partitioning.
> >>
> >>
> >> David
> >>
> >> With partition:
> >> -----------------
> >> Â Â 53654937239 Â branches
> >> Â Â Â 306751458 Â L1-icache-load-misses
> >> Â Â Â Â 8146112 Â iTLB-load-misses
> >
> > Note that I was also planning for some time to introduce notion of provably cold
> > stuff into our branch prediction heurstics. I.e. code leading to aborts, eh etc
>
> no-return attribute is looked at by static profile estimation pass. Is
> the attribute (definitely not returning) properly propagated to the
> callers (wrappers of exit, etc)?
It is, at local pure const and IPA pure const. Catch with IPA pure const is
that profile is computed at tha time and it is not updated afterwards, so when
discovered late it does not affect static profile estimates (yet), only gets
cfg/codegen better.
Honza
>
> David
>
> > that can be then offlined even w/o profile feedback and could perhaps help
> > to large apps.
> > (also the whole pass should be more effective with larger testcases, SPEC2k6 is slowly
> > becoming a small one)
> >
> > Honza
> >
More information about the Gcc
mailing list