aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr107937.c
blob: 524850bcfa5d210379e95227a82038a70fe6488e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* { dg-do compile } */
/* { dg-options "-O -Wuninitialized" } */

int _setjmp(int);
int regs, vm_debug_engine_vp_0, vm_debug_engine_vp_2;

void
vm_dispatch_hook();


void
vm_debug_engine() {
  int fp;
  void *jump_table = &&l_nop;
l_nop:
  if (__builtin_expect(vm_debug_engine_vp_2, 0))
    vm_dispatch_hook();
  if (_setjmp(regs)) {
    fp = fp;
    vm_dispatch_hook();
    goto *jump_table;
  }
  vm_debug_engine_vp_0 = fp;
}