diff options
author | Jakub Jelinek <jakub@redhat.com> | 2005-05-17 08:31:51 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2005-05-17 08:31:51 +0200 |
commit | 8de1f441bb72de63213667ce2af8152e3d2ce801 (patch) | |
tree | c579da660c53114a5f26494b5bf7b0ce3668ce55 /gcc/varasm.c | |
parent | 2b5bf0e27e0b77a48f0f8a046cb6a56280137054 (diff) | |
download | gcc-8de1f441bb72de63213667ce2af8152e3d2ce801.zip gcc-8de1f441bb72de63213667ce2af8152e3d2ce801.tar.gz gcc-8de1f441bb72de63213667ce2af8152e3d2ce801.tar.bz2 |
re PR fortran/15080 (Forall bounds not calculated correctly (forall_3.f90))
PR fortran/15080
* trans-stmt.c (generate_loop_for_temp_to_lhs): Remove SIZE and COUNT2
arguments. If LSS is gfc_ss_terminator, increment COUNT1 by 1, instead
of incrementing COUNT2 and using COUNT1+COUNT2 increment COUNT1 and use
just that as index.
(generate_loop_for_rhs_to_temp): Likewise.
(compute_overall_iter_number): Add INNER_SIZE_BODY argument.
It non-NULL, add it to body.
(allocate_temp_for_forall_nest_1): New function, split from
allocate_temp_for_forall_nest.
(allocate_temp_for_forall_nest): Add INNER_SIZE_BODY argument,
propagate it down to compute_overall_iter_number. Use
allocate_temp_for_forall_nest_1.
(gfc_trans_assign_need_temp): Remove COUNT2. Call
compute_inner_temp_size into a new stmtblock_t. Adjust calls to
allocate_temp_for_forall_nest, generate_loop_for_rhs_to_temp
and generate_loop_for_temp_to_lhs.
(gfc_trans_pointer_assign_need_temp): Adjust calls to
allocate_temp_for_forall_nest.
(gfc_evaluate_where_mask): Call compute_inner_temp_size into a new
stmtblock_t. Call compute_overall_iter_number just once, then
allocate_temp_for_forall_nest_1 twice with the same size.
Initialize mask indexes if nested_forall_info != NULL.
(gfc_trans_where_2): Initialize mask indexes before calling
gfc_trans_nested_forall_loop.
* gfortran.fortran-torture/execute/forall_3.f90: Remove comment
about the test failing.
* gfortran.fortran-torture/execute/where_7.f90: New test.
* gfortran.fortran-torture/execute/where_8.f90: New test.
From-SVN: r99812
Diffstat (limited to 'gcc/varasm.c')
0 files changed, 0 insertions, 0 deletions