This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Vectorizing HIRLAM 4: complicated access patterns examined.
- From: Paul Brook <paul at codesourcery dot com>
- To: gcc at gcc dot gnu dot org
- Cc: Toon Moene <toon at moene dot indiv dot nluug dot nl>,fortran at gcc dot gnu dot org
- Date: Sun, 23 Oct 2005 18:40:09 +0100
- Subject: Re: Vectorizing HIRLAM 4: complicated access patterns examined.
- References: <E1ETjMS-00011E-37@laptop.moene.indiv.nluug.nl>
> When compiling for 64bit, there is an extra cast:
> In the 64bit case however, the vectorizer dumps show that the
> access-function returned for the index to array b is much more compilcated
> - the dataref analyzer doesn't seem to be able to extract the
> evolution/step in this case, and concludes that the access is
> non-consecutive:
> ...
>
> Ah yes, this was a well-known issue in the days long before vectorization
> ...
>
> In 1997, Richard Henderson hacked g77 to generate 64-bit array indices
> on 64-bit machines to prevent these casts, which inhibited all sorts
> of run-of-the-mill induction variable analysis ...
>
> This is probably quite invasive.
I thought we'd also fixed this in gfortran. Array indices should be 64-bit
(aka gfc_array_index_type) on 64-bit targets.
I guess you could also try -fdefault-integer-8, though that might
break/pessimize other things.
Paul