Commit | Line | Data |
---|---|---|
bffbf940 JJ |
1 | #source: tlspic1.s |
2 | #source: tlspic2.s | |
3 | #as: --64 | |
e41b3a13 | 4 | #ld: -shared -melf_x86_64 --no-ld-generated-unwind-info |
5db04b09 | 5 | #objdump: -drj.text -Mintel64 |
bffbf940 JJ |
6 | #target: x86_64-*-* |
7 | ||
5a68afcf | 8 | .*: +file format elf64-x86-64.* |
bffbf940 JJ |
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 | |
a24bb4f0 | 20 | +1008: 66 48 8d 3d ([0-9a-f]{2} ){3}[ ]+data16 lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5a68afcf | 21 | +100f: [0-9a-f ]+ |
bffbf940 | 22 | # -> R_X86_64_DTPMOD64 sg1 |
a72d2af2 | 23 | +1010: 66 66 48 e8 [0-9a-f ]+data16 data16 rex.W 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 * | |
a24bb4f0 | 33 | +1025: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 40 | +1030: 66 48 8d 3d ([0-9a-f]{2} ){3}[ ]+data16 lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5a68afcf | 41 | +1037: [0-9a-f ]+ |
bffbf940 | 42 | # -> R_X86_64_DTPMOD64 [0 0x2000000000000000] |
a72d2af2 | 43 | +1038: 66 66 48 e8 [0-9a-f ]+data16 data16 rex.W 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 * | |
a24bb4f0 | 53 | +104d: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 60 | +1058: 66 48 8d 3d ([0-9a-f]{2} ){3}[ ]+data16 lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5a68afcf | 61 | +105f: [0-9a-f ]+ |
bffbf940 | 62 | # -> R_X86_64_DTPMOD64 [0 0x4000000000000000] |
a72d2af2 | 63 | +1060: 66 66 48 e8 [0-9a-f ]+data16 data16 rex.W 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 * | |
a24bb4f0 | 73 | +1075: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 80 | +1080: 66 48 8d 3d ([0-9a-f]{2} ){3}[ ]+data16 lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5a68afcf | 81 | +1087: [0-9a-f ]+ |
bffbf940 | 82 | # -> R_X86_64_DTPMOD64 [0 0x6000000000000000] |
a72d2af2 | 83 | +1088: 66 66 48 e8 [0-9a-f ]+data16 data16 rex.W 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 * | |
a24bb4f0 | 93 | +109d: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 100 | +10a8: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 115 | +10ca: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 130 | +10ec: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
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 * | |
a24bb4f0 | 147 | +1117: 48 03 0d ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*> |
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 * | |
a24bb4f0 | 158 | +112d: 4c 03 35 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%r14 +# [0-9a-f]+ <.*> |
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 * | |
a24bb4f0 | 169 | +1143: 48 03 0d ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*> |
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 * | |
a24bb4f0 | 180 | +1159: 48 03 0d ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 188 | +1164: 48 8b 0d ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 198 | +1175: 4c 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+\(%rip\),%r10 +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 208 | +1186: 48 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+\(%rip\),%rdx +# [0-9a-f]+ <.*> |
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 | |
a24bb4f0 | 218 | +1197: 48 8b 0d ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*> |
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 * | |
5c98a14e JJ |
227 | +11a8: 49 bb ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%r11 |
228 | +11af: ([0-9a-f]{2} ){3} | |
229 | +11b2: 53[ ]+push %rbx | |
230 | +11b3: 53[ ]+push %rbx | |
231 | +11b4: 48 8d 1d ed ff ff ff[ ]+lea -0x13\(%rip\),%rbx +# [0-9a-f]+ <fn1\+0x[0-9a-f]+> | |
232 | +11bb: 4c 01 db[ ]+add %r11,%rbx | |
233 | +11be: 90[ ]+nop * | |
234 | +11bf: 90[ ]+nop * | |
235 | +11c0: 90[ ]+nop * | |
236 | +11c1: 90[ ]+nop * | |
237 | # -mcmodel=large sequences | |
238 | # | |
239 | # -mcmodel=large GD | |
a24bb4f0 | 240 | +11c2: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
241 | # -> R_X86_64_DTPMOD64 sg1 |
242 | +11c9: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
243 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
244 | +11d0: ([0-9a-f]{2} ){3} | |
245 | +11d3: 48 01 d8[ ]+add %rbx,%rax | |
246 | +11d6: ff d0[ ]+callq \*%rax | |
247 | +11d8: 90[ ]+nop * | |
248 | +11d9: 90[ ]+nop * | |
249 | +11da: 90[ ]+nop * | |
250 | +11db: 90[ ]+nop * | |
251 | # -mcmodel=large GD -> IE because variable is referenced through IE too | |
252 | # -> R_X86_64_TPOFF64 sg2 | |
253 | +11dc: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
254 | +11e3: 00 00 | |
a24bb4f0 | 255 | +11e5: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
5c98a14e JJ |
256 | # -> R_X86_64_TPOFF64 sg2 |
257 | +11ec: 66 0f 1f 44 00 00[ ]+nopw 0x0\(%rax,%rax,1\) | |
258 | +11f2: 90[ ]+nop * | |
259 | +11f3: 90[ ]+nop * | |
260 | +11f4: 90[ ]+nop * | |
261 | +11f5: 90[ ]+nop * | |
262 | # -mcmodel=large GD against local variable | |
a24bb4f0 | 263 | +11f6: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
264 | # -> R_X86_64_DTPMOD64 [0 0x2000000000000000] |
265 | +11fd: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
266 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
267 | +1204: ([0-9a-f]{2} ){3} | |
268 | +1207: 48 01 d8[ ]+add %rbx,%rax | |
269 | +120a: ff d0[ ]+callq \*%rax | |
270 | +120c: 90[ ]+nop * | |
271 | +120d: 90[ ]+nop * | |
272 | +120e: 90[ ]+nop * | |
273 | +120f: 90[ ]+nop * | |
274 | # -mcmodel=large GD -> IE against local variable referenced through IE too | |
275 | +1210: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
276 | +1217: 00 00 | |
a24bb4f0 | 277 | +1219: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
5c98a14e JJ |
278 | # -> R_X86_64_TPOFF64 *ABS*+0x24 |
279 | +1220: 66 0f 1f 44 00 00[ ]+nopw 0x0\(%rax,%rax,1\) | |
280 | +1226: 90[ ]+nop * | |
281 | +1227: 90[ ]+nop * | |
282 | +1228: 90[ ]+nop * | |
283 | +1229: 90[ ]+nop * | |
284 | # -mcmodel=large GD against hidden and local variable | |
a24bb4f0 | 285 | +122a: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
286 | # -> R_X86_64_DTPMOD64 [0 0x4000000000000000] |
287 | +1231: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
288 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
289 | +1238: ([0-9a-f]{2} ){3} | |
290 | +123b: 48 01 d8[ ]+add %rbx,%rax | |
291 | +123e: ff d0[ ]+callq \*%rax | |
292 | +1240: 90[ ]+nop * | |
293 | +1241: 90[ ]+nop * | |
294 | +1242: 90[ ]+nop * | |
295 | +1243: 90[ ]+nop * | |
296 | # -mcmodel=large GD -> IE against hidden and local variable referenced through IE too | |
297 | +1244: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
298 | +124b: 00 00 | |
a24bb4f0 | 299 | +124d: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
5c98a14e JJ |
300 | # -> R_X86_64_TPOFF64 *ABS*+0x44 |
301 | +1254: 66 0f 1f 44 00 00[ ]+nopw 0x0\(%rax,%rax,1\) | |
302 | +125a: 90[ ]+nop * | |
303 | +125b: 90[ ]+nop * | |
304 | +125c: 90[ ]+nop * | |
305 | +125d: 90[ ]+nop * | |
306 | # -mcmodel=large GD against hidden but not local variable | |
a24bb4f0 | 307 | +125e: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
308 | # -> R_X86_64_DTPMOD64 [0 0x6000000000000000] |
309 | +1265: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
310 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
311 | +126c: ([0-9a-f]{2} ){3} | |
312 | +126f: 48 01 d8[ ]+add %rbx,%rax | |
313 | +1272: ff d0[ ]+callq \*%rax | |
314 | +1274: 90[ ]+nop * | |
315 | +1275: 90[ ]+nop * | |
316 | +1276: 90[ ]+nop * | |
317 | +1277: 90[ ]+nop * | |
318 | # -mcmodel=large GD -> IE against hidden but not local variable referenced through IE too | |
319 | +1278: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax | |
320 | +127f: 00 00 | |
a24bb4f0 | 321 | +1281: 48 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*> |
5c98a14e JJ |
322 | # -> R_X86_64_TPOFF64 *ABS*+0x64 |
323 | +1288: 66 0f 1f 44 00 00[ ]+nopw 0x0\(%rax,%rax,1\) | |
324 | +128e: 90[ ]+nop * | |
325 | +128f: 90[ ]+nop * | |
326 | +1290: 90[ ]+nop * | |
327 | +1291: 90[ ]+nop * | |
328 | # -mcmodel=large LD | |
a24bb4f0 | 329 | +1292: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
330 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
331 | +1299: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
332 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
333 | +12a0: ([0-9a-f]{2} ){3} | |
334 | +12a3: 48 01 d8[ ]+add %rbx,%rax | |
335 | +12a6: ff d0[ ]+callq \*%rax | |
336 | +12a8: 90[ ]+nop * | |
337 | +12a9: 90[ ]+nop * | |
338 | +12aa: 48 8d 90 20 00 00 00[ ]+lea 0x20\(%rax\),%rdx | |
339 | +12b1: 90[ ]+nop * | |
340 | +12b2: 90[ ]+nop * | |
341 | +12b3: 4c 8d 88 26 00 00 00[ ]+lea 0x26\(%rax\),%r9 | |
342 | +12ba: 90[ ]+nop * | |
343 | +12bb: 90[ ]+nop * | |
344 | +12bc: 90[ ]+nop * | |
345 | +12bd: 90[ ]+nop * | |
346 | # -mcmodel=large LD against hidden and local variables | |
a24bb4f0 | 347 | +12be: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
348 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
349 | +12c5: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
350 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
351 | +12cc: ([0-9a-f]{2} ){3} | |
352 | +12cf: 48 01 d8[ ]+add %rbx,%rax | |
353 | +12d2: ff d0[ ]+callq \*%rax | |
354 | +12d4: 90[ ]+nop * | |
355 | +12d5: 90[ ]+nop * | |
356 | +12d6: 48 8d 90 40 00 00 00[ ]+lea 0x40\(%rax\),%rdx | |
357 | +12dd: 90[ ]+nop * | |
358 | +12de: 90[ ]+nop * | |
359 | +12df: 48 8d 88 47 00 00 00[ ]+lea 0x47\(%rax\),%rcx | |
360 | +12e6: 90[ ]+nop * | |
361 | +12e7: 90[ ]+nop * | |
362 | +12e8: 90[ ]+nop * | |
363 | +12e9: 90[ ]+nop * | |
364 | # -mcmodel=large LD against hidden but not local variables | |
a24bb4f0 | 365 | +12ea: 48 8d 3d ([0-9a-f]{2} ){4}[ ]+lea 0x[0-9a-f]+\(%rip\),%rdi +# [0-9a-f]+ <.*> |
5c98a14e JJ |
366 | # -> R_X86_64_DTPMOD64 [0 0x000000000000000] |
367 | +12f1: 48 b8 ([0-9a-f]{2} ){5}[ ]+movabs \$0x[0-9a-f]+,%rax | |
368 | # -> R_X86_64_JUMP_SLOT __tls_get_addr | |
369 | +12f8: ([0-9a-f]{2} ){3} | |
370 | +12fb: 48 01 d8[ ]+add %rbx,%rax | |
371 | +12fe: ff d0[ ]+callq \*%rax | |
372 | +1300: 90[ ]+nop * | |
373 | +1301: 90[ ]+nop * | |
374 | +1302: 4c 8d a0 60 00 00 00[ ]+lea 0x60\(%rax\),%r12 | |
375 | +1309: 90[ ]+nop * | |
376 | +130a: 90[ ]+nop * | |
377 | +130b: 48 8d 88 65 00 00 00[ ]+lea 0x65\(%rax\),%rcx | |
378 | +1312: 90[ ]+nop * | |
379 | +1313: 90[ ]+nop * | |
380 | +1314: 90[ ]+nop * | |
381 | +1315: 90[ ]+nop * | |
382 | +1316: 5b[ ]+pop %rbx | |
383 | +1317: 5b[ ]+pop %rbx | |
384 | +1318: c9[ ]+leaveq | |
385 | +1319: c3[ ]+retq |