[Patch, Fortran] Fix OPTIONAL, esp. with polymorphism

Tobias Burnus burnus@net-b.de
Tue Oct 16 18:35:00 GMT 2012


Dominique,

Dominique Dhumieres wrote:
> The previous class_optional_2.f90 runs after your commit, but it takes
> ~168s (so it may have run with the previous patch also, but I was not
> patient enough to see it).

Here, it takes (current version) < 2s to compile and 0.150s to run the 
program. If I look at your profile output, the new class_optional_1.f90 
should be okay as it doesn't get listed with your profile.

The problems seem to occur with elemental calls, which means that 
probably some additional elemental bugs exist, even if they do not show 
up in valgrind.

Can you confirm that the class_optional_1.f90 of the trunk works correctly?

For class_optional_2.f90, we might have to comment some additional 
elemental calls. I wonder what goes wrong there. (But given that other 
elemental calls don't work, I do not wonder that much.)

Tobias

> The culprits are given by the following
> profile:
>
> + 100.0%, start, a.out
> | + 100.0%, main, a.out
> | | + 100.0%, MAIN__, a.out
> | | | + 25.5%, a3ac1.2085, a.out
> | | | |   7.2%, s2elem_t.2178, a.out
> | | | |   7.0%, s2elem.2184, a.out
> | | | + 25.5%, a1a.2151, a.out
> | | | |   15.3%, s2elem_t2.2175, a.out
> | | | + 24.5%, a1a1.2168, a.out
> | | | |   14.2%, s2elem_t.2178, a.out
> | | | + 12.2%, a3a.2097, a.out
> | | | |   7.1%, s2elem_t2.2175, a.out
> | | | + 12.2%, a3a1.2110, a.out
> | | | |   7.1%, s2elem_t.2178, a.out
>



More information about the Gcc-patches mailing list