Commit | Line | Data |
---|---|---|
bffbf940 JJ |
1 | #source: tlspic1.s |
2 | #source: tlspic2.s | |
3 | #as: --64 | |
4 | #ld: -shared -melf_x86_64 | |
5 | #objdump: -drj.text | |
6 | #target: x86_64-*-* | |
7 | ||
8 | .*: +file format elf64-x86-64 | |
9 | ||
10 | Disassembly of section .text: | |
11 | ||
12 | 0+1000 <fn1>: | |
13 | +1000: 55[ ]+push %rbp | |
14 | +1001: 48 89 e5[ ]+mov %rsp,%rbp | |
15 | +1004: 90[ ]+nop * | |
16 | +1005: 90[ ]+nop * | |
17 | +1006: 90[ ]+nop * | |
18 | +1007: 90[ ]+nop * | |
19 | # GD | |
5d669648 | 20 | +1008: 66 48 8d 3d 80 03 20[ ]+lea 0x200380\(%rip\),%rdi +# 201390 <.*> |
abcf1d52 | 21 | +100f: 00 * |
bffbf940 | 22 | # -> R_X86_64_DTPMOD64 sg1 |
1a114b12 | 23 | +1010: 66 66 48 e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 | 24 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
1a114b12 | 25 | +1017: [0-9a-f ]+ |
bffbf940 JJ |
26 | +1018: 90[ ]+nop * |
27 | +1019: 90[ ]+nop * | |
28 | +101a: 90[ ]+nop * | |
29 | +101b: 90[ ]+nop * | |
30 | # GD -> IE because variable is referenced through IE too | |
31 | +101c: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
32 | +1023: 00 00 * | |
5d669648 | 33 | +1025: 48 03 05 84 03 20 00[ ]+add 0x200384\(%rip\),%rax +# 2013b0 <.*> |
bffbf940 JJ |
34 | # -> R_X86_64_TPOFF64 sg2 |
35 | +102c: 90[ ]+nop * | |
36 | +102d: 90[ ]+nop * | |
37 | +102e: 90[ ]+nop * | |
38 | +102f: 90[ ]+nop * | |
39 | # GD against local variable | |
5d669648 | 40 | +1030: 66 48 8d 3d 08 03 20[ ]+lea 0x200308\(%rip\),%rdi +# 201340 <.*> |
abcf1d52 | 41 | +1037: 00 * |
bffbf940 | 42 | # -> R_X86_64_DTPMOD64 [0 0x2000000000000000] |
1a114b12 | 43 | +1038: 66 66 48 e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 | 44 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
1a114b12 | 45 | +103f: [0-9a-f ]+ |
bffbf940 JJ |
46 | +1040: 90[ ]+nop * |
47 | +1041: 90[ ]+nop * | |
48 | +1042: 90[ ]+nop * | |
49 | +1043: 90[ ]+nop * | |
50 | # GD -> IE against local variable referenced through IE too | |
51 | +1044: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
52 | +104b: 00 00 * | |
5d669648 | 53 | +104d: 48 03 05 fc 02 20 00[ ]+add 0x2002fc\(%rip\),%rax +# 201350 <.*> |
bffbf940 JJ |
54 | # -> R_X86_64_TPOFF64 *ABS*+0x24 |
55 | +1054: 90[ ]+nop * | |
56 | +1055: 90[ ]+nop * | |
57 | +1056: 90[ ]+nop * | |
58 | +1057: 90[ ]+nop * | |
59 | # GD against hidden and local variable | |
5d669648 | 60 | +1058: 66 48 8d 3d 58 03 20[ ]+lea 0x200358\(%rip\),%rdi +# 2013b8 <.*> |
abcf1d52 | 61 | +105f: 00 * |
bffbf940 | 62 | # -> R_X86_64_DTPMOD64 [0 0x4000000000000000] |
1a114b12 | 63 | +1060: 66 66 48 e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 | 64 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
1a114b12 | 65 | +1067: [0-9a-f ]+ |
bffbf940 JJ |
66 | +1068: 90[ ]+nop * |
67 | +1069: 90[ ]+nop * | |
68 | +106a: 90[ ]+nop * | |
69 | +106b: 90[ ]+nop * | |
70 | # GD -> IE against hidden and local variable referenced through IE too | |
71 | +106c: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
72 | +1073: 00 00 * | |
5d669648 | 73 | +1075: 48 03 05 4c 03 20 00[ ]+add 0x20034c\(%rip\),%rax +# 2013c8 <.*> |
bffbf940 JJ |
74 | # -> R_X86_64_TPOFF64 *ABS*+0x44 |
75 | +107c: 90[ ]+nop * | |
76 | +107d: 90[ ]+nop * | |
77 | +107e: 90[ ]+nop * | |
78 | +107f: 90[ ]+nop * | |
79 | # GD against hidden but not local variable | |
5d669648 | 80 | +1080: 66 48 8d 3d e8 02 20[ ]+lea 0x2002e8\(%rip\),%rdi +# 201370 <.*> |
abcf1d52 | 81 | +1087: 00 * |
bffbf940 | 82 | # -> R_X86_64_DTPMOD64 [0 0x6000000000000000] |
1a114b12 | 83 | +1088: 66 66 48 e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 | 84 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
1a114b12 | 85 | +108f: [0-9a-f ]+ |
bffbf940 JJ |
86 | +1090: 90[ ]+nop * |
87 | +1091: 90[ ]+nop * | |
88 | +1092: 90[ ]+nop * | |
89 | +1093: 90[ ]+nop * | |
90 | # GD -> IE against hidden but not local variable referenced through IE too | |
91 | +1094: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
92 | +109b: 00 00 * | |
5d669648 | 93 | +109d: 48 03 05 dc 02 20 00[ ]+add 0x2002dc\(%rip\),%rax +# 201380 <.*> |
bffbf940 JJ |
94 | # -> R_X86_64_TPOFF64 *ABS*+0x64 |
95 | +10a4: 90[ ]+nop * | |
96 | +10a5: 90[ ]+nop * | |
97 | +10a6: 90[ ]+nop * | |
98 | +10a7: 90[ ]+nop * | |
99 | # LD | |
5d669648 | 100 | +10a8: 48 8d 3d b1 02 20 00[ ]+lea 0x2002b1\(%rip\),%rdi +# 201360 <.*> |
bffbf940 | 101 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
85167a84 | 102 | +10af: e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 JJ |
103 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
104 | +10b4: 90[ ]+nop * | |
105 | +10b5: 90[ ]+nop * | |
106 | +10b6: 48 8d 90 20 00 00 00[ ]+lea 0x20\(%rax\),%rdx | |
107 | +10bd: 90[ ]+nop * | |
108 | +10be: 90[ ]+nop * | |
109 | +10bf: 4c 8d 88 26 00 00 00[ ]+lea 0x26\(%rax\),%r9 | |
110 | +10c6: 90[ ]+nop * | |
111 | +10c7: 90[ ]+nop * | |
112 | +10c8: 90[ ]+nop * | |
113 | +10c9: 90[ ]+nop * | |
114 | # LD against hidden and local variables | |
5d669648 | 115 | +10ca: 48 8d 3d 8f 02 20 00[ ]+lea 0x20028f\(%rip\),%rdi +# 201360 <.*> |
bffbf940 | 116 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
85167a84 | 117 | +10d1: e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 JJ |
118 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
119 | +10d6: 90[ ]+nop * | |
120 | +10d7: 90[ ]+nop * | |
121 | +10d8: 48 8d 90 40 00 00 00[ ]+lea 0x40\(%rax\),%rdx | |
122 | +10df: 90[ ]+nop * | |
123 | +10e0: 90[ ]+nop * | |
124 | +10e1: 48 8d 88 47 00 00 00[ ]+lea 0x47\(%rax\),%rcx | |
125 | +10e8: 90[ ]+nop * | |
126 | +10e9: 90[ ]+nop * | |
127 | +10ea: 90[ ]+nop * | |
128 | +10eb: 90[ ]+nop * | |
129 | # LD against hidden but not local variables | |
5d669648 | 130 | +10ec: 48 8d 3d 6d 02 20 00[ ]+lea 0x20026d\(%rip\),%rdi +# 201360 <.*> |
bffbf940 | 131 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
85167a84 | 132 | +10f3: e8 [0-9a-f ]+callq [0-9a-f]+ <.*> |
bffbf940 JJ |
133 | # -> R_X86_64_JUMP_SLOT __tls_get_addr |
134 | +10f8: 90[ ]+nop * | |
135 | +10f9: 90[ ]+nop * | |
136 | +10fa: 4c 8d a0 60 00 00 00[ ]+lea 0x60\(%rax\),%r12 | |
137 | +1101: 90[ ]+nop * | |
138 | +1102: 90[ ]+nop * | |
139 | +1103: 48 8d 88 65 00 00 00[ ]+lea 0x65\(%rax\),%rcx | |
140 | +110a: 90[ ]+nop * | |
141 | +110b: 90[ ]+nop * | |
142 | # IE against global var | |
143 | +110c: 64 48 8b 0c 25 00 00[ ]+mov %fs:0x0,%rcx | |
144 | +1113: 00 00 * | |
145 | +1115: 90[ ]+nop * | |
146 | +1116: 90[ ]+nop * | |
5d669648 | 147 | +1117: 48 03 0d 92 02 20 00[ ]+add 0x200292\(%rip\),%rcx +# 2013b0 <.*> |
bffbf940 JJ |
148 | # -> R_X86_64_TPOFF64 sg2 |
149 | +111e: 90[ ]+nop * | |
150 | +111f: 90[ ]+nop * | |
151 | +1120: 90[ ]+nop * | |
152 | +1121: 90[ ]+nop * | |
153 | # IE against local var | |
154 | +1122: 64 4c 8b 34 25 00 00[ ]+mov %fs:0x0,%r14 | |
155 | +1129: 00 00 * | |
156 | +112b: 90[ ]+nop * | |
157 | +112c: 90[ ]+nop * | |
5d669648 | 158 | +112d: 4c 03 35 1c 02 20 00[ ]+add 0x20021c\(%rip\),%r14 +# 201350 <.*> |
bffbf940 JJ |
159 | # -> R_X86_64_TPOFF64 *ABS*+0x24 |
160 | +1134: 90[ ]+nop * | |
161 | +1135: 90[ ]+nop * | |
162 | +1136: 90[ ]+nop * | |
163 | +1137: 90[ ]+nop * | |
164 | # IE against hidden and local var | |
165 | +1138: 64 48 8b 0c 25 00 00[ ]+mov %fs:0x0,%rcx | |
166 | +113f: 00 00 * | |
167 | +1141: 90[ ]+nop * | |
168 | +1142: 90[ ]+nop * | |
5d669648 | 169 | +1143: 48 03 0d 7e 02 20 00[ ]+add 0x20027e\(%rip\),%rcx +# 2013c8 <.*> |
bffbf940 JJ |
170 | # -> R_X86_64_TPOFF64 *ABS*+0x44 |
171 | +114a: 90[ ]+nop * | |
172 | +114b: 90[ ]+nop * | |
173 | +114c: 90[ ]+nop * | |
174 | +114d: 90[ ]+nop * | |
175 | # IE against hidden but not local var | |
176 | +114e: 64 48 8b 0c 25 00 00[ ]+mov %fs:0x0,%rcx | |
177 | +1155: 00 00 * | |
178 | +1157: 90[ ]+nop * | |
179 | +1158: 90[ ]+nop * | |
5d669648 | 180 | +1159: 48 03 0d 20 02 20 00[ ]+add 0x200220\(%rip\),%rcx +# 201380 <.*> |
bffbf940 JJ |
181 | # -> R_X86_64_TPOFF64 *ABS*+0x64 |
182 | +1160: 90[ ]+nop * | |
183 | +1161: 90[ ]+nop * | |
184 | +1162: 90[ ]+nop * | |
185 | +1163: 90[ ]+nop * | |
186 | # Direct access through %fs | |
187 | # IE against global var | |
5d669648 | 188 | +1164: 48 8b 0d 1d 02 20 00[ ]+mov 0x20021d\(%rip\),%rcx +# 201388 <.*> |
bffbf940 JJ |
189 | # -> R_X86_64_TPOFF64 sg5 |
190 | +116b: 90[ ]+nop * | |
191 | +116c: 90[ ]+nop * | |
192 | +116d: 64 48 8b 11[ ]+mov %fs:\(%rcx\),%rdx | |
193 | +1171: 90[ ]+nop * | |
194 | +1172: 90[ ]+nop * | |
195 | +1173: 90[ ]+nop * | |
196 | +1174: 90[ ]+nop * | |
197 | # IE against local var | |
5d669648 | 198 | +1175: 4c 8b 15 dc 01 20 00[ ]+mov 0x2001dc\(%rip\),%r10 +# 201358 <.*> |
bffbf940 JJ |
199 | # -> R_X86_64_TPOFF64 *ABS*+0x30 |
200 | +117c: 90[ ]+nop * | |
201 | +117d: 90[ ]+nop * | |
202 | +117e: 64 4d 8b 22[ ]+mov %fs:\(%r10\),%r12 | |
203 | +1182: 90[ ]+nop * | |
204 | +1183: 90[ ]+nop * | |
205 | +1184: 90[ ]+nop * | |
206 | +1185: 90[ ]+nop * | |
207 | # IE against hidden and local var | |
5d669648 | 208 | +1186: 48 8b 15 13 02 20 00[ ]+mov 0x200213\(%rip\),%rdx +# 2013a0 <.*> |
bffbf940 JJ |
209 | # -> R_X86_64_TPOFF64 *ABS*+0x50 |
210 | +118d: 90[ ]+nop * | |
211 | +118e: 90[ ]+nop * | |
212 | +118f: 64 48 8b 12[ ]+mov %fs:\(%rdx\),%rdx | |
213 | +1193: 90[ ]+nop * | |
214 | +1194: 90[ ]+nop * | |
215 | +1195: 90[ ]+nop * | |
216 | +1196: 90[ ]+nop * | |
217 | # IE against hidden but not local var | |
5d669648 | 218 | +1197: 48 8b 0d 0a 02 20 00[ ]+mov 0x20020a\(%rip\),%rcx +# 2013a8 <.*> |
bffbf940 JJ |
219 | # -> R_X86_64_TPOFF64 *ABS*+0x70 |
220 | +119e: 90[ ]+nop * | |
221 | +119f: 90[ ]+nop * | |
222 | +11a0: 64 48 8b 11[ ]+mov %fs:\(%rcx\),%rdx | |
223 | +11a4: 90[ ]+nop * | |
224 | +11a5: 90[ ]+nop * | |
225 | +11a6: 90[ ]+nop * | |
226 | +11a7: 90[ ]+nop * | |
227 | +11a8: c9[ ]+leaveq * | |
228 | +11a9: c3[ ]+retq * | |
229 | +11aa: 90[ ]+nop * | |
230 | +11ab: 90[ ]+nop * |