diff options
author | iverbin <iverbin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-03-13 13:30:26 +0000 |
---|---|---|
committer | iverbin <iverbin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-03-13 13:30:26 +0000 |
commit | 69409999235cfc5df2fd10f7163181c4e25be97d (patch) | |
tree | f625bcbcacaa7aca60c5598632cbd58e1847f345 /libgomp/testsuite | |
parent | aa2f48d2e6710bcc0e4d0404f6bb05149a8a8427 (diff) | |
download | gcc-69409999235cfc5df2fd10f7163181c4e25be97d.tar.gz |
gcc/
* varpool.c (varpool_node::get_create): Don't set 'offloadable' flag for
the external decls.
libgomp/
* testsuite/libgomp.fortran/declare-target-1.f90: New test.
* testsuite/libgomp.fortran/declare-target-2.f90: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@221421 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgomp/testsuite')
-rw-r--r-- | libgomp/testsuite/libgomp.fortran/declare-target-1.f90 | 15 | ||||
-rw-r--r-- | libgomp/testsuite/libgomp.fortran/declare-target-2.f90 | 18 |
2 files changed, 33 insertions, 0 deletions
diff --git a/libgomp/testsuite/libgomp.fortran/declare-target-1.f90 b/libgomp/testsuite/libgomp.fortran/declare-target-1.f90 new file mode 100644 index 00000000000..fd9c26fde95 --- /dev/null +++ b/libgomp/testsuite/libgomp.fortran/declare-target-1.f90 @@ -0,0 +1,15 @@ +! { dg-do run } +! { dg-additional-sources declare-target-2.f90 } + +module declare_target_1_mod + integer :: var_x + !$omp declare target(var_x) +end module declare_target_1_mod + + interface + subroutine foo () + end subroutine foo + end interface + + call foo () +end diff --git a/libgomp/testsuite/libgomp.fortran/declare-target-2.f90 b/libgomp/testsuite/libgomp.fortran/declare-target-2.f90 new file mode 100644 index 00000000000..f8d3ab2b606 --- /dev/null +++ b/libgomp/testsuite/libgomp.fortran/declare-target-2.f90 @@ -0,0 +1,18 @@ +! Don't compile this anywhere, it is just auxiliary +! file compiled together with declare-target-1.f90 +! to verify inter-CU module handling of omp declare target. +! { dg-do compile { target { lp64 && { ! lp64 } } } } + +subroutine foo + use declare_target_1_mod + + var_x = 10 + !$omp target update to(var_x) + + !$omp target + var_x = var_x * 2; + !$omp end target + + !$omp target update from(var_x) + if (var_x /= 20) call abort +end subroutine foo |