Implementing OpenACC's Fortran module

Jakub Jelinek jakub@redhat.com
Tue May 23 11:17:00 GMT 2017


On Mon, May 22, 2017 at 05:23:25PM +0200, Thomas Schwinge wrote:
> --- libgomp/openacc_lib.h
> +++ libgomp/openacc_lib.h
> @@ -191,23 +191,9 @@
>        end interface
>  
>        interface acc_pcopyin
> -        subroutine acc_pcopyin_32_h (a, len)
> -          use iso_c_binding, only: c_int32_t
> -          !GCC$ ATTRIBUTES NO_ARG_CHECK :: a
> -          type (*), dimension (*) :: a
> -          integer (c_int32_t) len
> -        end subroutine
> -
> -        subroutine acc_pcopyin_64_h (a, len)
> -          use iso_c_binding, only: c_int64_t
> -          !GCC$ ATTRIBUTES NO_ARG_CHECK :: a
> -          type (*), dimension (*) :: a
> -          integer (c_int64_t) len
> -        end subroutine
> -
> -        subroutine acc_pcopyin_array_h (a)
> -          type (*), dimension (..), contiguous :: a
> -          end subroutine
> +        procedure :: acc_present_or_copyin_32_h
> +        procedure :: acc_present_or_copyin_64_h
> +        procedure :: acc_present_or_copyin_array_h
>        end interface

My Fortran knowledge is limited, does this actually provide
the interfaces of those procedures (what arguments they have
and other their properties), or shall it instead use
subroutine acc_present_or_copyin_32_h (a, len)
  ...
end subroutine
etc. there?

	Jakub



More information about the Gcc-patches mailing list