[Patch, fortran] PR66089 fix elemental dependency mishandling

Paul Richard Thomas paul.richard.thomas@gmail.com
Wed Feb 3 13:00:00 GMT 2016


Dear Mikael,

The patch is OK for trunk.

A small niggle: Although present in the original testcase, 'a' is unused.

I am not in a position to find out for myself, right now, but does the
testcase of comment #10 work with this patch?

Thanks for the patch

Paul

On 1 February 2016 at 23:07, Mikael Morin <mikael.morin@sfr.fr> wrote:
> Hello,
>
> this is about the case
>
>    c(:) = elemental_func(c(1), ...)
>
> where as a result of a trunk change, only a reference to c(1) is saved to a
> temporary variable, instead of its value.
>
> The fix tries to save the amount of copying as much as possible by detecting
> the above case.  Technically through the usage of a new field
> needs_temporary.
>
> The patch is a variant of the one that has been on bugzilla for months.
> The main difference is the usage of gfc_expr_is_variable instead of the
> check for expr_type == EXPR_VARIABLE (the former includes pointer-returning
> functions as well).
>
> Regression-tested on x86_64-unknown-linux-gnu.  OK for trunk?
> Mikael
>



-- 
The difference between genius and stupidity is; genius has its limits.

Albert Einstein



More information about the Gcc-patches mailing list