1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-rtl-expand" } */
3 
4 extern void abort (void);
5 unsigned int a = 1;
6 
7 int
main(void)8 main (void)
9 {
10   unsigned int b, c, d;
11 
12   if (sizeof (int) != 4 || (int) 0xc7d24b5e > 0)
13     return 0;
14 
15   c = 0xc7d24b5e;
16   d = a | -2;
17   b = (d == 0) ? c : (c % d);
18   if (b != c)
19     abort ();
20 
21   return 0;
22 }
23 
24 /* { dg-final { scan-rtl-dump "expr_list:REG_EQUAL \\(const_int -942519458" "expand" } } */
25