1 /* PR target/pr70799 */
2 /* { dg-do compile { target ia32 } } */
3 /* { dg-options "-O2 -march=slm -mno-stackrealign" } */
4 /* { dg-final { scan-assembler "pxor" } } */
5 /* { dg-final { scan-assembler "pcmpeqd" } } */
6 /* { dg-final { scan-assembler "movdqa\[ \\t\]+.?\[lL\]C0" } } */
7 
8 long long a, b, c;
9 
test1(void)10 void test1 (void)
11 {
12   long long t;
13   if (a)
14     t = 0LL;
15   else
16     t = b;
17   a = c & t;
18   b = c | t;
19 }
20 
test2(void)21 void test2 (void)
22 {
23   long long t;
24   if (a)
25     t = -1LL;
26   else
27     t = b;
28   a = c & t;
29   b = c | t;
30 }
31 
test3(void)32 void test3 (void)
33 {
34   long long t;
35   if (a)
36     t = 0xf0f0f0f0f0f0f0f0LL;
37   else
38     t = b;
39   a = c & t;
40   b = c | t;
41 }
42