Re: -fargument-noalias-global question

2009-01-03 Thread Toon Moene
Steve Kargl wrote: I have no idea what you and Toon are discussing. These options are not used in the gfortran frontend and have never been used. Looking at the g77 manual suggests that -fargument-noalias-global is a holdover from g77, and as such it should be removed. It is the Fortran pro

Re: -fargument-noalias-global question

2009-01-03 Thread Richard Guenther
On Sat, 3 Jan 2009, Steve Kargl wrote: > On Sat, Jan 03, 2009 at 08:11:14PM +0100, Richard Guenther wrote: > > On Sat, 3 Jan 2009, Toon Moene wrote: > > > > > [ Happy New Year first of all - hope we don't have too many more of them > > > ... Hey, you can recognize a Jimi Hendrix fan, don't you

Re: -fargument-noalias-global question

2009-01-03 Thread Steve Kargl
On Sat, Jan 03, 2009 at 08:11:14PM +0100, Richard Guenther wrote: > On Sat, 3 Jan 2009, Toon Moene wrote: > > > [ Happy New Year first of all - hope we don't have too many more of them > > ... Hey, you can recognize a Jimi Hendrix fan, don't you ] > > ;) > > > Richard Guenther wrote: > > > >

Re: -fargument-noalias-global question

2009-01-03 Thread Toon Moene
Richard Guenther wrote: I btw installed that (wrong?) patch based on the answers I got. My apologies - see above. At least the wrong patch makes foo see that the array data does not alias. Maybe we need to fix the specification? If we internalize those two optimization flags to the Fortr

Re: -fargument-noalias-global question

2009-01-03 Thread Richard Guenther
On Sat, 3 Jan 2009, Toon Moene wrote: > Richard Guenther wrote: > > > On Sat, 3 Jan 2009, Toon Moene wrote: > > > > The pointers used by the Fortran Front End to implement Fortran's argument > > > association *cannot* point to anything else than the storage of those > > > arguments, because they

Re: -fargument-noalias-global question

2009-01-03 Thread Toon Moene
Richard Guenther wrote: On Sat, 3 Jan 2009, Toon Moene wrote: The pointers used by the Fortran Front End to implement Fortran's argument association *cannot* point to anything else than the storage of those arguments, because they (those pointers) are generated by the compiler and cannot poin

Re: -fargument-noalias-global question

2009-01-03 Thread Toon Moene
Toon Moene wrote: Richard Guenther wrote: consider void bar() { int i; p = &i; foo (&i); } does that call to foo invoke undefined behavior if built with -fargument-noalias-global? It shouldn't, as 'int i' isn't global. Ugh, on second thoughts, this isn't possible in Fortran, so I

Re: -fargument-noalias-global question

2009-01-03 Thread Richard Guenther
On Sat, 3 Jan 2009, Toon Moene wrote: > [ Happy New Year first of all - hope we don't have too many more of them > ... Hey, you can recognize a Jimi Hendrix fan, don't you ] ;) > Richard Guenther wrote: > > > Actually I have two questions. First, what is the difference between > > -fargument

Re: -fargument-noalias-global question

2009-01-03 Thread Toon Moene
[ Happy New Year first of all - hope we don't have too many more of them ... Hey, you can recognize a Jimi Hendrix fan, don't you ] Richard Guenther wrote: Actually I have two questions. First, what is the difference between -fargument-noalias-global and -fargument-noalias-anything (please p

-fargument-noalias-global question

2009-01-03 Thread Richard Guenther
Actually I have two questions. First, what is the difference between -fargument-noalias-global and -fargument-noalias-anything (please provide an example, not cite documentation ;)) Second question. Does "global memory" include memory that escaped? Thus, with -fargument-noalias-global: int *p;