1 ! { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } }
2 ! { dg-options "-march=i486 -fopenmp -mavx -O3 -funroll-all-loops" }
7 subroutine test_workshare
8 integer :: i
, j
, k
, l
, m
9 double precision, dimension (64) :: d
, e
10 integer, dimension (10) :: f
, g
11 integer, dimension (16, 16) :: a
, b
, c
12 integer, dimension (16) :: n
13 !$omp parallel num_threads (4) private (j, k)
19 where (g
.gt
. 6) f
= f
+ sum (g
)
22 !$omp end workshare nowait
24 forall (j
= 1:16, k
= 1:16) b (k
, j
) = a (j
, k
)
25 forall (j
= 2:16, n (17 - j
) / 4 * 4 .ne
. n (17 - j
))
26 n (j
) = n (j
- 1) * n (j
)
31 end subroutine test_workshare