1 /* PR rtl-optimization/51447 */
2 
3 extern void abort (void);
4 
5 #ifdef __x86_64__
6 register void *ptr asm ("rbx");
7 #else
8 void *ptr;
9 #endif
10 
11 int
main(void)12 main (void)
13 {
14   __label__ nonlocal_lab;
15   __attribute__((noinline, noclone)) void
16     bar (void *func)
17       {
18 	ptr = func;
19 	goto nonlocal_lab;
20       }
21   bar (&&nonlocal_lab);
22   return 1;
23 nonlocal_lab:
24   if (ptr != &&nonlocal_lab)
25     abort ();
26   return 0;
27 }
28