1/* PR tree-optimization/46107 */
2/* { dg-require-effective-target indirect_jumps } */
3/* { dg-require-effective-target label_values } */
4
5int foo (void) __attribute__ ((noreturn));
6
7void
8bar (int x, int *y, int z)
9{
10  static void *j[] = { &&l1, &&l2 };
11l1:
12  if (*y)
13    goto *j[z];
14  foo ();
15l2:
16  *y ^= (x & 1) ? -1 : 0;
17  goto *j[x];
18}
19