[committed] Improve is-coindexed check for OpenACC/OpenMP (was: [PATCH 10/13] OpenACC 2.6 deep copy: Fortran front-end parts)
Tobias Burnus
tobias@codesourcery.com
Fri Dec 20 11:23:00 GMT 2019
Julian has committed that patch as Rev. 279628.
Follow up regarding coarrays:
I had proposed to use 'gfc_is_coindexed' instead of only checking the
rightmost array reference. However, it turned out that this check comes
too late. (As did the check before Julian's patch.)
Namely, when checking in resolve_omp_clauses the gfc_resolve_expr seems
to have called â and this changes the expression. Example: "A[2]" will
be converted into a function call "_F.caf_get[[A]]" with -fcoarray=lib â
or to "A" with -fcoarray=single.
Hence, I moved the coindexed check directly after parsing and added a
test case for it. Coarrays by itself should be fine as they act as
normal local variables â just that they are allocated by
_gfortran_caf_register instead of malloc, stack or static allocation.
Committed as Rev. 279637.
Cheers,
Tobias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: committed.diff
Type: text/x-patch
Size: 3162 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20191220/e011dd6e/attachment.bin>
More information about the Fortran
mailing list