[Bug fortran/92311] Fortran and OpenMP use_device_ptr and OpenACC attach_ptr/dettach_ptr

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Oct 31 20:09:00 GMT 2019


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92311

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |burnus at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Nichols A. Romero from comment #0)
> The bug is against the frontend of the Fortran compiler that handles
> directives in both OpenACC and OpenMP for NVidia GPUs. Here is the
> compile-time error with -fopenmp:
> 
> The error for the OpenMP is shown below:
>    29 |    !$omp target data use_device_ptr(this_bin)
>       |                                             1
> Error: TARGET DATA must contain at least one MAP clause at (1)
> 
> AFAIK, this is not a correct interpretation of the standard. You don't need
> a map clause here, use_device_ptr clause is enough.
> https://www.openmp.org/spec-html/5.0/openmpsu57.html#x83-2580002.12.2

That is what OpenMP 5.0 says, but not what 4.5 said, 4.5 required at least one
map clause, and GCC 9 implements in Fortran only OpenMP 4.0 and some parts of
OpenMP 4.5, not OpenMP 5.0.

CCing Tobias Burnus who has made progress on use_device_ptr/use_device_addr for
GCC 10 in Fortran.


More information about the Gcc-bugs mailing list