1 /* { dg-do compile } */
2 /* { dg-options "-O3 -march=z9-ec" } */
3 
4 #include "call.h"
5 
6 /* { dg-final { scan-assembler {brasl\t%r\d+,foo@PLT\n} { target lp64 } } } */
7 /* { dg-final { scan-assembler {brasl\t%r\d+,foo\n} { target { ! lp64 } } } } */
8 /* { dg-final { scan-assembler {larl\t%r2,foo@PLT\n} { target lp64 } } } */
9 /* { dg-final { scan-assembler {larl\t%r2,foo\n} { target { ! lp64 } } } } */
10 
11 /* { dg-final { scan-assembler {brasl\t%r\d+,foostatic@PLT\n} { target lp64 } } } */
12 /* { dg-final { scan-assembler {brasl\t%r\d+,foostatic\n} { target { ! lp64 } } } } */
13 /* { dg-final { scan-assembler {larl\t%r2,foostatic@PLT\n} { target lp64 } } } */
14 /* { dg-final { scan-assembler {larl\t%r2,foostatic\n} { target { ! lp64 } } } } */
15 
16 /* { dg-final { scan-assembler {brasl\t%r\d+,fooweak\n} } } */
17 /* { dg-final { scan-assembler {larl\t%r2,fooweak\n} } } */
18 
19 /* { dg-final { scan-assembler {foos:\n\t.quad\tfoo\n\t.quad\tfoostatic\n\t.quad\tfooweak\n} { target lp64 } } } */
20 /* { dg-final { scan-assembler {foos:\n\t.long\tfoo\n\t.long\tfoostatic\n\t.long\tfooweak\n} { target { ! lp64 } } } } */
21