2 /* { dg-options "-O3 -march=z900 --save-temps -mindirect-branch-call=thunk -mindirect-branch-table" } */
6 void __attribute__((noinline
,noclone
))
12 int __attribute__((noinline
,noclone
))
18 void* __attribute__((noinline
,noclone
))
23 case 0: return &foo
; break;
24 case 1: return &foo_value
; break;
25 default: __builtin_abort ();
50 /* { dg-final { scan-assembler-times "brasl\t%r\[0-9\]*,__s390_indirect_jump" 2 } } */
51 /* { dg-final { scan-assembler "ex\t" } } */
53 /* { dg-final { scan-assembler-not "section\t.s390_indirect_jump" } } */
54 /* { dg-final { scan-assembler "section\t.s390_indirect_call" } } */
55 /* { dg-final { scan-assembler-not "section\t.s390_return_reg" } } */
56 /* { dg-final { scan-assembler-not "section\t.s390_return_mem" } } */