On Tue, Oct 20, 2015 at 12:01:26PM -0600, Jeff Law wrote: > On 10/20/2015 11:11 AM, Segher Boessenkool wrote: > >On Tue, Oct 20, 2015 at 10:22:53AM -0600, Jeff Law wrote: > >>bz21182 has a testcase that's still helped by local register variables. > > > >I tried it out, and it now is much worse *with* the reg vars than > >without (and -O2 vs. -O3 makes no difference at all). It doesn't look > >to have used the pre-determined allocation at all. The difference at > >expand time is huge already; maybe some things weren't optimised at > >tree level with the register vars? It's a bit big to really look into ;-) > We must be evaluating different things. I review the state of that bug > each release. While the amount of stack slot shuffling has improved over > time it still looked better with the register variables during the gcc-5 > release cycle.
The "#if 0" variant (no reg vars) results in 3597 bytes text, "esp" mentioned 29 times. The "#if 1" version is 3886 bytes, "esp" mentioned 87 times. This is a GCC 6 compiler, a week or so old. Segher