/* PR target/pr65105 */ /* { dg-do compile { target { ia32 } } } */ /* { dg-options "-O2 -march=core-avx2 -mno-stackrealign" } */ /* { dg-final { scan-assembler "pandn" } } */ /* { dg-final { scan-assembler "pxor" } } */ /* { dg-final { scan-assembler "ptest" } } */ struct S1 { unsigned long long a; unsigned long long b; }; void test (int p1, unsigned long long p2, int p3, struct S1 *p4) { int i; for (i = 0; i < p1; i++) if ((p4[i].a & p2) != p2) p4[i].a ^= (1ULL << p3); }