libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / pr91029-2.c
blobad9213a41b792dda3ad6680b7142d87acd8d689d
1 /* PR tree-optimization/91029 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-evrp" } */
5 void kill (void);
6 int xx;
8 void f1 (int i, int j)
10 if ((i % j) == 3)
12 xx = (j <= 3 && j >= -3);
13 if (xx)
14 kill ();
18 void f2 (int i, int j)
20 if ((i % j) > 0)
22 xx = (j <= 1 && j >= -1);
23 if (xx)
24 kill ();
28 void f3 (int i, int j)
30 if ((i % j) == -3)
32 xx = (j <= 3 && j >= -3);
33 if (xx)
34 kill ();
38 void f4 (int i, int j)
40 if ((i % j) < 0)
42 xx = (j <= 1 && j >= -1);
43 if (xx)
44 kill ();
48 void f5 (int i, int j)
50 if ((i % j) > 42)
52 xx = (j <= 43 && j >= -43);
53 if (xx)
54 kill ();
58 void f6 (int i, int j)
60 if ((i % j) < -124)
62 xx = (j <= 125 && j >= -125);
63 if (xx)
64 kill ();
68 void f7 (unsigned int i, unsigned int j)
70 if ((i % j) == 3)
72 xx = (j <= 3);
73 if (xx)
74 kill ();
78 void f8 (unsigned int i, unsigned int j)
80 if ((i % j) > 0)
82 xx = (j <= 1);
83 if (xx)
84 kill ();
88 void f9 (unsigned int i, unsigned int j)
90 if ((i % j) >= 124)
92 xx = (j <= 124);
93 if (xx)
94 kill ();
98 /* { dg-final { scan-tree-dump-not "kill" "evrp" } } */