2010-09-10 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_conv_resolve_dependencies): Handle same-array
transposed references.
From-SVN: r164158
+2010-09-10 Mikael Morin <mikael@gcc.gnu.org>
+
+ * trans-array.c (gfc_conv_resolve_dependencies): Handle same-array
+ transposed references.
+
2010-09-10 Tobias Burnus <burnus@net-b.de>
PR fortran/45186
gfc_ref *lref;
gfc_ref *rref;
int nDepend = 0;
+ int i, j;
loop->temp_ss = NULL;
if (nDepend == 1)
break;
+
+ for (i = 0; i < dest->data.info.dimen; i++)
+ for (j = 0; j < ss->data.info.dimen; j++)
+ if (i != j
+ && dest->data.info.dim[i] == ss->data.info.dim[j])
+ {
+ /* If we don't access array elements in the same order,
+ there is a dependency. */
+ nDepend = 1;
+ goto temporary;
+ }
#if 0
/* TODO : loop shifting. */
if (nDepend == 1)
}
}
+temporary:
+
if (nDepend == 1)
{
tree base_type = gfc_typenode_for_spec (&dest->expr->ts);