This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [testcase] simplify_binary_operation test (was Re: -freduce-all-givs and fortran)


Richard Henderson wrote:

> > Maybe it's instructive to attach the e-mail that got me into this (sent
> > to gcc2@cygnus.com d.d. 22nd of November 1995).
> 
> This isn't particularly instructive, actually.  I've done a lot
> of work since then in express_from and combine_givs to address
> some of the issues wrt invariants brought up in this message.

Yes, it's useful to drop -frerun-loop-opt, as far as I can see, because
of these changes (if you're interested, I can send further e-mails where
I deducted that rerunning loop optimisation twice would rid me of the
offset-is-1-instead-of-0 problem).

> So, in my mind, the question is where are we _still_ failing?  I
> have some examples that go wrong for Sparc (due to existance of
> reg+reg but not reg+reg+disp addressing), but that's a different
> problem.

We fail as soon as the current heuristic tells the compiler *not* to
reduce givs while the reduction of *all* givs will actually lead to
fewer integer registers used than *not* reducing all givs.

> I see some additional work that could happen in express_from that
> would create better code in some cases, but those cases weren't
> seen by -freduce-all-givs either.

That's true, but orthogonal to the issue above.

-- 
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
Join GNU Fortran 95: http://g95.sourceforge.net/ (under construction)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]