1 .syntax unified 2 .arch armv6t2 3 4 .macro define,name,type 5 .type \name,%gnu_indirect_function 6 \type 7\name: 8 mov pc,lr 9 .size \name,.-\name 10 .endm 11 12 .macro test_relocs,name 13 ldr r4,1f 14 ldr r4,2f 151: 16 .word \name(GOT) 172: 18 .word \name(GOT_PREL) 19 .endm 20 21 .global f2 22 .global f2t 23 24 .global f3 25 .hidden f3 26 .global f3t 27 .hidden f3t 28 29 define f1,.arm 30 define f3,.arm 31 32 define f1t,.thumb_func 33 define f3t,.thumb_func 34 35 .globl _start 36_start: 37 test_relocs foo 38 test_relocs f1 39 test_relocs f2 40 test_relocs f3 41 test_relocs f1t 42 test_relocs f2t 43 test_relocs f3t 44 .size _start,.-_start 45 46 .data 47foo: 48 .word 0x11223344 49 .word __irel_start 50 .word __irel_end 51