diff options
author | Mikael Morin <mikael@gcc.gnu.org> | 2010-09-10 10:42:56 +0000 |
---|---|---|
committer | Mikael Morin <mikael@gcc.gnu.org> | 2010-09-10 10:42:56 +0000 |
commit | 4b4c18e273bf452314ab94603eec0c68bb7e6a48 (patch) | |
tree | 9789a80982e3d98ed00cc697f934766122c8f965 /gcc | |
parent | f338755b7cb9135221272a8d666fd2f47f46b054 (diff) | |
download | gcc-4b4c18e273bf452314ab94603eec0c68bb7e6a48.zip gcc-4b4c18e273bf452314ab94603eec0c68bb7e6a48.tar.gz gcc-4b4c18e273bf452314ab94603eec0c68bb7e6a48.tar.bz2 |
trans-array.c (gfc_conv_loop_setup): Access the shape along the real array dimension instead of the scalarizer...
2010-09-10 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_conv_loop_setup): Access the shape along the
real array dimension instead of the scalarizer (loop) dimension.
From-SVN: r164162
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/trans-array.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index daf4cd6..8c70828 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,5 +1,10 @@ 2010-09-10 Mikael Morin <mikael@gcc.gnu.org> + * trans-array.c (gfc_conv_loop_setup): Access the shape along the + real array dimension instead of the scalarizer (loop) dimension. + +2010-09-10 Mikael Morin <mikael@gcc.gnu.org> + * trans-array.c (gfc_conv_resolve_dependencies): Handle same-array transposed references. diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index cd5f438..7483ca8 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -3801,7 +3801,7 @@ gfc_conv_loop_setup (gfc_loopinfo * loop, locus * where) && INTEGER_CST_P (info->stride[dim])) { loop->from[n] = info->start[dim]; - mpz_set (i, cshape[n]); + mpz_set (i, cshape[get_array_ref_dim (info, n)]); mpz_sub_ui (i, i, 1); /* To = from + (size - 1) * stride. */ tmp = gfc_conv_mpz_to_tree (i, gfc_index_integer_kind); |