diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2021-01-01 12:12:49 +0100 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2021-01-01 12:12:49 +0100 |
commit | 9d9a82ec8478ff52c7a9d61f58cd2a7b6295b5f9 (patch) | |
tree | 3e8a4affd550ba011e18031cd0cbae6bd5dbb087 /gcc | |
parent | 4726e39b0be3c0bc55e43d2d300f0d0b9529d883 (diff) |
Make SYNC IMAGES(*) work by handling size of -1 in library.
libgfortran/ChangeLog:
* caf_shared/sync.c (sync_table): Change size argument and index
to int.
* caf_shared/sync.h (sync_table): Adjust prototype.
* caf_shared/wrapper.c (cas_sync_images): Add s argument to int,
adjust call to sync_table.
gcc/testsuite/ChangeLog:
* gfortran.dg/caf-shared/sync_images_1.f90: New test.
* gfortran.dg/caf-shared/sync_images_2.f90: New test.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gfortran.dg/caf-shared/sync_images_1.f90 | 13 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/caf-shared/sync_images_2.f90 | 5 |
2 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/caf-shared/sync_images_1.f90 b/gcc/testsuite/gfortran.dg/caf-shared/sync_images_1.f90 new file mode 100644 index 00000000000..c06b7631cdd --- /dev/null +++ b/gcc/testsuite/gfortran.dg/caf-shared/sync_images_1.f90 @@ -0,0 +1,13 @@ +! { dg-do run } +! { dg-set-target-env-var GFORTRAN_NUM_IMAGES "4" } +! { dg-output "1234" } +program main + implicit none + integer :: n, me + n = num_images() + me = this_image() + if (me /= 1) sync images (me - 1) + write (*,'(I0)',advance="no") me + if (me /= n) sync images (me+1) + sync all +end program main diff --git a/gcc/testsuite/gfortran.dg/caf-shared/sync_images_2.f90 b/gcc/testsuite/gfortran.dg/caf-shared/sync_images_2.f90 new file mode 100644 index 00000000000..f1d63347291 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/caf-shared/sync_images_2.f90 @@ -0,0 +1,5 @@ +! { dg-do run } +! { dg-set-target-env-var GFORTRAN_NUM_IMAGES "4" } +program main + sync images(*) +end program main |