1 #objdump: -dr
2 #name: TLS
3 # This test is only valid on ELF based ports.
4 #not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
5 # VxWorks needs a special variant of this file.
6 #skip: *-*-vxworks*
7 
8 # Test generation of TLS relocations
9 
10 .*: +file format .*arm.*
11 
12 Disassembly of section .text:
13 
14 0+00 <arm_fn>:
15    0:	e1a00000 	nop			; .*
16 			0: R_ARM_TLS_DESCSEQ	af
17    4:	e59f0014 	ldr	r0, \[pc, #20\]	; 20 .*
18    8:	fa000000 	blx	8 <ae\+.*>
19 			8: R_ARM_TLS_CALL	ae
20    c:	e1a00000 	nop			; .*
21 0+10 <.arm_pool>:
22   10:	00000008 	.word	0x00000008
23 			10: R_ARM_TLS_GD32	aa
24   14:	0000000c 	.word	0x0000000c
25 			14: R_ARM_TLS_LDM32	ab
26   18:	00000010 	.word	0x00000010
27 			18: R_ARM_TLS_IE32	ac
28   1c:	00000000 	.word	0x00000000
29 			1c: R_ARM_TLS_LE32	ad
30   20:	00000018 	.word	0x00000018
31 			20: R_ARM_TLS_GOTDESC	ae
32 0+24 <thumb_fn>:
33   24:	46c0      	nop			; .*
34   26:	46c0      	nop			; .*
35 			26: R_ARM_THM_TLS_DESCSEQ	tf
36   28:	4805      	ldr	r0, \[pc, #20\]	; \(40 .*\)
37   2a:	f000 e800 	blx	4 <te\+0x4>
38 			2a: R_ARM_THM_TLS_CALL	te
39   2e:	46c0      	nop			; .*
40   30:	00000002 	.word	0x00000002
41 			30: R_ARM_TLS_GD32	ta
42   34:	00000006 	.word	0x00000006
43 			34: R_ARM_TLS_LDM32	tb
44   38:	0000000a 	.word	0x0000000a
45 			38: R_ARM_TLS_IE32	tc
46   3c:	00000000 	.word	0x00000000
47 			3c: R_ARM_TLS_LE32	td
48   40:	00000017 	.word	0x00000017
49 			40: R_ARM_TLS_GOTDESC	te
50 0+44 <foo>:
51   44:	fffffff4 	.word	0xfffffff4
52 			44: R_ARM_TLS_LE32	tbase
53   48:	fffffff8 	.word	0xfffffff8
54 			48: R_ARM_TLS_LE32	tbase
55   4c:	fffffffc 	.word	0xfffffffc
56 			4c: R_ARM_TLS_LE32	tbase
57   50:	00000000 	.word	0x00000000
58 			50: R_ARM_TLS_LE32	tbase
59   54:	00000004 	.word	0x00000004
60 			54: R_ARM_TLS_LE32	tbase
61   58:	00000008 	.word	0x00000008
62 			58: R_ARM_TLS_LE32	tbase
63   5c:	0000000c 	.word	0x0000000c
64 			5c: R_ARM_TLS_LE32	tbase
65   60:	00000000 	.word	0x00000000
66 			60: R_ARM_TLS_LE32	tbase
67 #pass
68