possible gcse failure: not able to eliminate redundant loads
Toon Moene
toon@moene.indiv.nluug.nl
Mon Dec 16 14:44:00 GMT 2002
Richard Henderson wrote:
> On Mon, Dec 16, 2002 at 10:04:01PM +0100, Toon Moene wrote:
>
>>BTW, I wasn't aware it's legal to dereference NULL C pointers.
> It isn't, of course. But that's the whole point. You've
> got code that says
>
> x = (condition ? *p : 0);
>
> i.e. the dereference is protected by a conditional. Thus
> we can't hoist the dereference past the conditional (and
> thence out of the loop that started this thread).
Oh, Fortran is sooooo much easier in this respect than [some other
languages]. Of course you can [syntactically] express "dereferencing" a
invalid pointer in Fortran 90/95. That doesn't mean the resulting
program has to do something meaningful, however [could start WW III and
all that]
--
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)
More information about the Gcc
mailing list