A prototype loop reverser for the scalarizer

Dorit Nuzman DORIT@il.ibm.com
Wed Oct 18 13:45:00 GMT 2006


Toon Moene <toon@moene.indiv.nluug.nl> wrote on 15/10/2006 15:53:31:

> Paul Thomas wrote:
>
> > Daniel and Steven,
> >
> > Once again, thanks for the illuminating correspondence; you can put the

> > daggers away now!
>
> Might it be useful to discuss front end versus back end optimizations at
> the next GCC Summit.  I'm willing to write a paper about it.
>
> My pet peeve (front end doesn't give necessary info to middle end):
>
>        DIMENSION A(100)
>        READ, A
>        PRINT*, SUM(A)
>        END
>
> This won't get vectorized, because, by the time the vectorizer sees this
> code, it already has been scalarized into a loop with a definite order
> of summation, contrary to the coder's intent ;-)
>

(unless you use -funsafe-math-optimizations; hopefully in the near future
the newly proposed -fassociative-math  flag would suffice to allow
vectorizing reductions of floats -
http://gcc.gnu.org/ml/gcc-patches/2006-10/msg00110.html)

dorit

> Kind regards,
>
> --
> Toon Moene - e-mail: toon@moene.indiv.nluug.nl - phone: +31 346 214290
> Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
> A maintainer of GNU Fortran: http://gcc.gnu.org/fortran/
> Who's working on GNU Fortran:
> http://gcc.gnu.org/ml/gcc/2006-01/msg00000.html



More information about the Fortran mailing list