1 /* PR rtl-optimization/47157 */ 2 3 struct S { unsigned a; unsigned b; } c = { 1, 0 }; 4 unsigned long int e; 5 void bar (int); 6 int baz (void); 7 8 static int foo(int x,short y)9foo (int x, short y) 10 { 11 return ((x ^ y) & ((x ^ (x ^ y) & ~__INT_MAX__) - y ^ y)) < 0 ? x : x - y; 12 } 13 14 void test(void)15test (void) 16 { 17 bar (foo (baz () != (c.a | c.b), -1L)); 18 for (e = 0; e; e = 1) 19 ; 20 } 21