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