1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-vrp1" } */
3 
4 int
foo(unsigned int i,unsigned int j)5 foo (unsigned int i, unsigned int j)
6 {
7   i &= 15;
8   j &= 15;
9   i += 1024;
10   j += 2048;
11   i &= j;
12   return i < 16;
13 }
14 
15 int
bar(int i)16 bar (int i)
17 {
18   int c = 2;
19   c &= i > 6;
20   return c == 0;
21 }
22 
baz(int x,int y)23 int baz (int x, int y)
24 {
25   x &= 15;
26   y &= 15;
27   x += 4;
28   y += 16;
29   x &= y;
30   return x < 20;
31 }
32 
33 /* { dg-final { scan-tree-dump-times "return 1;" 3 "vrp1" } } */
34 /* { dg-final { cleanup-tree-dump "vrp1" } } */
35