This commit was manufactured by cvs2svn to create branch 'binutils-
[external/binutils.git] / ld / testsuite / ld-arm / ifunc-3.s
1         .macro  define,name
2         .text
3         .type   \name,%gnu_indirect_function
4 \name:
5         mov     pc,lr
6         .size   \name,.-\name
7         .endm
8
9         .macro  test_relocs,name
10         bl      \name(PLT)
11         ldr     r4,1f
12         ldr     r4,2f
13 1:
14         .word   \name(GOT)
15 2:
16         .word   \name(GOT_PREL)
17
18         .data
19         .word   \name
20         .word   \name - .
21         .text
22         .endm
23
24         .globl  f2
25
26         .globl  f3
27         .hidden f3
28
29         .globl  f4
30         .protected f4
31
32         define  f1
33         define  f2
34         define  f3
35         define  f4
36
37         .data
38 foo:
39         .word   0x11223344
40
41         .text
42         .globl  arm
43 arm:
44         test_relocs foo
45         test_relocs f1
46         test_relocs f2
47         test_relocs f3
48         test_relocs f4
49         .size   arm,.-arm