[Openmp-commits] [openmp] [NFC][OpenMP][Flang] Add test for OpenMP target parallel do (PR #77776)
Dominik Adamski via Openmp-commits
openmp-commits at lists.llvm.org
Thu Jan 18 04:09:50 PST 2024
https://github.com/DominikAdamski updated https://github.com/llvm/llvm-project/pull/77776
>From 88f3a89c423ba3e7302c91cab5b4f61dee0ef5fb Mon Sep 17 00:00:00 2001
From: Dominik Adamski <dominik.adamski at amd.com>
Date: Thu, 11 Jan 2024 08:40:57 -0600
Subject: [PATCH 1/2] [NFC][OpenMP][Flang] Add test for OpenMP target parallel
do
Added test which proves that end-to-end compilation of
omp target parallel do costruct is successful for Flang compiler.
---
.../fortran/basic-target-parallel-do.f90 | 31 +++++++++++++++++++
1 file changed, 31 insertions(+)
create mode 100644 openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
diff --git a/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90 b/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
new file mode 100644
index 00000000000000..cae6f6c643d893
--- /dev/null
+++ b/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
@@ -0,0 +1,31 @@
+! Basic offloading test with a target region
+! REQUIRES: flang
+! UNSUPPORTED: nvptx64-nvidia-cuda-LTO
+! UNSUPPORTED: aarch64-unknown-linux-gnu
+! UNSUPPORTED: aarch64-unknown-linux-gnu-LTO
+! UNSUPPORTED: x86_64-pc-linux-gnu
+! UNSUPPORTED: x86_64-pc-linux-gnu-LTO
+
+! RUN: %libomptarget-compile-fortran-run-and-check-generic
+program main
+ use omp_lib
+ integer :: x(100)
+ integer :: errors = 0
+ integer :: i
+
+ !$omp target parallel do map(from: x)
+ do i = 1, 100
+ x(i) = i
+ end do
+ !$omp end target parallel do
+ do i = 1, 100
+ if ( x(i) .ne. i ) then
+ errors = errors + 1
+ end if
+ end do
+
+ print *,"number of errors: ", errors
+
+end program main
+
+! CHECK: number of errors: 0
>From 37d42b2ec8fb4e4d352071499e4b051ad61f0c36 Mon Sep 17 00:00:00 2001
From: Dominik Adamski <dominik.adamski at amd.com>
Date: Thu, 18 Jan 2024 06:08:26 -0600
Subject: [PATCH 2/2] Applied remarks
---
.../test/offloading/fortran/basic-target-parallel-do.f90 | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90 b/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
index cae6f6c643d893..9850f1462f59a6 100644
--- a/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
+++ b/openmp/libomptarget/test/offloading/fortran/basic-target-parallel-do.f90
@@ -6,7 +6,8 @@
! UNSUPPORTED: x86_64-pc-linux-gnu
! UNSUPPORTED: x86_64-pc-linux-gnu-LTO
-! RUN: %libomptarget-compile-fortran-run-and-check-generic
+! RUN: %libomptarget-compile-fortran-generic
+! RUN: env LIBOMPTARGET_INFO=16 %libomptarget-run-generic 2>&1 | %fcheck-generic
program main
use omp_lib
integer :: x(100)
@@ -28,4 +29,5 @@ program main
end program main
-! CHECK: number of errors: 0
+! CHECK: "PluginInterface" device {{[0-9]+}} info: Launching kernel {{.*}}
+! CHECKi: number of errors: 0
More information about the Openmp-commits
mailing list