gcc/libgomp
Jakub Jelinek 49ddde69fc openmp: Also implicitly mark as declare target to functions mentioned in target regions
OpenMP 5.0 also specifies that functions referenced from target regions
(except for target regions with device(ancestor:)) are also implicitly declare target to.

This patch implements that.

2020-05-14  Jakub Jelinek  <jakub@redhat.com>

	* function.h (struct function): Add has_omp_target bit.
	* omp-offload.c (omp_discover_declare_target_fn_r): New function,
	old renamed to ...
	(omp_discover_declare_target_tgt_fn_r): ... this.
	(omp_discover_declare_target_var_r): Call
	omp_discover_declare_target_tgt_fn_r instead of
	omp_discover_declare_target_fn_r.
	(omp_discover_implicit_declare_target): Also queue functions with
	has_omp_target bit set, for those walk with
	omp_discover_declare_target_fn_r, for declare target to functions
	walk with omp_discover_declare_target_tgt_fn_r.
gcc/c/
	* c-parser.c (c_parser_omp_target): Set cfun->has_omp_target.
gcc/cp/
	* cp-gimplify.c (cp_genericize_r): Set cfun->has_omp_target.
gcc/fortran/
	* trans-openmp.c: Include function.h.
	(gfc_trans_omp_target): Set cfun->has_omp_target.
libgomp/
	* testsuite/libgomp.c-c++-common/target-40.c: New test.
2020-05-14 09:48:32 +02:00
..
config [OpenACC] Set 'acc_device_current = -1' 2020-04-29 09:54:37 +02:00
plugin amdgcn: Check HSA return codes [PR94629] 2020-04-23 15:05:23 +01:00
testsuite openmp: Also implicitly mark as declare target to functions mentioned in target regions 2020-05-14 09:48:32 +02:00
.gitattributes libgomp: Fixes + cleanup for OpenACC's Fortran module + openacc_lib.h 2020-02-19 09:13:44 +01:00
acc_prof.h Update copyright years. 2020-01-01 12:51:42 +01:00
acinclude.m4 re PR other/79543 (Inappropriate "ld --version" checking) 2019-09-03 14:10:26 +00:00
aclocal.m4 Add `--with-toolexeclibdir=' configuration option 2020-01-24 11:24:25 +00:00
affinity-fmt.c re PR libgomp/93219 (unused return value in affinity-fmt.c) 2020-01-10 21:42:00 +01:00
affinity.c Update copyright years. 2020-01-01 12:51:42 +01:00
alloc.c Update copyright years. 2020-01-01 12:51:42 +01:00
atomic.c Update copyright years. 2020-01-01 12:51:42 +01:00
barrier.c Update copyright years. 2020-01-01 12:51:42 +01:00
ChangeLog openmp: Also implicitly mark as declare target to functions mentioned in target regions 2020-05-14 09:48:32 +02:00
ChangeLog.graphite
config.h.in GCN libgomp port 2019-11-13 12:38:04 +00:00
configure libgomp/test: Remove a build sysroot fix regression 2020-04-06 23:32:45 +01:00
configure.ac libgomp/test: Remove a build sysroot fix regression 2020-04-06 23:32:45 +01:00
configure.tgt musl: Fix invalid tls model in libgomp and libitm PR91938 2019-12-03 11:13:38 +00:00
critical.c Update copyright years. 2020-01-01 12:51:42 +01:00
env.c Update copyright years. 2020-01-01 12:51:42 +01:00
error.c Update copyright years. 2020-01-01 12:51:42 +01:00
fortran.c Update copyright years. 2020-01-01 12:51:42 +01:00
hashtab.h Update copyright years. 2020-01-01 12:51:42 +01:00
icv-device.c Update copyright years. 2020-01-01 12:51:42 +01:00
icv.c Update copyright years. 2020-01-01 12:51:42 +01:00
iter_ull.c Update copyright years. 2020-01-01 12:51:42 +01:00
iter.c Update copyright years. 2020-01-01 12:51:42 +01:00
libgomp_f.h.in Update copyright years. 2020-01-01 12:51:42 +01:00
libgomp_g.h Update copyright years. 2020-01-01 12:51:42 +01:00
libgomp-plugin.c Update copyright years. 2020-01-01 12:51:42 +01:00
libgomp-plugin.h OpenACC 'acc_get_property' cleanup 2020-01-10 23:24:36 +01:00
libgomp.h OpenACC 'acc_get_property' cleanup 2020-01-10 23:24:36 +01:00
libgomp.map Add OpenACC 2.6 `acc_get_property' support 2019-12-22 19:54:09 +00:00
libgomp.spec.in Generally link to libgomp for -ftree-parallelize-loops=*. 2013-11-07 16:07:34 +01:00
libgomp.texi libgomp: Fixes + cleanup for OpenACC's Fortran module + openacc_lib.h 2020-02-19 09:13:44 +01:00
lock.c Update copyright years. 2020-01-01 12:51:42 +01:00
loop_ull.c Update copyright years. 2020-01-01 12:51:42 +01:00
loop.c Update copyright years. 2020-01-01 12:51:42 +01:00
Makefile.am GCN libgomp port 2019-11-13 12:38:04 +00:00
Makefile.in Add `--with-toolexeclibdir=' configuration option 2020-01-24 11:24:25 +00:00
oacc-async.c Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-cuda.c Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-host.c OpenACC 'acc_get_property' cleanup 2020-01-10 23:24:36 +01:00
oacc-init.c [gcn] Use 'radeon' for the environment variable 'ACC_DEVICE_TYPE' 2020-04-29 09:24:07 +02:00
oacc-int.h Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-mem.c Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-parallel.c OpenACC – support "if" + "if_present" clauses with "host_data" 2020-01-10 16:08:41 +01:00
oacc-plugin.c Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-plugin.h Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-profiling.c Update copyright years. 2020-01-01 12:51:42 +01:00
oacc-target.c GCN libgomp port 2019-11-13 12:38:04 +00:00
omp_lib.f90.in Update copyright years. 2020-01-01 12:51:42 +01:00
omp_lib.h.in Update copyright years. 2020-01-01 12:51:42 +01:00
omp.h.in Update copyright years. 2020-01-01 12:51:42 +01:00
openacc_lib.h [OpenACC] Set 'acc_device_current = -1' 2020-04-29 09:54:37 +02:00
openacc.f90 [OpenACC] Set 'acc_device_current = -1' 2020-04-29 09:54:37 +02:00
openacc.h [OpenACC] Set 'acc_device_current = -1' 2020-04-29 09:54:37 +02:00
ordered.c Update copyright years. 2020-01-01 12:51:42 +01:00
parallel.c Update copyright years. 2020-01-01 12:51:42 +01:00
priority_queue.c Update copyright years. 2020-01-01 12:51:42 +01:00
priority_queue.h Update copyright years. 2020-01-01 12:51:42 +01:00
sections.c Update copyright years. 2020-01-01 12:51:42 +01:00
secure_getenv.h Update copyright years. 2020-01-01 12:51:42 +01:00
single.c Update copyright years. 2020-01-01 12:51:42 +01:00
splay-tree.c Update copyright years. 2020-01-01 12:51:42 +01:00
splay-tree.h Update copyright years. 2020-01-01 12:51:42 +01:00
target.c libgomp – fix handling of 'target enter data' 2020-03-31 20:38:38 +02:00
task.c Update copyright years. 2020-01-01 12:51:42 +01:00
taskloop.c Update copyright years. 2020-01-01 12:51:42 +01:00
team.c Update copyright years. 2020-01-01 12:51:42 +01:00
teams.c Update copyright years. 2020-01-01 12:51:42 +01:00
work.c Update copyright years. 2020-01-01 12:51:42 +01:00