Cesar Philippidis wrote:
This patch adds support for OpenACC 2.0a, with some omissions, to the
fortran front end. It only contains the fortran changes from
gomp-4_0-branch, therefore the middle end and runtime changes are a
necessary prerequisite for this patch.
I'd assume that one could commit the parser changes before the
middle-end changes, but probably waiting for the middle-end changes is
simpler. Any idea when the FE-required ME changes will be ready?
I'll post a separate patch with the fortran tests later. If anyone wants to
test this patch, please use gomp-4_0-branch instead. You don't need a CUDA
accelerator to use
OpenACC, and some of the runtime tests will fail because that branch
doesn't include the nvptx backend.
Now that the first series of PTX target patches have been committed: I
assume it is still true that nvptx doesn't work because the libgomp bits
aren't in yes, isn't it?
Notable OpenACC omissions include support for the device_type clause and
the atomic directive. Hopefully we can get those in before 5.0 is released.
Cache seems to be also missing, if I read
https://gcc.gnu.org/ml/fortran/2014-11/msg00025.html correctly. (Well,
the patch itself prints sorry for it.)
All of theses changes have been approved for gomp-4_0-branch. Is this
patch OK for mainline trunk (after the runtime and middle end go in)?
Just for completeness, there are two TODO and one FIXME in the patch.
gcc/fortran/gfortran.texi:
-include OpenMP, Cray-style pointers, and several Fortran 2003 and Fortran
+include OpenACC, OpenMP, Cray-style pointers, and several Fortran 2003
+and Fortran
2008 features, including TR 15581. However, it is still under
development and has a few remaining rough edges.
Not important, but I had reflown the lines after the linebreak.
I have now browsed throughg the patch and it looks good to me. Thanks to
everyone involved for working on this.
Tobias