* gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
[official-gcc.git] / gcc / testsuite / gcc.c-torture / compile / pr29128.c
blob3358b47019840f63100b41106f2e536d799ac8b9
1 /* { dg-require-effective-target indirect_jumps } */
2 /* { dg-require-effective-target label_values } */
4 typedef unsigned long Eterm;
5 process_main (void)
7 register Eterm x0;
8 register Eterm *reg = ((void *) 0);
9 register Eterm *I = ((void *) 0);
10 static void *opcodes[] = {
11 &&lb_allocate_heap_zero_III,
12 &&lb_allocate_init_tIy, &&lb_allocate_zero_tt
14 lb_allocate_heap_III:{
15 Eterm *next;
16 goto *(next);
18 lb_allocate_heap_zero_III:{
20 lb_allocate_init_tIy:{
22 lb_allocate_zero_tt:{
23 Eterm *next;
25 Eterm *tmp_ptr = ((Eterm *) (((x0)) - 0x1));
26 (*(Eterm *) (((unsigned char *) reg) + (I[(0) + 1]))) = ((tmp_ptr)[0]);
27 x0 = ((tmp_ptr)[1]);
29 goto *(next);