gcc/libgomp
Julian Brown d28f3da11d openacc: Fix lowering for derived-type mappings through array elements
This patch fixes lowering of derived-type mappings which select elements
of arrays of derived types, and similar. These would previously lead
to ICEs.

With this change, OpenACC directives can pass through constructs that
are no longer recognized by the gimplifier, hence alterations are needed
there also.

gcc/fortran/
	* trans-openmp.c (gfc_trans_omp_clauses): Handle element selection
	for arrays of derived types.

gcc/
	* gimplify.c (gimplify_scan_omp_clauses): Handle ATTACH_DETACH
	for non-decls.

gcc/testsuite/
	* gfortran.dg/goacc/array-with-dt-1.f90: New test.
	* gfortran.dg/goacc/array-with-dt-3.f90: Likewise.
	* gfortran.dg/goacc/array-with-dt-4.f90: Likewise.
	* gfortran.dg/goacc/array-with-dt-5.f90: Likewise.
	* gfortran.dg/goacc/derived-chartypes-1.f90: Re-enable test.
	* gfortran.dg/goacc/derived-chartypes-2.f90: Likewise.
	* gfortran.dg/goacc/derived-classtypes-1.f95: Uncomment
	previously-broken directives.

libgomp/
	* testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
	* testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
2021-02-17 06:13:55 -08:00
..
config libgomp/i386: Revert the type of syscall wrappers output back to long. 2021-02-12 00:07:56 +01:00
plugin amdgcn: Add gfx908 support 2021-02-03 14:25:33 +00:00
testsuite openacc: Fix lowering for derived-type mappings through array elements 2021-02-17 06:13:55 -08:00
.gitattributes
acc_prof.h Update copyright years. 2021-01-04 10:26:59 +01:00
acinclude.m4
aclocal.m4 libgomp: Regenerate configure files with automake 1.15.1 2020-10-02 12:08:47 +02:00
affinity-fmt.c Update copyright years. 2021-01-04 10:26:59 +01:00
affinity.c Update copyright years. 2021-01-04 10:26:59 +01:00
alloc.c Update copyright years. 2021-01-04 10:26:59 +01:00
allocator.c Update copyright years. 2021-01-04 10:26:59 +01:00
atomic.c Update copyright years. 2021-01-04 10:26:59 +01:00
barrier.c Update copyright years. 2021-01-04 10:26:59 +01:00
ChangeLog Daily bump. 2021-02-12 00:16:25 +00:00
ChangeLog.graphite
config.h.in
configure [nvptx libgomp plugin] Build only in supported configurations 2021-01-14 18:48:00 +01:00
configure.ac
configure.tgt libgomp: enable linux-futex on riscv64 2021-01-18 15:13:48 +01:00
critical.c Update copyright years. 2021-01-04 10:26:59 +01:00
env.c Update copyright years. 2021-01-04 10:26:59 +01:00
error.c Update copyright years. 2021-01-04 10:26:59 +01:00
fortran.c openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
hashtab.h Update copyright years. 2021-01-04 10:26:59 +01:00
icv-device.c Update copyright years. 2021-01-04 10:26:59 +01:00
icv.c Update copyright years. 2021-01-04 10:26:59 +01:00
iter_ull.c Update copyright years. 2021-01-04 10:26:59 +01:00
iter.c Update copyright years. 2021-01-04 10:26:59 +01:00
libgomp_f.h.in Update copyright years. 2021-01-04 10:26:59 +01:00
libgomp_g.h openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
libgomp-plugin.c Update copyright years. 2021-01-04 10:26:59 +01:00
libgomp-plugin.h Update copyright years. 2021-01-04 10:26:59 +01:00
libgomp.h openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
libgomp.map openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
libgomp.spec.in
libgomp.texi libgomp: Add documentation for omp_fulfill_event runtime function 2021-01-25 09:58:51 -08:00
lock.c Update copyright years. 2021-01-04 10:26:59 +01:00
loop_ull.c Update copyright years. 2021-01-04 10:26:59 +01:00
loop.c Update copyright years. 2021-01-04 10:26:59 +01:00
Makefile.am openmp: Mark deprecated symbols in OpenMP 5.0 2020-11-05 10:32:56 -08:00
Makefile.in openmp: Mark deprecated symbols in OpenMP 5.0 2020-11-05 10:32:56 -08:00
oacc-async.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-cuda.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-host.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-init.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-int.h Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-mem.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-parallel.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-plugin.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-plugin.h Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-profiling.c Update copyright years. 2021-01-04 10:26:59 +01:00
oacc-target.c
omp_lib.f90.in openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
omp_lib.h.in openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
omp.h.in openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
openacc_lib.h Update copyright years. 2021-01-04 10:26:59 +01:00
openacc.f90 Update copyright years. 2021-01-04 10:26:59 +01:00
openacc.h Update copyright years. 2021-01-04 10:26:59 +01:00
ordered.c Update copyright years. 2021-01-04 10:26:59 +01:00
parallel.c Update copyright years. 2021-01-04 10:26:59 +01:00
priority_queue.c openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
priority_queue.h openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
sections.c Update copyright years. 2021-01-04 10:26:59 +01:00
secure_getenv.h Update copyright years. 2021-01-04 10:26:59 +01:00
single.c Update copyright years. 2021-01-04 10:26:59 +01:00
splay-tree.c Update copyright years. 2021-01-04 10:26:59 +01:00
splay-tree.h Update copyright years. 2021-01-04 10:26:59 +01:00
target.c Update copyright years. 2021-01-04 10:26:59 +01:00
task.c libgomp: Fix up GOMP_task on s390x 2021-01-20 22:10:20 +01:00
taskloop.c Update copyright years. 2021-01-04 10:26:59 +01:00
team.c openmp: Add support for the OpenMP 5.0 task detach clause 2021-01-16 12:58:13 -08:00
teams.c Update copyright years. 2021-01-04 10:26:59 +01:00
work.c Update copyright years. 2021-01-04 10:26:59 +01:00