trans-array.c (gfc_trans_create_temp_array): Assert loop dimension and info dimension are the same.
2010-09-09 Mikael Morin <mikael@gcc.gnu.org> * trans-array.c (gfc_trans_create_temp_array): Assert loop dimension and info dimension are the same. Loop over loop dimension. * trans-stmt.c (gfc_conv_elemental_dependencies): Set loop dimension Co-Authored-By: Janus Weil <janus@gcc.gnu.org> From-SVN: r164090
This commit is contained in:
parent
4b6133ea8b
commit
ea5e803f5d
|
@ -1,3 +1,9 @@
|
|||
2010-09-09 Mikael Morin <mikael@gcc.gnu.org>
|
||||
|
||||
* trans-array.c (gfc_trans_create_temp_array): Assert loop dimension
|
||||
and info dimension are the same. Loop over loop dimension.
|
||||
* trans-stmt.c (gfc_conv_elemental_dependencies): Set loop dimension
|
||||
|
||||
2010-09-09 Mikael Morin <mikael@gcc.gnu.org>
|
||||
|
||||
* trans-array.c (gfc_conv_array_transpose): Change generated descriptor
|
||||
|
|
|
@ -742,6 +742,7 @@ gfc_trans_create_temp_array (stmtblock_t * pre, stmtblock_t * post,
|
|||
int dim;
|
||||
|
||||
gcc_assert (info->dimen > 0);
|
||||
gcc_assert (loop->dimen == info->dimen);
|
||||
|
||||
if (gfc_option.warn_array_temp && where)
|
||||
gfc_warning ("Creating array temporary at %L", where);
|
||||
|
@ -795,14 +796,14 @@ gfc_trans_create_temp_array (stmtblock_t * pre, stmtblock_t * post,
|
|||
|
||||
/* If there is at least one null loop->to[n], it is a callee allocated
|
||||
array. */
|
||||
for (n = 0; n < info->dimen; n++)
|
||||
for (n = 0; n < loop->dimen; n++)
|
||||
if (loop->to[n] == NULL_TREE)
|
||||
{
|
||||
size = NULL_TREE;
|
||||
break;
|
||||
}
|
||||
|
||||
for (n = 0; n < info->dimen; n++)
|
||||
for (n = 0; n < loop->dimen; n++)
|
||||
{
|
||||
dim = info->dim[n];
|
||||
|
||||
|
|
|
@ -240,6 +240,7 @@ gfc_conv_elemental_dependencies (gfc_se * se, gfc_se * loopse,
|
|||
/* Make a local loopinfo for the temporary creation, so that
|
||||
none of the other ss->info's have to be renormalized. */
|
||||
gfc_init_loopinfo (&tmp_loop);
|
||||
tmp_loop.dimen = info->dimen;
|
||||
for (n = 0; n < info->dimen; n++)
|
||||
{
|
||||
tmp_loop.to[n] = loopse->loop->to[n];
|
||||
|
|
Loading…
Reference in New Issue