1 /* PR rtl-optimization/37341 */
2
3 short int a;
4 int b;
5
6 static inline int
f1(int x,int y)7 f1 (int x, int y)
8 {
9 if (x < 0 || y < 0 || y >= sizeof (int) * 8 || x > (1 >> y))
10 return x;
11 }
12
13 static inline unsigned int
f2(int x,int y)14 f2 (int x, int y)
15 {
16 if (y <= 0 && x && y < __INT_MAX__ / x)
17 return x;
18 return x * y;
19 }
20
21 int
f3(void)22 f3 (void)
23 {
24 return (signed char) 0xb6;
25 }
26
27 unsigned int
f4(unsigned int x)28 f4 (unsigned int x)
29 {
30 while (1)
31 {
32 if ((f2 (f3 (), (f1 (a, b)))) < x)
33 return 1;
34 }
35 }
36