2 /* { dg-require-effective-target avx } */
3 /* { dg-options "-O2 -mavx" } */
10 int s1i
[8] = {0, 0, 0, 0, 0, 0, 0, 0};
11 int s2i
[8] = {1, 2, 3, 4, 5, 6, 7, 8};
13 int c
= 1, z
= 1, e
= 0xf;
17 s1
.x
= _mm256_loadu_si256 ((__m256i
*)s1i
);
18 s2
.x
= _mm256_loadu_si256 ((__m256i
*)s2i
);
19 d
= _mm256_testnzc_si256 (s1
.x
, s2
.x
);
21 for (i
= 0; i
< 8; i
++)
23 if ((s1
.a
[i
] & s2
.a
[i
]))
25 if ((~s1
.a
[i
] & s2
.a
[i
]))
29 e
= (z
== 0 && c
== 0) ? 1 : 0;