aboutsummaryrefslogtreecommitdiff
path: root/flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
diff options
context:
space:
mode:
Diffstat (limited to 'flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90')
-rw-r--r--flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f9016
1 files changed, 16 insertions, 0 deletions
diff --git a/flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90 b/flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
new file mode 100644
index 0000000..8492a69
--- /dev/null
+++ b/flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
@@ -0,0 +1,16 @@
+! Check that for parallel do, reduction is only processed for the loop
+
+! RUN: bbc -fopenmp --force-byref-reduction -emit-hlfir %s -o - | FileCheck %s
+! RUN: flang-new -fc1 -fopenmp -mmlir --force-byref-reduction -emit-hlfir %s -o - | FileCheck %s
+
+! CHECK: omp.parallel {
+! CHECK: omp.wsloop byref reduction(@add_reduction_i_32
+subroutine sb
+ integer :: x
+ x = 0
+ !$omp parallel do reduction(+:x)
+ do i=1,100
+ x = x + 1
+ end do
+ !$omp end parallel do
+end subroutine