aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgomp/testsuite/libgomp.oacc-fortran/pr94358-1.f9034
1 files changed, 34 insertions, 0 deletions
diff --git a/libgomp/testsuite/libgomp.oacc-fortran/pr94358-1.f90 b/libgomp/testsuite/libgomp.oacc-fortran/pr94358-1.f90
new file mode 100644
index 0000000..5013c5ba
--- /dev/null
+++ b/libgomp/testsuite/libgomp.oacc-fortran/pr94358-1.f90
@@ -0,0 +1,34 @@
+! { dg-do run }
+! { dg-additional-options "-fopt-info-omp-all" }
+
+subroutine kernel(lo, hi, a, b, c)
+ implicit none
+ integer :: lo, hi, i
+ real, dimension(lo:hi) :: a, b, c
+
+ !$acc kernels copyin(lo, hi) ! { dg-optimized "assigned OpenACC seq loop parallelism" }
+ !$acc loop independent
+ do i = lo, hi
+ b(i) = a(i)
+ end do
+ !$acc loop independent
+ do i = lo, hi
+ c(i) = b(i)
+ end do
+ !$acc end kernels
+end subroutine kernel
+
+program main
+ integer :: n = 20
+ real, dimension(1:20) :: a, b, c
+
+ a(:) = 1
+ b(:) = 2
+ c(:) = 3
+
+ call kernel(1, n, a, b, c)
+
+ do i = 1, n
+ if (c(i) .ne. 1) call abort
+ end do
+end program main