Commit b2028d0b by Mikael Morin

trans-array.c (gfc_conv_loop_setup, [...]): Move specloop arrays clearing from…

trans-array.c (gfc_conv_loop_setup, [...]): Move specloop arrays clearing from the former to the latter.

	* trans-array.c (gfc_conv_loop_setup, gfc_trans_create_temp_array):
	Move specloop arrays clearing from the former to the latter.

From-SVN: r180881
parent 1d9370e9
2011-11-03 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_conv_loop_setup, gfc_trans_create_temp_array):
Move specloop arrays clearing from the former to the latter.
2011-11-03 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (set_loop_bounds): Separate the beginning of
gfc_conv_loop_setup into a function of its own.
(set_delta): Separate the end of gfc_conv_loop_setup into a function
......
......@@ -902,6 +902,11 @@ gfc_trans_create_temp_array (stmtblock_t * pre, stmtblock_t * post,
pre);
loop->from[n] = gfc_index_zero_node;
/* We have just changed the loop bounds, we must clear the
corresponding specloop, so that delta calculation is not skipped
later in set_delta. */
loop->specloop[n] = NULL;
/* We are constructing the temporary's descriptor based on the loop
dimensions. As the dimensions may be accessed in arbitrary order
(think of transpose) the size taken from the n'th loop may not map
......@@ -4136,7 +4141,6 @@ gfc_conv_loop_setup (gfc_loopinfo * loop, locus * where)
{
gfc_ss *tmp_ss;
tree tmp;
int n;
set_loop_bounds (loop);
......@@ -4172,9 +4176,6 @@ gfc_conv_loop_setup (gfc_loopinfo * loop, locus * where)
false, true, false, where);
}
for (n = 0; n < loop->temp_dim; n++)
loop->specloop[loop->order[n]] = NULL;
/* For array parameters we don't have loop variables, so don't calculate the
translations. */
if (loop->array_parameter)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment