tree-optimization/113385 - wrong loop father with early exit vectorization
[official-gcc.git] / gcc / testsuite / gfortran.dg / gomp / openmp-simd-7.f90
blobd7010bb42883ce24a591a2eb1d3ceff30d4d809a
1 ! { dg-options "-fno-openmp -fopenmp-simd -fdump-tree-original" }
3 subroutine foo (a, b)
4 integer, contiguous :: a(:), b(:)
5 integer :: i
6 !$omp simd reduction (inscan, +:r)
7 do i = 1, 1024
8 r = r + a(i)
9 !$omp scan inclusive(r)
10 b(i) = r
11 end do
12 !$omp end simd
14 !$omp loop
15 do i = 1, 1024
16 a(i) = a(i) + i
17 end do
18 !$omp end loop
19 end
21 ! { dg-final { scan-tree-dump "#pragma omp simd linear\\(i:1\\) reduction\\(inscan,\\+:r\\)" "original" } }
22 ! { dg-final { scan-tree-dump "#pragma omp scan inclusive\\(r\\)" "original" } }
23 ! { dg-final { scan-tree-dump "#pragma omp loop" "original" } }