aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-array.c
diff options
context:
space:
mode:
authorMikael Morin <mikael.morin@sfr.fr>2011-10-07 22:22:50 +0200
committerMikael Morin <mikael@gcc.gnu.org>2011-10-07 20:22:50 +0000
commit677e2daebff2bde08d013511f34db6a56ab5f774 (patch)
treee7fd839aad82953a1db2bd762d2d78325b485769 /gcc/fortran/trans-array.c
parentc6d741b85b24960cf70afda7a3afddd57e3b4ef5 (diff)
downloadgcc-677e2daebff2bde08d013511f34db6a56ab5f774.zip
gcc-677e2daebff2bde08d013511f34db6a56ab5f774.tar.gz
gcc-677e2daebff2bde08d013511f34db6a56ab5f774.tar.bz2
trans.h (gfc_ss_info): Remove codimen field.
* trans.h (gfc_ss_info): Remove codimen field. * trans-array.c (gfc_get_array_ss): Don't set codimen field. (gfc_trans_create_temp_array): Don't set descriptor's cobounds. (gfc_trans_constant_array_constructor): Update loop upper limit. (gfc_conv_ss_startstride): Don't set codimen field. Don't get descriptor's cobounds. (gfc_walk_variable_expr): Update dimension index. * trans-intrinsic.c (trans_this_image, trans_image_index, conv_intrinsic_cobound): Don't set codimen field From-SVN: r179690
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r--gcc/fortran/trans-array.c22
1 files changed, 3 insertions, 19 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index 0a9d281..fa05d2b 100644
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -526,7 +526,6 @@ gfc_get_array_ss (gfc_ss *next, gfc_expr *expr, int dimen, gfc_ss_type type)
ss->expr = expr;
info = &ss->data.info;
info->dimen = dimen;
- info->codimen = 0;
for (i = 0; i < info->dimen; i++)
info->dim[i] = i;
@@ -973,13 +972,6 @@ gfc_trans_create_temp_array (stmtblock_t * pre, stmtblock_t * post,
size, tmp);
size = gfc_evaluate_now (size, pre);
}
- for (n = info->dimen; n < info->dimen + info->codimen; n++)
- {
- gfc_conv_descriptor_lbound_set (pre, desc, gfc_rank_cst[n],
- gfc_index_zero_node);
- if (n < info->dimen + info->codimen - 1)
- gfc_conv_descriptor_ubound_set (pre, desc, gfc_rank_cst[n], loop->to[n]);
- }
/* Get the size of the array. */
@@ -1872,7 +1864,7 @@ gfc_trans_constant_array_constructor (gfc_loopinfo * loop,
info->data = gfc_build_addr_expr (NULL_TREE, tmp);
info->offset = gfc_index_zero_node;
- for (i = 0; i < info->dimen + info->codimen; i++)
+ for (i = 0; i < info->dimen; i++)
{
info->delta[i] = gfc_index_zero_node;
info->start[i] = gfc_index_zero_node;
@@ -3330,12 +3322,6 @@ done:
for (n = 0; n < ss->data.info.dimen; n++)
gfc_conv_section_startstride (loop, ss, ss->data.info.dim[n],
false, false);
- for (n = ss->data.info.dimen;
- n < ss->data.info.dimen + ss->data.info.codimen; n++)
- gfc_conv_section_startstride (loop, ss, ss->data.info.dim[n], true,
- n == ss->data.info.dimen
- + ss->data.info.codimen -1);
-
break;
case GFC_SS_INTRINSIC:
@@ -7690,8 +7676,7 @@ gfc_walk_variable_expr (gfc_ss * ss, gfc_expr * expr)
case DIMEN_RANGE:
/* We don't add anything for sections, just remember this
dimension for later. */
- newss->data.info.dim[newss->data.info.dimen
- + newss->data.info.codimen] = n;
+ newss->data.info.dim[newss->data.info.dimen] = n;
if (n < ar->dimen)
newss->data.info.dimen++;
break;
@@ -7703,8 +7688,7 @@ gfc_walk_variable_expr (gfc_ss * ss, gfc_expr * expr)
1, GFC_SS_VECTOR);
indexss->loop_chain = gfc_ss_terminator;
newss->data.info.subscript[n] = indexss;
- newss->data.info.dim[newss->data.info.dimen
- + newss->data.info.codimen] = n;
+ newss->data.info.dim[newss->data.info.dimen] = n;
if (n < ar->dimen)
newss->data.info.dimen++;
break;