[Patch, fortran] PR40472 - Simplification of spread intrinsic takes a long time
Paul Richard Thomas
paul.richard.thomas@gmail.com
Sun Jun 21 07:31:00 GMT 2009
Dear Daniel,
On Sun, Jun 21, 2009 at 12:57 AM, Daniel Franke<franke.daniel@gmail.com> wrote:
> On Sunday 21 June 2009 00:39:05 Paul Richard Thomas wrote:
>> This is another obvious one - at the moment, SPREAD has the ability to
>> simplify an array to any size. This is clearly not right. As a
>> simplifying (excuse the pun) assumption, I have supposed that
>> gfc_simplify_spread should not try to emit an array of larger than
>> gfc_option.flag_max_array_constructor.
>
> Besides the compile-time issue, I don't see why this is "clearly not right"?!
SPREAD is the only intrinsic that increases the size of an array.
Regardless of the other problems with curtailing the overheads of
simplification of array constructors, this needed to be made
consistent at very least by applying the same limit.
> Also, I'm quite sure that this not only applies to SPREAD, but very likely to
> all other F2003 simplifiers implemented in 4.5.
As I say, the others will respect the array constructor limit.
>
> As noted in the PR, I strongly believe that the linear constructor list needs
> to go more sooner than later.
That's as maybe but this is an additional wrinkle!
>
> That said, ok as a workaround for trunk for now - but not for 4.4 (there is no
> such simplifier for spread ;)
Duuuh! I never looked :-)
Good luck on the splay tree implementation!
Paul
More information about the Fortran
mailing list