Daily bump.
[official-gcc.git] / gcc / testsuite / gcc.dg / pr48156.c
blob7b4d529c41b4a520fe32e11bea7bc57d96109282
1 /* PR rtl-optimization/48156 */
2 /* { dg-do run } */
3 /* { dg-options "-O -fcrossjumping --param min-crossjump-insns=1" } */
5 extern void abort (void);
7 static int __attribute__ ((noinline, noclone))
8 equals (int s1, int s2)
10 return s1 == s2;
13 static int __attribute__ ((noinline, noclone))
14 bar (void)
16 return 1;
19 static void __attribute__ ((noinline, noclone))
20 baz (int f, int j)
22 if (f != 4 || j != 2)
23 abort ();
26 void
27 foo (int x)
29 int i = 0, j = bar ();
31 if (x == 1)
32 i = 2;
34 if (j && equals (i, j))
35 baz (8, i);
36 else
37 baz (4, i);
40 int
41 main ()
43 foo (1);
44 return 0;