1 #name: FRV TLS relocs with addends, shared linking with static TLS
2 #source: tls-2.s
3 #as: --defsym static_tls=1
4 #objdump: -DR -j .text -j .got -j .plt
5 #ld: -shared tmpdir/tls-1-dep.so --version-script tls-1-shared.lds
6 
7 .*:     file format elf.*frv.*
8 
9 Disassembly of section \.plt:
10 
11 [0-9a-f ]+<\.plt>:
12 [0-9a-f ]+:	92 c8 f0 5c 	ldi @\(gr15,92\),gr9
13 [0-9a-f ]+:	c0 3a 40 00 	bralr
14 [0-9a-f ]+:	90 cc ff e8 	lddi @\(gr15,-24\),gr8
15 [0-9a-f ]+:	80 30 80 00 	jmpl @\(gr8,gr0\)
16 [0-9a-f ]+:	92 c8 f0 78 	ldi @\(gr15,120\),gr9
17 [0-9a-f ]+:	c0 3a 40 00 	bralr
18 [0-9a-f ]+:	90 cc ff f8 	lddi @\(gr15,-8\),gr8
19 [0-9a-f ]+:	80 30 80 00 	jmpl @\(gr8,gr0\)
20 Disassembly of section \.text:
21 
22 [0-9a-f ]+<_start>:
23 [0-9a-f ]+:	92 c8 f0 30 	ldi @\(gr15,48\),gr9
24 [0-9a-f ]+:	92 c8 f0 78 	ldi @\(gr15,120\),gr9
25 [0-9a-f ]+:	92 c8 f0 4c 	ldi @\(gr15,76\),gr9
26 [0-9a-f ]+:	00 88 00 00 	nop\.p
27 [0-9a-f ]+:	80 88 00 00 	nop
28 [0-9a-f ]+:	92 c8 f0 70 	ldi @\(gr15,112\),gr9
29 [0-9a-f ]+:	80 88 00 00 	nop
30 [0-9a-f ]+:	00 88 00 00 	nop\.p
31 [0-9a-f ]+:	80 88 00 00 	nop
32 [0-9a-f ]+:	92 c8 f0 7c 	ldi @\(gr15,124\),gr9
33 [0-9a-f ]+:	80 88 00 00 	nop
34 [0-9a-f ]+:	00 88 00 00 	nop\.p
35 [0-9a-f ]+:	80 88 00 00 	nop
36 [0-9a-f ]+:	92 c8 f0 8c 	ldi @\(gr15,140\),gr9
37 [0-9a-f ]+:	80 88 00 00 	nop
38 [0-9a-f ]+:	12 c8 f0 34 	ldi\.p @\(gr15,52\),gr9
39 [0-9a-f ]+:	80 88 00 00 	nop
40 [0-9a-f ]+:	80 88 00 00 	nop
41 [0-9a-f ]+:	12 c8 f0 3c 	ldi\.p @\(gr15,60\),gr9
42 [0-9a-f ]+:	80 88 00 00 	nop
43 [0-9a-f ]+:	80 88 00 00 	nop
44 [0-9a-f ]+:	12 c8 f0 50 	ldi\.p @\(gr15,80\),gr9
45 [0-9a-f ]+:	80 88 00 00 	nop
46 [0-9a-f ]+:	80 88 00 00 	nop
47 [0-9a-f ]+:	80 88 00 00 	nop
48 [0-9a-f ]+:	92 fc f8 14 	setlos 0xf*fffff814,gr9
49 [0-9a-f ]+:	80 88 00 00 	nop
50 [0-9a-f ]+:	92 fc 08 14 	setlos 0x814,gr9
51 [0-9a-f ]+:	92 f8 00 00 	sethi hi\(0x0\),gr9
52 [0-9a-f ]+:	92 f4 f8 14 	setlo 0xf814,gr9
53 [0-9a-f ]+:	92 c8 f0 54 	ldi @\(gr15,84\),gr9
54 [0-9a-f ]+:	92 c8 f0 5c 	ldi @\(gr15,92\),gr9
55 [0-9a-f ]+:	92 c8 f0 18 	ldi @\(gr15,24\),gr9
56 [0-9a-f ]+:	00 88 00 00 	nop\.p
57 [0-9a-f ]+:	80 88 00 00 	nop
58 [0-9a-f ]+:	92 c8 f0 90 	ldi @\(gr15,144\),gr9
59 [0-9a-f ]+:	80 88 00 00 	nop
60 [0-9a-f ]+:	00 88 00 00 	nop\.p
61 [0-9a-f ]+:	80 88 00 00 	nop
62 [0-9a-f ]+:	92 c8 f0 60 	ldi @\(gr15,96\),gr9
63 [0-9a-f ]+:	80 88 00 00 	nop
64 [0-9a-f ]+:	00 88 00 00 	nop\.p
65 [0-9a-f ]+:	80 88 00 00 	nop
66 [0-9a-f ]+:	92 c8 f0 64 	ldi @\(gr15,100\),gr9
67 [0-9a-f ]+:	80 88 00 00 	nop
68 [0-9a-f ]+:	12 c8 f0 58 	ldi\.p @\(gr15,88\),gr9
69 [0-9a-f ]+:	80 88 00 00 	nop
70 [0-9a-f ]+:	80 88 00 00 	nop
71 [0-9a-f ]+:	12 c8 f0 0c 	ldi\.p @\(gr15,12\),gr9
72 [0-9a-f ]+:	80 88 00 00 	nop
73 [0-9a-f ]+:	80 88 00 00 	nop
74 [0-9a-f ]+:	12 c8 f0 1c 	ldi\.p @\(gr15,28\),gr9
75 [0-9a-f ]+:	80 88 00 00 	nop
76 [0-9a-f ]+:	80 88 00 00 	nop
77 [0-9a-f ]+:	80 88 00 00 	nop
78 [0-9a-f ]+:	92 fc f8 24 	setlos 0xf*fffff824,gr9
79 [0-9a-f ]+:	80 88 00 00 	nop
80 [0-9a-f ]+:	92 fc 08 24 	setlos 0x824,gr9
81 [0-9a-f ]+:	92 f8 00 00 	sethi hi\(0x0\),gr9
82 [0-9a-f ]+:	92 f4 f8 24 	setlo 0xf824,gr9
83 [0-9a-f ]+:	92 c8 f0 24 	ldi @\(gr15,36\),gr9
84 [0-9a-f ]+:	fe 3f ff c1 	call .*
85 [0-9a-f ]+:	92 c8 f0 40 	ldi @\(gr15,64\),gr9
86 [0-9a-f ]+:	00 88 00 00 	nop\.p
87 [0-9a-f ]+:	80 88 00 00 	nop
88 [0-9a-f ]+:	92 c8 f0 68 	ldi @\(gr15,104\),gr9
89 [0-9a-f ]+:	80 88 00 00 	nop
90 [0-9a-f ]+:	00 88 00 00 	nop\.p
91 [0-9a-f ]+:	80 88 00 00 	nop
92 [0-9a-f ]+:	92 c8 f0 80 	ldi @\(gr15,128\),gr9
93 [0-9a-f ]+:	80 88 00 00 	nop
94 [0-9a-f ]+:	00 88 00 00 	nop\.p
95 [0-9a-f ]+:	80 88 00 00 	nop
96 [0-9a-f ]+:	92 c8 f0 84 	ldi @\(gr15,132\),gr9
97 [0-9a-f ]+:	80 88 00 00 	nop
98 [0-9a-f ]+:	12 c8 f0 28 	ldi\.p @\(gr15,40\),gr9
99 [0-9a-f ]+:	80 88 00 00 	nop
100 [0-9a-f ]+:	80 88 00 00 	nop
101 [0-9a-f ]+:	12 c8 f0 38 	ldi\.p @\(gr15,56\),gr9
102 [0-9a-f ]+:	80 88 00 00 	nop
103 [0-9a-f ]+:	80 88 00 00 	nop
104 [0-9a-f ]+:	12 c8 f0 44 	ldi\.p @\(gr15,68\),gr9
105 [0-9a-f ]+:	80 88 00 00 	nop
106 [0-9a-f ]+:	80 88 00 00 	nop
107 [0-9a-f ]+:	80 88 00 00 	nop
108 [0-9a-f ]+:	92 fc 00 04 	setlos 0x4,gr9
109 [0-9a-f ]+:	80 88 00 00 	nop
110 [0-9a-f ]+:	92 fc 10 04 	setlos 0x1004,gr9
111 [0-9a-f ]+:	92 f8 00 01 	sethi 0x1,gr9
112 [0-9a-f ]+:	92 f4 00 04 	setlo 0x4,gr9
113 [0-9a-f ]+:	92 c8 f0 2c 	ldi @\(gr15,44\),gr9
114 [0-9a-f ]+:	fe 3f ff 9f 	call .*
115 [0-9a-f ]+:	92 c8 f0 48 	ldi @\(gr15,72\),gr9
116 [0-9a-f ]+:	00 88 00 00 	nop\.p
117 [0-9a-f ]+:	80 88 00 00 	nop
118 [0-9a-f ]+:	92 c8 f0 6c 	ldi @\(gr15,108\),gr9
119 [0-9a-f ]+:	80 88 00 00 	nop
120 [0-9a-f ]+:	00 88 00 00 	nop\.p
121 [0-9a-f ]+:	80 88 00 00 	nop
122 [0-9a-f ]+:	92 c8 f0 74 	ldi @\(gr15,116\),gr9
123 [0-9a-f ]+:	80 88 00 00 	nop
124 [0-9a-f ]+:	00 88 00 00 	nop\.p
125 [0-9a-f ]+:	80 88 00 00 	nop
126 [0-9a-f ]+:	92 c8 f0 88 	ldi @\(gr15,136\),gr9
127 [0-9a-f ]+:	80 88 00 00 	nop
128 [0-9a-f ]+:	12 c8 f0 10 	ldi\.p @\(gr15,16\),gr9
129 [0-9a-f ]+:	80 88 00 00 	nop
130 [0-9a-f ]+:	80 88 00 00 	nop
131 [0-9a-f ]+:	12 c8 f0 14 	ldi\.p @\(gr15,20\),gr9
132 [0-9a-f ]+:	80 88 00 00 	nop
133 [0-9a-f ]+:	80 88 00 00 	nop
134 [0-9a-f ]+:	12 c8 f0 20 	ldi\.p @\(gr15,32\),gr9
135 [0-9a-f ]+:	80 88 00 00 	nop
136 [0-9a-f ]+:	80 88 00 00 	nop
137 [0-9a-f ]+:	92 c8 f0 30 	ldi @\(gr15,48\),gr9
138 [0-9a-f ]+:	92 c8 f0 4c 	ldi @\(gr15,76\),gr9
139 [0-9a-f ]+:	92 c8 f0 54 	ldi @\(gr15,84\),gr9
140 [0-9a-f ]+:	92 c8 f0 18 	ldi @\(gr15,24\),gr9
141 [0-9a-f ]+:	92 c8 f0 24 	ldi @\(gr15,36\),gr9
142 [0-9a-f ]+:	92 c8 f0 40 	ldi @\(gr15,64\),gr9
143 [0-9a-f ]+:	92 c8 f0 2c 	ldi @\(gr15,44\),gr9
144 [0-9a-f ]+:	92 c8 f0 48 	ldi @\(gr15,72\),gr9
145 [0-9a-f ]+:	80 88 00 00 	nop
146 [0-9a-f ]+:	92 c8 f0 78 	ldi @\(gr15,120\),gr9
147 [0-9a-f ]+:	80 88 00 00 	nop
148 [0-9a-f ]+:	80 88 00 00 	nop
149 [0-9a-f ]+:	92 c8 f0 5c 	ldi @\(gr15,92\),gr9
150 Disassembly of section \.got:
151 
152 [0-9a-f ]+<(__data_start|_GLOBAL_OFFSET_TABLE_-0x20)>:
153 [0-9a-f ]+:	00 00 00 00 	add\.p gr0,gr0,gr0
154 [0-9a-f	 ]+: R_FRV_TLSDESC_VALUE	\.tbss
155 [0-9a-f ]+:	00 00 10 11 	add\.p sp,gr17,gr0
156 [0-9a-f ]+:	00 00 00 00 	add\.p gr0,gr0,gr0
157 [0-9a-f	 ]+: R_FRV_TLSDESC_VALUE	x
158 [0-9a-f ]+:	00 00 10 01 	add\.p sp,sp,gr0
159 [0-9a-f ]+:	00 00 00 00 	add\.p gr0,gr0,gr0
160 [0-9a-f	 ]+: R_FRV_TLSDESC_VALUE	\.tbss
161 [0-9a-f ]+:	00 00 10 01 	add\.p sp,sp,gr0
162 [0-9a-f ]+:	00 00 00 00 	add\.p gr0,gr0,gr0
163 [0-9a-f	 ]+: R_FRV_TLSDESC_VALUE	\.tbss
164 [0-9a-f ]+:	00 00 17 f1 	\*unknown\*
165 
166 [0-9a-f ]+<_GLOBAL_OFFSET_TABLE_>:
167 	\.\.\.
168 [0-9a-f ]+:	00 00 10 13 	add\.p sp,gr19,gr0
169 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
170 [0-9a-f ]+:	00 00 00 03 	add\.p gr0,gr3,gr0
171 [0-9a-f	 ]+: R_FRV_TLSOFF	x
172 [0-9a-f ]+:	00 00 10 03 	add\.p sp,gr3,gr0
173 [0-9a-f	 ]+: R_FRV_TLSOFF	x
174 [0-9a-f ]+:	00 01 00 11 	add\.p gr16,gr17,gr0
175 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
176 [0-9a-f ]+:	00 01 00 13 	add\.p gr16,gr19,gr0
177 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
178 [0-9a-f ]+:	00 01 00 03 	add\.p gr16,gr3,gr0
179 [0-9a-f	 ]+: R_FRV_TLSOFF	x
180 [0-9a-f ]+:	00 00 07 f1 	\*unknown\*
181 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
182 [0-9a-f ]+:	00 00 07 f3 	\*unknown\*
183 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
184 [0-9a-f ]+:	00 00 00 01 	add\.p gr0,sp,gr0
185 [0-9a-f	 ]+: R_FRV_TLSOFF	x
186 [0-9a-f ]+:	00 00 00 01 	add\.p gr0,sp,gr0
187 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
188 [0-9a-f ]+:	00 00 00 03 	add\.p gr0,gr3,gr0
189 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
190 [0-9a-f ]+:	00 00 17 f3 	\*unknown\*
191 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
192 [0-9a-f ]+:	00 00 10 03 	add\.p sp,gr3,gr0
193 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
194 [0-9a-f ]+:	00 01 07 f1 	\*unknown\*
195 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
196 [0-9a-f ]+:	00 01 07 f3 	\*unknown\*
197 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
198 [0-9a-f ]+:	00 01 00 01 	add\.p gr16,sp,gr0
199 [0-9a-f	 ]+: R_FRV_TLSOFF	x
200 [0-9a-f ]+:	00 01 00 01 	add\.p gr16,sp,gr0
201 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
202 [0-9a-f ]+:	00 01 00 03 	add\.p gr16,gr3,gr0
203 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
204 [0-9a-f ]+:	00 00 00 11 	add\.p gr0,gr17,gr0
205 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
206 [0-9a-f ]+:	00 00 00 13 	add\.p gr0,gr19,gr0
207 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
208 [0-9a-f ]+:	00 00 10 11 	add\.p sp,gr17,gr0
209 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
210 [0-9a-f ]+:	00 00 10 12 	add\.p sp,gr18,gr0
211 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
212 [0-9a-f ]+:	00 01 00 12 	add\.p gr16,gr18,gr0
213 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
214 [0-9a-f ]+:	00 00 07 f2 	\*unknown\*
215 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
216 [0-9a-f ]+:	00 00 00 02 	add\.p gr0,fp,gr0
217 [0-9a-f	 ]+: R_FRV_TLSOFF	x
218 [0-9a-f ]+:	00 00 00 02 	add\.p gr0,fp,gr0
219 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
220 [0-9a-f ]+:	00 00 10 02 	add\.p sp,fp,gr0
221 [0-9a-f	 ]+: R_FRV_TLSOFF	x
222 [0-9a-f ]+:	00 00 10 01 	add\.p sp,sp,gr0
223 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
224 [0-9a-f ]+:	00 00 10 02 	add\.p sp,fp,gr0
225 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
226 [0-9a-f ]+:	00 00 17 f2 	\*unknown\*
227 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
228 [0-9a-f ]+:	00 01 07 f2 	\*unknown\*
229 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
230 [0-9a-f ]+:	00 01 00 02 	add\.p gr16,fp,gr0
231 [0-9a-f	 ]+: R_FRV_TLSOFF	x
232 [0-9a-f ]+:	00 01 00 02 	add\.p gr16,fp,gr0
233 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
234 [0-9a-f ]+:	00 00 00 12 	add\.p gr0,gr18,gr0
235 [0-9a-f	 ]+: R_FRV_TLSOFF	\.tbss
236