This is the mail archive of the gcc@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]
Other format: [Raw text]

Re: possible gcse failure: not able to eliminate redundant loads


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)


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