1 /* PR tree-optimization/66949 */
2 /* { dg-do compile } */
3
4 int a, *b = &a, c;
5
6 unsigned short
7 fn1 (unsigned short p1, unsigned int p2)
8 {
9 return p2 > 1 || p1 >> p2 ? p1 : p1 << p2;
10 }
11
12 void
13 fn2 ()
14 {
15 int *d = &a;
16 for (a = 0; a < -1; a = 1)
17 ;
18 if (a < 0)
19 c = 0;
20 *b = fn1 (*d || c, *d);
21 }
22
23 int
24 main ()
25 {
26 fn2 ();
27 return 0;
28 }