* tree-loop-distribution.c (INCLUDE_ALGORITHM): New header file.
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / vrp67.c
blob5155f7b6daf5c95f7d1b3a2f90f1f93892e25e4c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-vrp1" } */
4 extern void link_error (void);
6 unsigned foo (unsigned i)
8 if (i == 2)
10 i = i << 2;
11 if (i != 8)
12 link_error ();
14 return i;
16 unsigned bar (unsigned i)
18 if (i == 1 << (sizeof (unsigned) * 8 - 1))
20 i = i << 1;
21 if (i != 0)
22 link_error ();
24 return i;
26 unsigned baz (unsigned i)
28 i = i & 15;
29 if (i == 0)
30 return 0;
31 i = 1000 - i;
32 i >>= 1;
33 i <<= 1;
34 if (i == 0)
35 link_error ();
36 return i;
39 /* { dg-final { scan-tree-dump-times "if" 3 "vrp1" } } */