gcc/libgomp/testsuite/libgomp.oacc-fortran
Tobias Burnus 12df77ab6d OpenACC/Fortran: permit 'routine' inside PURE
gcc/fortran/ChangeLog

	* parse.c (decode_oacc_directive): Permit 'acc routine' also
	inside pure procedures.
	* openmp.c (gfc_match_oacc_routine): Inside pure procedures
	do not permit gang, worker or vector clauses.

libgomp/ChangeLog:

	* testsuite/libgomp.oacc-fortran/routine-10.f90: New test.

gcc/testsuite/ChangeLog:

	* gfortran.dg/goacc/pure-elemental-procedures-2.f90: New test.

Reviewed-by: Thomas Schwinge <thomas@codesourcery.com>
2020-06-16 20:23:58 +02:00
..
abort-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
abort-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
acc_get_property.f90 Adapt libgomp acc_get_property.f90 test 2020-02-21 15:38:48 +01:00
acc_on_device-1-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
acc_on_device-1-2.f Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
acc_on_device-1-3.f Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
allocatable-1-1.f90
allocatable-1-2.f90
allocatable-array-1.f90
asyncwait-1.f90
asyncwait-2.f90
asyncwait-3.f90
atomic_capture-1.f90 Fix libgomp.oacc-fortran/atomic_capture-1.f90 2020-03-18 16:28:08 +01:00
atomic_rw-1.f90
atomic_update-1.f90
cache-1.f95
class-ptr-param.f95 Fortran polymorphic class-type support for OpenACC 2019-12-20 01:39:49 +00:00
classtypes-1.f95 Don't allow mixed component and non-component accesses for OpenACC/Fortran 2020-01-28 06:00:29 -08:00
classtypes-2.f95 Fortran polymorphic class-type support for OpenACC 2019-12-20 01:39:49 +00:00
clauses-1.f90
collapse-1.f90
collapse-2.f90
collapse-3.f90
collapse-4.f90
collapse-5.f90
collapse-6.f90
collapse-7.f90
collapse-8.f90
combined-directives-1.f90
combined-reduction.f90
common-block-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
common-block-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
common-block-3.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
cublas-fixed.h
data-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
data-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
data-3.f90
data-4-2.f90
data-4.f90
data-5.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
declare-1.f90
declare-2.f90
declare-3.f90
declare-4.f90
declare-5.f90 libgomp/testsuite/*fortran – make 'stop' values unique 2019-12-09 12:21:22 +01:00
deep-copy-1.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
deep-copy-3.f90 Don't allow mixed component and non-component accesses for OpenACC/Fortran 2020-01-28 06:00:29 -08:00
deep-copy-4.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
deep-copy-5.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
deep-copy-6-no_finalize.F90 [OpenACC] XFAIL behavior of over-eager 'finalize' clause 2020-06-04 18:56:37 +02:00
deep-copy-6.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
deep-copy-7.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
deep-copy-8.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
default-1.f90
derived-type-1.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
derivedtype-1.f95 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
derivedtype-2.f95 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
dummy-array.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
error_stop-1.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
error_stop-2.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
error_stop-3.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
firstprivate-1.f90
fortran.exp [gcn] Use 'radeon' for the environment variable 'ACC_DEVICE_TYPE' 2020-04-29 09:24:07 +02:00
gang-static-1.f90
gemm-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
gemm.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
host_data-1.f90
host_data-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
host_data-3.f Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
host_data-4.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
host_data-5.F90 OpenACC – support "if" + "if_present" clauses with "host_data" 2020-01-10 16:08:41 +01:00
if-1.f90
implicit-firstprivate-ref.f90
kernels-acc-loop-reduction-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-acc-loop-reduction.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-collapse-3.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-collapse-4.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-independent.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-loop-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-loop-2.f95
kernels-loop-data-2.f95
kernels-loop-data-enter-exit-2.f95
kernels-loop-data-enter-exit.f95
kernels-loop-data-update.f95
kernels-loop-data.f95
kernels-loop.f95
kernels-map-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-parallel-loop-data-enter-exit.f95 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-gang-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-gang-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-gang-3.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-gang-6.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-vector-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-vector-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-3.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-4.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-5.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-6.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-private-vars-loop-worker-7.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
kernels-reduction-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-2.f Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-3.f Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-4.f90
lib-5.f90
lib-6.f90
lib-7.f90
lib-8.f90
lib-10.f90
lib-12.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-13.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-14.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-15.f90 libgomp/testsuite - use unique numbers with Fortran's 'stop' 2019-11-04 11:01:22 +01:00
lib-16-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-16.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
lib-32-1.f
lib-32-2.f
map-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
mdc-refcount-1-1-1.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
mdc-refcount-1-1-2.F90 [OpenACC] XFAIL behavior of over-eager 'finalize' clause 2020-06-04 18:56:37 +02:00
mdc-refcount-1-2-1.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
mdc-refcount-1-2-2.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
mdc-refcount-1-3-1.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
mdc-refcount-1-3-2.f90 [OpenACC] XFAIL behavior of over-eager 'finalize' clause 2020-06-04 18:56:37 +02:00
mdc-refcount-1-4-1.f90 [OpenACC] Repair/restore 'is_tgt_unmapped' checking 2020-06-04 18:56:37 +02:00
mdc-refcount-1-4-2.f90 [OpenACC] XFAIL behavior of over-eager 'finalize' clause 2020-06-04 18:56:37 +02:00
multidim-slice.f95 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
nested-function-1.f90
nested-function-2.f90
nested-function-3.f90
no_create-1.f90 Add OpenACC 2.6's no_create 2019-12-19 00:10:08 +01:00
no_create-2.f90 Add OpenACC 2.6's no_create 2019-12-19 00:10:08 +01:00
no_create-3.F90 Add OpenACC 2.6's no_create 2019-12-19 00:10:08 +01:00
non-scalar-data.f90
openacc_version-1.f [OpenACC] bump version for 2.6 plus libgomp.texi update 2020-02-03 10:10:37 +01:00
openacc_version-2.f90 [OpenACC] bump version for 2.6 plus libgomp.texi update 2020-02-03 10:10:37 +01:00
optional-cache.f95 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-11 11:40:11 +01:00
optional-data-copyin-by-value.f90 libgomp/testsuite/*fortran – make 'stop' values unique 2019-12-09 12:21:22 +01:00
optional-data-copyin.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-data-copyout.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-data-enter-exit.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-declare.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-firstprivate.f90 libgomp/testsuite/*fortran – make 'stop' values unique 2019-12-09 12:21:22 +01:00
optional-host_data.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-nested-calls.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-private.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-reduction.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-11 11:40:11 +01:00
optional-update-device.f90 [OpenMP/OpenACC/Fortran] Fix mapping of optional (present|absent) arguments 2019-12-06 14:06:53 +01:00
optional-update-host.f90 libgomp/testsuite/*fortran – make 'stop' values unique 2019-12-09 12:21:22 +01:00
par-reduction-2-1.f
par-reduction-2-2.f
parallel-dims-aux.c Add OpenACC 2.6 `serial' construct support 2019-11-12 08:45:35 +00:00
parallel-dims.f90 Add OpenACC 2.6 `serial' construct support 2019-11-12 08:45:35 +00:00
parallel-loop-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
parallel-reduction.f90
pointer-align-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
pr68813.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
pr70289.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
pr70643.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
pr81352.f90
pr83920.f90
pr84028.f90
pr84955.f90
print-1-nvptx.f90 Fix 'libgomp.fortran/target-print-1.f90', 'libgomp.oacc-fortran/print-1.f90' for offload target nvptx 2019-11-27 18:50:55 +01:00
print-1.f90 Fix 'libgomp.fortran/target-print-1.f90', 'libgomp.oacc-fortran/print-1.f90' for offload target nvptx 2019-11-27 18:50:55 +01:00
private-variables.f90
pset-1.f90 libgomp/testsuite - use unique numbers with Fortran's 'stop' 2019-11-04 11:01:22 +01:00
reduction-1.f90
reduction-2.f90
reduction-3.f90
reduction-4.f90
reduction-5.f90
reduction-6.f90
reduction-7.f90
reduction-8.f90
reference-reductions.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
routine-1.f90
routine-2.f90
routine-3.f90
routine-4.f90
routine-5.f90
routine-7.f90
routine-9.f90
routine-10.f90 OpenACC/Fortran: permit 'routine' inside PURE 2020-06-16 20:23:58 +02:00
stop-1.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
stop-2.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
stop-3.f 'libgomp.oacc-fortran/{error_,}stop-{1,2,3}.f': initialize before the checkpoint 2020-06-04 18:56:36 +02:00
subarrays-1.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
subarrays-2.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00
update-1.f90
update-2.f90 OpenACC 2.6 deep copy: Fortran execution tests 2019-12-20 01:39:46 +00:00
vector-routine.f90 Fortran] OpenACC – libgomp/testsuite – use 'stop' and 'dg-do run' 2019-10-28 08:39:26 +01:00