1 /* PR tree-optimization/55236 */
2 /* { dg-do run } */
3 /* { dg-options "-O2 -fwrapv" } */
4 
5 extern void abort ();
6 
7 __attribute__((noinline, noclone)) void
foo(int i)8 foo (int i)
9 {
10   if (i > 0)
11     abort ();
12   i = -i;
13   if (i < 0)
14     return;
15   abort ();
16 }
17 
18 __attribute__((noinline, noclone)) void
bar(int i)19 bar (int i)
20 {
21   if (i > 0 || (-i) >= 0)
22     abort ();
23 }
24 
25 int
main()26 main ()
27 {
28   foo (-__INT_MAX__ - 1);
29   bar (-__INT_MAX__ - 1);
30   return 0;
31 }
32