1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-cddce1" } */
3
4 int
fn1(signed int x,signed int y)5 fn1 (signed int x, signed int y)
6 {
7 signed int tem1 = x & y;
8 signed int tem2 = x | y;
9 return tem1 ^ tem2;
10 }
11
12 unsigned int
fn2(unsigned int x,unsigned int y)13 fn2 (unsigned int x, unsigned int y)
14 {
15 unsigned int tem1 = x & y;
16 unsigned int tem2 = x | y;
17 return tem1 ^ tem2;
18 }
19
20 int
fn3(signed int x,signed int y)21 fn3 (signed int x, signed int y)
22 {
23 signed int tem1 = x & y;
24 signed int tem2 = x | y;
25 return tem2 ^ tem1;
26 }
27
28 unsigned int
fn4(unsigned int x,unsigned int y)29 fn4 (unsigned int x, unsigned int y)
30 {
31 unsigned int tem1 = x & y;
32 unsigned int tem2 = x | y;
33 return tem2 ^ tem1;
34 }
35
36 /* { dg-final { scan-tree-dump-not " & " "cddce1" } } */
37 /* { dg-final { scan-tree-dump-not " \\| " "cddce1" } } */
38