2 ! { dg-additional-options "-msse2" { target sse2_runtime } }
3 ! { dg-additional-options "-mavx" { target avx_runtime } }
5 integer :: a(1024), b(1024), k
, m
, i
, s
, t
11 b(i
) = modulo (i
- 52, 39)
12 if (i
.lt
.52.and
.b(i
).ne
.0) b(i
) = b(i
) - 39
16 if (a(i
).ne
.((i
- 513) * b(i
))) STOP 1
17 if (i
.lt
.52.and
.modulo (i
- 52, 39).ne
.0) then
18 if (b(i
).ne
.(modulo (i
- 52, 39) - 39)) STOP 2
20 if (b(i
).ne
.(modulo (i
- 52, 39))) STOP 3
24 if (k
.ne
.(4 + 3 * 1024).or
.s
.ne
.1596127) STOP 4
30 if (a(i
).ne
.((i
- 513) * b(i
))) STOP 5
31 if (i
.lt
.52.and
.modulo (i
- 52, 39).ne
.0) then
32 if (b(i
).ne
.(modulo (i
- 52, 39) - 39)) STOP 6
34 if (b(i
).ne
.(modulo (i
- 52, 39))) STOP 7
38 if (k
.ne
.(4 + 3 * 1024).or
.s
.ne
.1596127) STOP 8
44 if (a(i
).ne
.((i
- 513) * b(i
))) STOP 9
45 if (i
.lt
.52.and
.modulo (i
- 52, 39).ne
.0) then
46 if (b(i
).ne
.(modulo (i
- 52, 39) - 39)) STOP 10
48 if (b(i
).ne
.(modulo (i
- 52, 39))) STOP 11
51 if (k
.ne
.(4 + 3 * 1024).or
.s
.ne
.1596127) STOP 12
54 integer :: p(1024), u
, v
, i
, s
, foo
56 !$omp simd linear(k : m + 1) reduction(+: s) lastprivate(u, v)
65 if (i
.ne
.1025) STOP 13
66 if (u
.ne
.(36 + 4 + 3 * 1023).or
.v
.ne
.(36 + 4 + 3 * 1024)) STOP 14
70 integer :: p(1024), u
, v
, i
, s
, bar
72 !$omp simd linear(k : m + 1) reduction(+: s) lastprivate(u, v)
81 if (i
.ne
.1025) STOP 15
82 if (u
.ne
.(36 + 4 + 3 * 1023).or
.v
.ne
.(36 + 4 + 3 * 1024)) STOP 16
86 integer :: p(1024), u
, v
, i
, s
, baz
88 !$omp simd linear(k : m + 1) reduction(+: s) lastprivate(u, v) &
97 if (i
.ne
.1025) STOP 17
98 if (u
.ne
.(36 + 4 + 3 * 1023).or
.v
.ne
.(36 + 4 + 3 * 1024)) STOP 18