bfd/
[binutils.git] / ld / testsuite / ld-mips-elf / mips16-local-stubs-1.s
blob990440258427695e8cf1a08879161b3b50ab92df
1 .macro makestub,type,func,section
2 .text
3 .set \type
4 .type \func,@function
5 .ent \func
6 \func:
7 jr $31
8 .end \func
10 .section \section,"ax",@progbits
11 .set nomips16
12 .type stub_for_\func,@function
13 .ent stub_for_\func
14 stub_for_\func:
15 .set noat
16 la $1,\func
17 jr $1
18 .set at
19 .end stub_for_\func
20 .endm
22 .macro makestubs,id
23 makestub nomips16,f\id,.mips16.call.F\id
24 makestub nomips16,g\id,.mips16.call.fp.G\id
25 makestub mips16,h\id,.mips16.fn.H\id
26 .endm
28 .macro makecaller,type,func
29 .text
30 .set \type
31 .globl \func
32 .type \func,@function
33 .ent \func
34 \func:
35 jal f1
36 jal f2
37 jal g1
38 jal g2
39 jal h1
40 jal h2
41 .end \func
42 .endm
44 makestubs 1
45 makestubs 2
46 makestubs 3
48 makecaller nomips16,caller1
49 makecaller mips16,caller2