This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Bug fortran/43072] unneeded temporary (s=s+f(a))
- From: Tobias Burnus <burnus at net-b dot de>
- To: Paul Richard Thomas <paul dot richard dot thomas at gmail dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>, fortran at gcc dot gnu dot org
- Date: Sun, 21 Feb 2010 23:01:00 +0100
- Subject: Re: [Bug fortran/43072] unneeded temporary (s=s+f(a))
- References: <bug-43072-6642@http.gcc.gnu.org/bugzilla/> <20100221104358.17655.qmail@sourceware.org> <339c37f21002211125n70ecec9dnc041920b3aeee60d@mail.gmail.com>
Paul Richard Thomas wrote:
> The attached patch cleans up many of the remaining issues with excess
> temporaries. It is a simple extension of the dependency checking to
> ensure that all trailing element references are considered for
> determining if an array reference is contiguous.
>
> Bootstrapped and regtested on FC9/x86_64 - OK for trunk?
>
OK and thanks for the patch! Do you plan to work on the string issue? If
not, can you fill a PR and refer to gfortran.dg/internal_pack_9.f90,
which contains a test case?
Tobias
> Cheers and thanks to Tobias for the testcases.
>
> Paul
>
> 2010-02-21 Paul Thomas <pault@gcc.gnu.org>
>
> PR fortran/43072
> * dependency.c (gfc_full_array_ref_p): Check for contiguous by
> checking the rest of the dimensions for elements.
>
> 2010-02-21 Paul Thomas <pault@gcc.gnu.org>
>
> PR fortran/43072
> * gfortran.dg/internal_pack_6.f90: Number of 'packs' now zero.
> * gfortran.dg/internal_pack_9.f90: New test.
>