1 /* PR rtl-optimization/19579 */
2
3 extern void abort (void);
4
5 int
foo(int i,int j)6 foo (int i, int j)
7 {
8 int k = i + 1;
9
10 if (j)
11 {
12 if (k > 0)
13 k++;
14 else if (k < 0)
15 k--;
16 }
17
18 return k;
19 }
20
21 int
main(void)22 main (void)
23 {
24 if (foo (-2, 0) != -1)
25 abort ();
26 if (foo (-1, 0) != 0)
27 abort ();
28 if (foo (0, 0) != 1)
29 abort ();
30 if (foo (1, 0) != 2)
31 abort ();
32 if (foo (-2, 1) != -2)
33 abort ();
34 if (foo (-1, 1) != 0)
35 abort ();
36 if (foo (0, 1) != 2)
37 abort ();
38 if (foo (1, 1) != 3)
39 abort ();
40 return 0;
41 }
42