This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch, fortran] [0/5] PR 45648: Inline transpose part 2
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Mikael Morin <mikael dot morin at sfr dot fr>
- Cc: gfortran <fortran at gcc dot gnu dot org>, patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 8 Dec 2010 20:10:30 -0800
- Subject: Re: [Patch, fortran] [0/5] PR 45648: Inline transpose part 2
- References: <20100920222130.27269.49914@gimli.local>
On Mon, Sep 20, 2010 at 3:21 PM, Mikael Morin <mikael.morin@sfr.fr> wrote:
> Hello,
>
> this is the second part of the inline transpose patch, re-enabling the
> non-copying transposed descriptor optimization.
>
> Allmost all happens in gfc_conv_expr_descriptor:
> 1/5: We use the scalarizer's dim array to get the right bounds while creating the descriptor.
> 2/5: This prevents a regression in ret_array_1 where a transposed array was handled as a full array with patch 3/5 alone.
> 3/5: This bypasses the temporary generation in gfc_conv_expr_descriptor in the transpose case.
> 4/5: It is a cleanup I made while working on this, but it is somewhat unrelated, and optional actually.
> 5/5: This forces the creation of a temporary in case there is an alias between actual arguments (corrects a wrong code regression introduced by patch 3/5).
>
> Each patch is regression tested on an older revision and all together on today's trunk.
> I will ask for trunk commital for each one of them.
>
This caused:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46842
--
H.J.