From 8916ba874dae00edc04face497360ce4eb3ea95b Mon Sep 17 00:00:00 2001 From: Andrew Stubbs Date: Fri, 15 Nov 2019 10:49:10 +0000 Subject: [PATCH] Add tests for print from offload target. 2019-11-15 Andrew Stubbs libgomp/ * testsuite/libgomp.c/target-print-1.c: New file. * testsuite/libgomp.fortran/target-print-1.f90: New file. * testsuite/libgomp.oacc-c/print-1.c: New file. * testsuite/libgomp.oacc-fortran/print-1.f90: New file. From-SVN: r278284 --- libgomp/ChangeLog | 7 +++++++ libgomp/testsuite/libgomp.c/target-print-1.c | 17 +++++++++++++++++ .../libgomp.fortran/target-print-1.f90 | 15 +++++++++++++++ libgomp/testsuite/libgomp.oacc-c/print-1.c | 17 +++++++++++++++++ .../testsuite/libgomp.oacc-fortran/print-1.f90 | 15 +++++++++++++++ 5 files changed, 71 insertions(+) create mode 100644 libgomp/testsuite/libgomp.c/target-print-1.c create mode 100644 libgomp/testsuite/libgomp.fortran/target-print-1.f90 create mode 100644 libgomp/testsuite/libgomp.oacc-c/print-1.c create mode 100644 libgomp/testsuite/libgomp.oacc-fortran/print-1.f90 diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index bcd14fa7a07..afea4958f45 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,10 @@ +2019-11-15 Andrew Stubbs + + * testsuite/libgomp.c/target-print-1.c: New file. + * testsuite/libgomp.fortran/target-print-1.f90: New file. + * testsuite/libgomp.oacc-c/print-1.c: New file. + * testsuite/libgomp.oacc-fortran/print-1.f90: New file. + 2019-11-13 Andrew Stubbs Kwok Cheung Yeung Julian Brown diff --git a/libgomp/testsuite/libgomp.c/target-print-1.c b/libgomp/testsuite/libgomp.c/target-print-1.c new file mode 100644 index 00000000000..5857b875ced --- /dev/null +++ b/libgomp/testsuite/libgomp.c/target-print-1.c @@ -0,0 +1,17 @@ +/* Ensure that printf on the offload device works. */ + +/* { dg-do run } */ +/* { dg-output "The answer is 42(\n|\r\n|\r)+" } */ + +#include + +int var = 42; + +int +main () +{ +#pragma omp target + { + printf ("The answer is %d\n", var); + } +} diff --git a/libgomp/testsuite/libgomp.fortran/target-print-1.f90 b/libgomp/testsuite/libgomp.fortran/target-print-1.f90 new file mode 100644 index 00000000000..c71a0952483 --- /dev/null +++ b/libgomp/testsuite/libgomp.fortran/target-print-1.f90 @@ -0,0 +1,15 @@ +! Ensure that printf on the offload device works. + +! { dg-do run } +! { dg-output "The answer is 42(\n|\r\n|\r)+" } +! { dg-xfail-if "no write for nvidia" { openacc_nvidia_accel_selected } } + +program main + implicit none + integer :: var = 42 + +!$omp target + write (0, '("The answer is ", I2)') var +!$omp end target + +end program main diff --git a/libgomp/testsuite/libgomp.oacc-c/print-1.c b/libgomp/testsuite/libgomp.oacc-c/print-1.c new file mode 100644 index 00000000000..593885b5c2c --- /dev/null +++ b/libgomp/testsuite/libgomp.oacc-c/print-1.c @@ -0,0 +1,17 @@ +/* Ensure that printf on the offload device works. */ + +/* { dg-do run } */ +/* { dg-output "The answer is 42(\n|\r\n|\r)+" } */ + +#include + +int var = 42; + +int +main () +{ +#pragma acc parallel + { + printf ("The answer is %d\n", var); + } +} diff --git a/libgomp/testsuite/libgomp.oacc-fortran/print-1.f90 b/libgomp/testsuite/libgomp.oacc-fortran/print-1.f90 new file mode 100644 index 00000000000..a83280d1edb --- /dev/null +++ b/libgomp/testsuite/libgomp.oacc-fortran/print-1.f90 @@ -0,0 +1,15 @@ +! Ensure that printf on the offload device works. + +! { dg-do run } +! { dg-output "The answer is 42(\n|\r\n|\r)+" } +! { dg-xfail-if "no write for nvidia" { openacc_nvidia_accel_selected } } + +program main + implicit none + integer :: var = 42 + +!$acc parallel + write (0, '("The answer is ", I2)') var +!$acc end parallel + +end program main -- 2.30.2