OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [ld/] [testsuite/] [ld-x86-64/] [tlsbin.dd] - Blame information for rev 853

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
#source: tlsbinpic.s
2
#source: tlsbin.s
3
#as: --64
4
#ld: -shared -melf_x86_64
5
#objdump: -drj.text
6
#target: x86_64-*-*
7
 
8
# PT_TLS layout is:
9
# Offset from   Offset from     Name
10
# TCB base      TCB end
11
# 0x00          -0xa0           sg1..sg8
12
# 0x20          -0x80           sl1..sl8
13
# 0x40          -0x60           sh1..sh8
14
# 0x60          -0x40           bg1..bg8
15
# 0x80          -0x20           bl1..bl8
16
 
17
.*: +file format elf64-x86-64
18
 
19
Disassembly of section .text:
20
 
21
0+401000 :
22
  401000:       55[     ]+push   %rbp
23
  401001:       48 89 e5[       ]+mov    %rsp,%rbp
24
#  GD -> IE because variable is not defined in executable
25
  401004:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
26
  40100b:       00 00 *
27
  40100d:       48 03 05 d4 03 20 00[   ]+add    0x2003d4\(%rip\),%rax +# 6013e8 <.*>
28
#                               -> R_X86_64_TPOFF64     sG1
29
  401014:       90[     ]+nop *
30
  401015:       90[     ]+nop *
31
  401016:       90[     ]+nop *
32
  401017:       90[     ]+nop *
33
#  GD -> IE because variable is not defined in executable where
34
#  the variable is referenced through IE too
35
  401018:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
36
  40101f:       00 00 *
37
  401021:       48 03 05 b0 03 20 00[   ]+add    0x2003b0\(%rip\),%rax +# 6013d8 <.*>
38
#                               -> R_X86_64_TPOFF64     sG2
39
  401028:       90[     ]+nop *
40
  401029:       90[     ]+nop *
41
  40102a:       90[     ]+nop *
42
  40102b:       90[     ]+nop *
43
#  GD -> LE with global variable defined in executable
44
  40102c:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
45
  401033:       00 00 *
46
  401035:       48 8d 80 60 ff ff ff[   ]+lea    -0xa0\(%rax\),%rax
47
#                                                       sg1
48
  40103c:       90[     ]+nop *
49
  40103d:       90[     ]+nop *
50
  40103e:       90[     ]+nop *
51
  40103f:       90[     ]+nop *
52
#  GD -> LE with local variable defined in executable
53
  401040:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
54
  401047:       00 00 *
55
  401049:       48 8d 80 80 ff ff ff[   ]+lea    -0x80\(%rax\),%rax
56
#                                                       sl1
57
  401050:       90[     ]+nop *
58
  401051:       90[     ]+nop *
59
  401052:       90[     ]+nop *
60
  401053:       90[     ]+nop *
61
#  GD -> LE with hidden variable defined in executable
62
  401054:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
63
  40105b:       00 00 *
64
  40105d:       48 8d 80 a0 ff ff ff[   ]+lea    -0x60\(%rax\),%rax
65
#                                                       sh1
66
  401064:       90[     ]+nop *
67
  401065:       90[     ]+nop *
68
  401066:       90[     ]+nop *
69
  401067:       90[     ]+nop *
70
#  LD -> LE
71
  401068:       66 66 66 64 48 8b 04[   ]+mov    %fs:0x0,%rax
72
  40106f:       25 00 00 00 00 *
73
  401074:       90[     ]+nop *
74
  401075:       90[     ]+nop *
75
  401076:       48 8d 90 81 ff ff ff[   ]+lea    -0x7f\(%rax\),%rdx
76
#                                                       sl1+1
77
  40107d:       90[     ]+nop *
78
  40107e:       90[     ]+nop *
79
  40107f:       4c 8d 88 86 ff ff ff[   ]+lea    -0x7a\(%rax\),%r9
80
#                                                       sl2+2
81
  401086:       90[     ]+nop *
82
  401087:       90[     ]+nop *
83
  401088:       90[     ]+nop *
84
  401089:       90[     ]+nop *
85
#  LD -> LE against hidden variables
86
  40108a:       66 66 66 64 48 8b 04[   ]+mov    %fs:0x0,%rax
87
  401091:       25 00 00 00 00 *
88
  401096:       90[     ]+nop *
89
  401097:       90[     ]+nop *
90
  401098:       48 8d 90 a0 ff ff ff[   ]+lea    -0x60\(%rax\),%rdx
91
#                                                       sh1
92
  40109f:       90[     ]+nop *
93
  4010a0:       90[     ]+nop *
94
  4010a1:       48 8d 88 a7 ff ff ff[   ]+lea    -0x59\(%rax\),%rcx
95
#                                                       sh2+3
96
  4010a8:       90[     ]+nop *
97
  4010a9:       90[     ]+nop *
98
  4010aa:       90[     ]+nop *
99
  4010ab:       90[     ]+nop *
100
#  IE against global var
101
  4010ac:       64 4c 8b 0c 25 00 00[   ]+mov    %fs:0x0,%r9
102
  4010b3:       00 00 *
103
  4010b5:       90[     ]+nop *
104
  4010b6:       90[     ]+nop *
105
  4010b7:       4c 03 0d 1a 03 20 00[   ]+add    0x20031a\(%rip\),%r9 +# 6013d8 <.*>
106
#                               -> R_X86_64_TPOFF64     sG2
107
  4010be:       90[     ]+nop *
108
  4010bf:       90[     ]+nop *
109
  4010c0:       90[     ]+nop *
110
  4010c1:       90[     ]+nop *
111
#  IE -> LE against global var defined in exec
112
  4010c2:       64 4c 8b 14 25 00 00[   ]+mov    %fs:0x0,%r10
113
  4010c9:       00 00 *
114
  4010cb:       90[     ]+nop *
115
  4010cc:       90[     ]+nop *
116
  4010cd:       4d 8d 92 60 ff ff ff[   ]+lea    -0xa0\(%r10\),%r10
117
#                                                       sg1
118
  4010d4:       90[     ]+nop *
119
  4010d5:       90[     ]+nop *
120
  4010d6:       90[     ]+nop *
121
  4010d7:       90[     ]+nop *
122
#  IE -> LE against local var
123
  4010d8:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
124
  4010df:       00 00 *
125
  4010e1:       90[     ]+nop *
126
  4010e2:       90[     ]+nop *
127
  4010e3:       48 8d 80 80 ff ff ff[   ]+lea    -0x80\(%rax\),%rax
128
#                                                       sl1
129
  4010ea:       90[     ]+nop *
130
  4010eb:       90[     ]+nop *
131
  4010ec:       90[     ]+nop *
132
  4010ed:       90[     ]+nop *
133
#  IE -> LE against hidden var
134
  4010ee:       64 48 8b 0c 25 00 00[   ]+mov    %fs:0x0,%rcx
135
  4010f5:       00 00 *
136
  4010f7:       90[     ]+nop *
137
  4010f8:       90[     ]+nop *
138
  4010f9:       48 8d 89 a0 ff ff ff[   ]+lea    -0x60\(%rcx\),%rcx
139
#                                                       sh1
140
  401100:       90[     ]+nop *
141
  401101:       90[     ]+nop *
142
  401102:       90[     ]+nop *
143
  401103:       90[     ]+nop *
144
#  Direct access through %fs
145
#  IE against global var
146
  401104:       48 8b 0d c5 02 20 00[   ]+mov    0x2002c5\(%rip\),%rcx +# 6013d0 <.*>
147
#                               -> R_X86_64_TPOFF64     sG5
148
  40110b:       90[     ]+nop *
149
  40110c:       90[     ]+nop *
150
  40110d:       64 48 8b 11[    ]+mov    %fs:\(%rcx\),%rdx
151
  401111:       90[     ]+nop *
152
  401112:       90[     ]+nop *
153
  401113:       90[     ]+nop *
154
  401114:       90[     ]+nop *
155
#  IE->LE against local var
156
  401115:       49 c7 c3 90 ff ff ff[   ]+mov    \$0xf+90,%r11
157
#                                                       sl5
158
  40111c:       90[     ]+nop *
159
  40111d:       90[     ]+nop *
160
  40111e:       64 4d 8b 23[    ]+mov    %fs:\(%r11\),%r12
161
  401122:       90[     ]+nop *
162
  401123:       90[     ]+nop *
163
  401124:       90[     ]+nop *
164
  401125:       90[     ]+nop *
165
#  IE->LE against hidden var
166
  401126:       48 c7 c2 b0 ff ff ff[   ]+mov    \$0xf+b0,%rdx
167
  40112d:       90[     ]+nop *
168
  40112e:       90[     ]+nop *
169
  40112f:       64 48 8b 12[    ]+mov    %fs:\(%rdx\),%rdx
170
#                                                       sh5
171
  401133:       90[     ]+nop *
172
  401134:       90[     ]+nop *
173
  401135:       90[     ]+nop *
174
  401136:       90[     ]+nop *
175
  401137:       c9[     ]+leaveq *
176
  401138:       c3[     ]+retq *
177
  401139:       90[     ]+nop *
178
  40113a:       90[     ]+nop *
179
  40113b:       90[     ]+nop *
180
 
181
0+40113c <_start>:
182
  40113c:       55[     ]+push   %rbp
183
  40113d:       48 89 e5[       ]+mov    %rsp,%rbp
184
#  IE against global var
185
  401140:       64 4c 8b 1c 25 00 00[   ]+mov    %fs:0x0,%r11
186
  401147:       00 00 *
187
  401149:       90[     ]+nop *
188
  40114a:       90[     ]+nop *
189
  40114b:       4c 03 1d 8e 02 20 00[   ]+add    0x20028e\(%rip\),%r11 +# 6013e0 <.*>
190
#                               -> R_X86_64_TPOFF64     sG6
191
  401152:       90[     ]+nop *
192
  401153:       90[     ]+nop *
193
  401154:       90[     ]+nop *
194
  401155:       90[     ]+nop *
195
#  IE -> LE against global var defined in exec
196
  401156:       64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
197
  40115d:       00 00 *
198
  40115f:       90[     ]+nop *
199
  401160:       90[     ]+nop *
200
  401161:       48 8d 92 d4 ff ff ff[   ]+lea    -0x2c\(%rdx\),%rdx
201
#                                                       bg6
202
  401168:       90[     ]+nop *
203
  401169:       90[     ]+nop *
204
  40116a:       90[     ]+nop *
205
  40116b:       90[     ]+nop *
206
#  IE -> LE against local var
207
  40116c:       64 4c 8b 24 25 00 00[   ]+mov    %fs:0x0,%r12
208
  401173:       00 00 *
209
  401175:       90[     ]+nop *
210
  401176:       90[     ]+nop *
211
  401177:       49 81 c4 f4 ff ff ff[   ]+add    \$0xf+f4,%r12
212
#                                                       bl6
213
  40117e:       90[     ]+nop *
214
  40117f:       90[     ]+nop *
215
  401180:       90[     ]+nop *
216
  401181:       90[     ]+nop *
217
#  direct %fs access IE -> LE against local var
218
  401182:       48 c7 c2 fc ff ff ff[   ]+mov    \$0xf+fc,%rdx
219
#                                                       bl8
220
  401189:       90[     ]+nop *
221
  40118a:       90[     ]+nop *
222
  40118b:       64 48 8b 02[    ]+mov    %fs:\(%rdx\),%rax
223
  40118f:       90[     ]+nop *
224
  401190:       90[     ]+nop *
225
  401191:       90[     ]+nop *
226
  401192:       90[     ]+nop *
227
#  IE -> LE against hidden but not local var
228
  401193:       64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
229
  40119a:       00 00 *
230
  40119c:       90[     ]+nop *
231
  40119d:       90[     ]+nop *
232
  40119e:       48 8d 92 b4 ff ff ff[   ]+lea    -0x4c\(%rdx\),%rdx
233
#                                                       sh6
234
  4011a5:       90[     ]+nop *
235
  4011a6:       90[     ]+nop *
236
  4011a7:       90[     ]+nop *
237
  4011a8:       90[     ]+nop *
238
#  direct %fs access IE -> LE against hidden but not local var
239
  4011a9:       48 c7 c2 bc ff ff ff[   ]+mov    \$0xf+bc,%rdx
240
#                                                       sh8
241
  4011b0:       90[     ]+nop *
242
  4011b1:       90[     ]+nop *
243
  4011b2:       64 48 8b 02[    ]+mov    %fs:\(%rdx\),%rax
244
  4011b6:       90[     ]+nop *
245
  4011b7:       90[     ]+nop *
246
  4011b8:       90[     ]+nop *
247
  4011b9:       90[     ]+nop *
248
#  LE, global var defined in exec
249
  4011ba:       64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
250
  4011c1:       00 00 *
251
  4011c3:       90[     ]+nop *
252
  4011c4:       90[     ]+nop *
253
  4011c5:       48 8d 90 64 ff ff ff[   ]+lea    -0x9c\(%rax\),%rdx
254
#                                                       sg2
255
  4011cc:       90[     ]+nop *
256
  4011cd:       90[     ]+nop *
257
  4011ce:       90[     ]+nop *
258
  4011cf:       90[     ]+nop *
259
#  LE, local var, non-canonical sequence
260
  4011d0:       49 c7 c1 e6 ff ff ff[   ]+mov    \$0xf+e6,%r9
261
#                                                       bl2+2
262
  4011d7:       90[     ]+nop *
263
  4011d8:       90[     ]+nop *
264
  4011d9:       64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
265
  4011e0:       00 00 *
266
  4011e2:       90[     ]+nop *
267
  4011e3:       90[     ]+nop *
268
  4011e4:       4c 01 ca[       ]+add    %r9,%rdx
269
  4011e7:       90[     ]+nop *
270
  4011e8:       90[     ]+nop *
271
  4011e9:       90[     ]+nop *
272
  4011ea:       90[     ]+nop *
273
#  LE, hidden var defined in exec, non-canonical sequence
274
  4011eb:       64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
275
  4011f2:       00 00 *
276
  4011f4:       90[     ]+nop *
277
  4011f5:       90[     ]+nop *
278
  4011f6:       48 81 c2 a5 ff ff ff[   ]+add    \$0xf+a5,%rdx
279
#                                                       sh2+1
280
  4011fd:       90[     ]+nop *
281
  4011fe:       90[     ]+nop *
282
  4011ff:       90[     ]+nop *
283
  401200:       90[     ]+nop *
284
#  Direct %fs access
285
#  LE, global var defined in exec
286
  401201:       64 48 8b 04 25 68 ff[   ]+mov    %fs:0xf+68,%rax
287
  401208:       ff ff *
288
#                                                       sg3
289
  40120a:       90[     ]+nop *
290
  40120b:       90[     ]+nop *
291
  40120c:       90[     ]+nop *
292
  40120d:       90[     ]+nop *
293
#  LE, local var
294
  40120e:       64 4c 8b 14 25 eb ff[   ]+mov    %fs:0xf+eb,%r10
295
  401215:       ff ff *
296
#                                                       bl3+3
297
  401217:       90[     ]+nop *
298
  401218:       90[     ]+nop *
299
  401219:       90[     ]+nop *
300
  40121a:       90[     ]+nop *
301
#  LE, hidden var defined in exec
302
  40121b:       64 48 8b 14 25 a9 ff[   ]+mov    %fs:0xf+a9,%rdx
303
  401222:       ff ff *
304
#                                                       sh3+1
305
  401224:       90[     ]+nop *
306
  401225:       90[     ]+nop *
307
  401226:       90[     ]+nop *
308
  401227:       90[     ]+nop *
309
  401228:       c9[     ]+leaveq *
310
  401229:       c3[     ]+retq *

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.