Automatic date update in version.in
[binutils-gdb.git] / ld / testsuite / ld-x86-64 / tlsbindesc.dd
blob601dfc2fc6d00a63f50c5023013ce360aa7e0544
1 #source: tlsbindesc.s
2 #source: tlsbin.s
3 #as: --64
4 #ld: -shared -melf_x86_64 --no-ld-generated-unwind-info
5 #objdump: -drj.text
6 #target: x86_64-*-*
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
17 .*: +file format elf64-x86-64.*
19 Disassembly of section .text:
21 [0-9a-f]+ <fn2>:
22  +[0-9a-f]+:    55[     ]+push   %rbp
23  +[0-9a-f]+:    48 89 e5[       ]+mov    %rsp,%rbp
24 #  GD -> IE because variable is not defined in executable
25  +[0-9a-f]+:    48 8b 05 ([0-9a-f]{2} ){4}[     ]+mov    0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*>
26 #                               -> R_X86_64_TPOFF64     sG1
27  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
28  +[0-9a-f]+:    90[     ]+nop *
29  +[0-9a-f]+:    90[     ]+nop *
30  +[0-9a-f]+:    90[     ]+nop *
31  +[0-9a-f]+:    90[     ]+nop *
32 #  GD -> IE because variable is not defined in executable where
33 #  the variable is referenced through IE too
34  +[0-9a-f]+:    48 8b 05 ([0-9a-f]{2} ){4}[     ]+mov    0x[0-9a-f]+\(%rip\),%rax +# [0-9a-f]+ <.*>
35 #                               -> R_X86_64_TPOFF64     sG2
36  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
37  +[0-9a-f]+:    90[     ]+nop *
38  +[0-9a-f]+:    90[     ]+nop *
39  +[0-9a-f]+:    90[     ]+nop *
40  +[0-9a-f]+:    90[     ]+nop *
41 #  GD -> LE with global variable defined in executable
42  +[0-9a-f]+:    48 c7 c0 60 ff ff ff[   ]+mov    \$0xf+60,%rax
43 #                                                       sg1
44  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
45  +[0-9a-f]+:    90[     ]+nop *
46  +[0-9a-f]+:    90[     ]+nop *
47  +[0-9a-f]+:    90[     ]+nop *
48  +[0-9a-f]+:    90[     ]+nop *
49 #  GD -> LE with local variable defined in executable
50  +[0-9a-f]+:    48 c7 c0 80 ff ff ff[   ]+mov    \$0xf+80,%rax
51 #                                                       sl1
52  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
53  +[0-9a-f]+:    90[     ]+nop *
54  +[0-9a-f]+:    90[     ]+nop *
55  +[0-9a-f]+:    90[     ]+nop *
56  +[0-9a-f]+:    90[     ]+nop *
57 #  GD -> LE with hidden variable defined in executable
58  +[0-9a-f]+:    48 c7 c0 a0 ff ff ff[   ]+mov    \$0xf+a0,%rax
59 #                                                       sh1
60  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
61  +[0-9a-f]+:    90[     ]+nop *
62  +[0-9a-f]+:    90[     ]+nop *
63  +[0-9a-f]+:    90[     ]+nop *
64  +[0-9a-f]+:    90[     ]+nop *
65 #  LD -> LE
66  +[0-9a-f]+:    48 c7 c0 00 00 00 00[   ]+mov    \$0x0,%rax
67  +[0-9a-f]+:    66 90[  ]+xchg   %ax,%ax
68  +[0-9a-f]+:    90[     ]+nop *
69  +[0-9a-f]+:    90[     ]+nop *
70  +[0-9a-f]+:    48 8d 90 81 ff ff ff[   ]+lea    -0x7f\(%rax\),%rdx
71 #                                                       sl1+1
72  +[0-9a-f]+:    90[     ]+nop *
73  +[0-9a-f]+:    90[     ]+nop *
74  +[0-9a-f]+:    4c 8d 88 86 ff ff ff[   ]+lea    -0x7a\(%rax\),%r9
75 #                                                       sl2+2
76  +[0-9a-f]+:    90[     ]+nop *
77  +[0-9a-f]+:    90[     ]+nop *
78  +[0-9a-f]+:    90[     ]+nop *
79  +[0-9a-f]+:    90[     ]+nop *
80 #  LD -> LE against hidden variables
81  +[0-9a-f]+:    48 8d 90 a0 ff ff ff[   ]+lea    -0x60\(%rax\),%rdx
82 #                                                       sh1
83  +[0-9a-f]+:    90[     ]+nop *
84  +[0-9a-f]+:    90[     ]+nop *
85  +[0-9a-f]+:    48 8d 88 a7 ff ff ff[   ]+lea    -0x59\(%rax\),%rcx
86 #                                                       sh2+3
87  +[0-9a-f]+:    90[     ]+nop *
88  +[0-9a-f]+:    90[     ]+nop *
89  +[0-9a-f]+:    90[     ]+nop *
90  +[0-9a-f]+:    90[     ]+nop *
91 #  IE against global var
92  +[0-9a-f]+:    64 4c 8b 0c 25 00 00[   ]+mov    %fs:0x0,%r9
93  +[0-9a-f]+:    00 00 *
94  +[0-9a-f]+:    90[     ]+nop *
95  +[0-9a-f]+:    90[     ]+nop *
96  +[0-9a-f]+:    4c 03 0d ([0-9a-f]{2} ){4}[     ]+add    0x[0-9a-f]+\(%rip\),%r9 +# [0-9a-f]+ <.*>
97 #                               -> R_X86_64_TPOFF64     sG2
98  +[0-9a-f]+:    90[     ]+nop *
99  +[0-9a-f]+:    90[     ]+nop *
100  +[0-9a-f]+:    90[     ]+nop *
101  +[0-9a-f]+:    90[     ]+nop *
102 #  IE -> LE against global var defined in exec
103  +[0-9a-f]+:    64 4c 8b 14 25 00 00[   ]+mov    %fs:0x0,%r10
104  +[0-9a-f]+:    00 00 *
105  +[0-9a-f]+:    90[     ]+nop *
106  +[0-9a-f]+:    90[     ]+nop *
107  +[0-9a-f]+:    4d 8d 92 60 ff ff ff[   ]+lea    -0xa0\(%r10\),%r10
108 #                                                       sg1
109  +[0-9a-f]+:    90[     ]+nop *
110  +[0-9a-f]+:    90[     ]+nop *
111  +[0-9a-f]+:    90[     ]+nop *
112  +[0-9a-f]+:    90[     ]+nop *
113 #  IE -> LE against local var
114  +[0-9a-f]+:    64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
115  +[0-9a-f]+:    00 00 *
116  +[0-9a-f]+:    90[     ]+nop *
117  +[0-9a-f]+:    90[     ]+nop *
118  +[0-9a-f]+:    48 8d 80 80 ff ff ff[   ]+lea    -0x80\(%rax\),%rax
119 #                                                       sl1
120  +[0-9a-f]+:    90[     ]+nop *
121  +[0-9a-f]+:    90[     ]+nop *
122  +[0-9a-f]+:    90[     ]+nop *
123  +[0-9a-f]+:    90[     ]+nop *
124 #  IE -> LE against hidden var
125  +[0-9a-f]+:    64 48 8b 0c 25 00 00[   ]+mov    %fs:0x0,%rcx
126  +[0-9a-f]+:    00 00 *
127  +[0-9a-f]+:    90[     ]+nop *
128  +[0-9a-f]+:    90[     ]+nop *
129  +[0-9a-f]+:    48 8d 89 a0 ff ff ff[   ]+lea    -0x60\(%rcx\),%rcx
130 #                                                       sh1
131  +[0-9a-f]+:    90[     ]+nop *
132  +[0-9a-f]+:    90[     ]+nop *
133  +[0-9a-f]+:    90[     ]+nop *
134  +[0-9a-f]+:    90[     ]+nop *
135 #  Direct access through %fs
136 #  IE against global var
137  +[0-9a-f]+:    48 8b 0d ([0-9a-f]{2} ){4}[     ]+mov    0x[0-9a-f]+\(%rip\),%rcx +# [0-9a-f]+ <.*>
138 #                               -> R_X86_64_TPOFF64     sG5
139  +[0-9a-f]+:    90[     ]+nop *
140  +[0-9a-f]+:    90[     ]+nop *
141  +[0-9a-f]+:    64 48 8b 11[    ]+mov    %fs:\(%rcx\),%rdx
142  +[0-9a-f]+:    90[     ]+nop *
143  +[0-9a-f]+:    90[     ]+nop *
144  +[0-9a-f]+:    90[     ]+nop *
145  +[0-9a-f]+:    90[     ]+nop *
146 #  IE->LE against local var
147  +[0-9a-f]+:    49 c7 c3 90 ff ff ff[   ]+mov    \$0xf+90,%r11
148 #                                                       sl5
149  +[0-9a-f]+:    90[     ]+nop *
150  +[0-9a-f]+:    90[     ]+nop *
151  +[0-9a-f]+:    64 4d 8b 23[    ]+mov    %fs:\(%r11\),%r12
152  +[0-9a-f]+:    90[     ]+nop *
153  +[0-9a-f]+:    90[     ]+nop *
154  +[0-9a-f]+:    90[     ]+nop *
155  +[0-9a-f]+:    90[     ]+nop *
156 #  IE->LE against hidden var
157  +[0-9a-f]+:    48 c7 c2 b0 ff ff ff[   ]+mov    \$0xf+b0,%rdx
158  +[0-9a-f]+:    90[     ]+nop *
159  +[0-9a-f]+:    90[     ]+nop *
160  +[0-9a-f]+:    64 48 8b 12[    ]+mov    %fs:\(%rdx\),%rdx
161 #                                                       sh5
162  +[0-9a-f]+:    90[     ]+nop *
163  +[0-9a-f]+:    90[     ]+nop *
164  +[0-9a-f]+:    90[     ]+nop *
165  +[0-9a-f]+:    90[     ]+nop *
166  +[0-9a-f]+:    c9[     ]+leave *
167  +[0-9a-f]+:    c3[     ]+ret *
168 #  IE against global var
169  +[0-9a-f]+:    d5 48 03 05 ([0-9a-f]{2} ){3}[  ]+add    0x[0-9a-f]+\(%rip\),%r16 +# [0-9a-f]+ <sG2>
170 #                               -> R_X86_64_TPOFF64     sG2
171  +[0-9a-f]+:    00 *
172  +[0-9a-f]+:    62 f4 fc 10 01 ([0-9a-f]{2} ){2}[       ]+add    %rax,0x[0-9a-f]+\(%rip\),%r16 +# [0-9a-f]+ <sG2>
173 #                               -> R_X86_64_TPOFF64     sG2
174  +[0-9a-f]+:    ([0-9a-f]{2} ){3} *
175  +[0-9a-f]+:    62 f4 fc 10 03 ([0-9a-f]{2} ){2}[       ]+add    0x[0-9a-f]+\(%rip\),%rax,%r16 +# [0-9a-f]+ <sG2>
176 #                               -> R_X86_64_TPOFF64     sG2
177  +[0-9a-f]+:    ([0-9a-f]{2} ){3} *
178  +[0-9a-f]+:    62 e4 fc 0c 03 ([0-9a-f]{2} ){2}[       ]+\{nf\} add 0x[0-9a-f]+\(%rip\),%r16 +# [0-9a-f]+ <sG2>
179 #                               -> R_X86_64_TPOFF64     sG2
180  +[0-9a-f]+:    ([0-9a-f]{2} ){3} *
181  +[0-9a-f]+:    62 f4 fc 14 01 ([0-9a-f]{2} ){2}[       ]+\{nf\} add %rax,0x[0-9a-f]+\(%rip\),%r16 +# [0-9a-f]+ <sG2>
182 #                               -> R_X86_64_TPOFF64     sG2
183  +[0-9a-f]+:    ([0-9a-f]{2} ){3} *
184  +[0-9a-f]+:    62 f4 fc 14 03 ([0-9a-f]{2} ){2}[       ]+\{nf\} add 0x[0-9a-f]+\(%rip\),%rax,%r16 +# [0-9a-f]+ <sG2>
185 #                               -> R_X86_64_TPOFF64     sG2
186  +[0-9a-f]+:    ([0-9a-f]{2} ){3} *
187 #  IE -> LE against global var defined in exec
188  +[0-9a-f]+:    d5 18 81 c1 60 ff ff[   ]+add    \$0xf+60,%r17
189 #                                                       sg1
190  +[0-9a-f]+:    ff *
191  +[0-9a-f]+:    62 d4 f4 10 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r8,%r17
192 #                                                       sg1
193  +[0-9a-f]+:    ff ff ff *
194  +[0-9a-f]+:    62 d4 f4 10 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r8,%r17
195 #                                                       sg1
196  +[0-9a-f]+:    ff ff ff *
197  +[0-9a-f]+:    62 fc fc 0c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r17
198 #                                                       sg1
199  +[0-9a-f]+:    ff ff ff *
200  +[0-9a-f]+:    62 d4 f4 14 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r8,%r17
201 #                                                       sg1
202  +[0-9a-f]+:    ff ff ff *
203  +[0-9a-f]+:    62 d4 f4 14 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r8,%r17
204 #                                                       sg1
205  +[0-9a-f]+:    ff ff ff *
206 #  IE -> LE against local var
207  +[0-9a-f]+:    d5 18 81 c2 80 ff ff[   ]+add    \$0xf+80,%r18
208 #                                                       sl1
209  +[0-9a-f]+:    ff *
210  +[0-9a-f]+:    62 d4 fc 18 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r8,%rax
211 #                                                       sl1
212  +[0-9a-f]+:    ff ff ff *
213  +[0-9a-f]+:    62 d4 fc 18 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r8,%rax
214 #                                                       sl1
215  +[0-9a-f]+:    ff ff ff *
216  +[0-9a-f]+:    62 fc fc 0c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r18
217 #                                                       sl1
218  +[0-9a-f]+:    ff ff ff *
219  +[0-9a-f]+:    62 d4 fc 1c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r8,%rax
220 #                                                       sl1
221  +[0-9a-f]+:    ff ff ff *
222  +[0-9a-f]+:    62 d4 fc 1c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r8,%rax
223 #                                                       sl1
224  +[0-9a-f]+:    ff ff ff *
225 #  IE -> LE against hidden var
226  +[0-9a-f]+:    d5 18 81 c3 a0 ff ff[   ]+add    \$0xf+a0,%r19
227 #                                                       sh1
228  +[0-9a-f]+:    ff *
229  +[0-9a-f]+:    62 fc bc 18 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r19,%r8
230 #                                                       sh1
231  +[0-9a-f]+:    ff ff ff *
232  +[0-9a-f]+:    62 fc bc 18 81 ([0-9a-f]{2} ){2}[       ]+add    \$0x[0-9a-f]+,%r19,%r8
233 #                                                       sh1
234  +[0-9a-f]+:    ff ff ff *
235  +[0-9a-f]+:    62 fc fc 0c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r19
236 #                                                       sh1
237  +[0-9a-f]+:    ff ff ff *
238  +[0-9a-f]+:    62 fc bc 1c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r19,%r8
239 #                                                       sh1
240  +[0-9a-f]+:    ff ff ff *
241  +[0-9a-f]+:    62 fc bc 1c 81 ([0-9a-f]{2} ){2}[       ]+\{nf\} add \$0x[0-9a-f]+,%r19,%r8
242 #                                                       sh1
243  +[0-9a-f]+:    ff ff ff *
244 #  Direct access through %fs
245 #  IE against global var
246  +[0-9a-f]+:    d5 48 8b 25 ([0-9a-f]{2} ){3}[  ]+mov    0x[0-9a-f]+\(%rip\),%r20 +# [0-9a-f]+ <sG5>
247 #                               -> R_X86_64_TPOFF64     sG5
248  +[0-9a-f]+:    00 *
249 #  IE->LE against local var
250  +[0-9a-f]+:    d5 18 c7 c5 90 ff ff[   ]+mov    \$0xf+90,%r21
251 #                                                       sl5
252  +[0-9a-f]+:    ff *
253 #  IE->LE against hidden var
254  +[0-9a-f]+:    d5 18 c7 c6 b0 ff ff[   ]+mov    \$0xf+b0,%r22
255  +[0-9a-f]+:    ff *
256 #  GD -> IE because variable is not defined in executable
257  +[0-9a-f]+:    d5 48 8b 05 ([0-9a-f]{2} ){3}[  ]+mov    0x[0-9a-f]+\(%rip\),%r16 +# [0-9a-f]+ <sG1>
258 #                               -> R_X86_64_TPOFF64     sG1
259  +[0-9a-f]+:    00 *
260 #  GD -> IE because variable is not defined in executable where
261 #  the variable is referenced through IE too
262  +[0-9a-f]+:    d5 48 8b 0d ([0-9a-f]{2} ){3}[  ]+mov    0x[0-9a-f]+\(%rip\),%r17 +# [0-9a-f]+ <sG2>
263 #                               -> R_X86_64_TPOFF64     sG2
264  +[0-9a-f]+:    00 *
265 #  GD -> LE with global variable defined in executable
266  +[0-9a-f]+:    d5 18 c7 c2 60 ff ff[   ]+mov    \$0xf+60,%r18
267 #                                                       sg1
268  +[0-9a-f]+:    ff *
269 #  GD -> LE with local variable defined in executable
270  +[0-9a-f]+:    d5 18 c7 c3 80 ff ff[   ]+mov    \$0xf+80,%r19
271 #                                                       sl1
272  +[0-9a-f]+:    ff *
273 #  GD -> LE with hidden variable defined in executable
274  +[0-9a-f]+:    d5 18 c7 c4 a0 ff ff[   ]+mov    \$0xf+a0,%r20
275 #                                                       sh1
276  +[0-9a-f]+:    ff *
278 [0-9a-f]+ <_start>:
279  +[0-9a-f]+:    55[     ]+push   %rbp
280  +[0-9a-f]+:    48 89 e5[       ]+mov    %rsp,%rbp
281 #  IE against global var
282  +[0-9a-f]+:    64 4c 8b 1c 25 00 00[   ]+mov    %fs:0x0,%r11
283  +[0-9a-f]+:    00 00 *
284  +[0-9a-f]+:    90[     ]+nop *
285  +[0-9a-f]+:    90[     ]+nop *
286  +[0-9a-f]+:    4c 03 1d ([0-9a-f]{2} ){4}[     ]+add    0x[0-9a-f]+\(%rip\),%r11 +# [0-9a-f]+ <.*>
287 #                               -> R_X86_64_TPOFF64     sG6
288  +[0-9a-f]+:    90[     ]+nop *
289  +[0-9a-f]+:    90[     ]+nop *
290  +[0-9a-f]+:    90[     ]+nop *
291  +[0-9a-f]+:    90[     ]+nop *
292 #  IE -> LE against global var defined in exec
293  +[0-9a-f]+:    64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
294  +[0-9a-f]+:    00 00 *
295  +[0-9a-f]+:    90[     ]+nop *
296  +[0-9a-f]+:    90[     ]+nop *
297  +[0-9a-f]+:    48 8d 92 d4 ff ff ff[   ]+lea    -0x2c\(%rdx\),%rdx
298 #                                                       bg6
299  +[0-9a-f]+:    90[     ]+nop *
300  +[0-9a-f]+:    90[     ]+nop *
301  +[0-9a-f]+:    90[     ]+nop *
302  +[0-9a-f]+:    90[     ]+nop *
303 #  IE -> LE against local var
304  +[0-9a-f]+:    64 4c 8b 24 25 00 00[   ]+mov    %fs:0x0,%r12
305  +[0-9a-f]+:    00 00 *
306  +[0-9a-f]+:    90[     ]+nop *
307  +[0-9a-f]+:    90[     ]+nop *
308  +[0-9a-f]+:    49 81 c4 f4 ff ff ff[   ]+add    \$0xf+f4,%r12
309 #                                                       bl6
310  +[0-9a-f]+:    90[     ]+nop *
311  +[0-9a-f]+:    90[     ]+nop *
312  +[0-9a-f]+:    90[     ]+nop *
313  +[0-9a-f]+:    90[     ]+nop *
314 #  direct %fs access IE -> LE against local var
315  +[0-9a-f]+:    48 c7 c2 fc ff ff ff[   ]+mov    \$0xf+fc,%rdx
316 #                                                       bl8
317  +[0-9a-f]+:    90[     ]+nop *
318  +[0-9a-f]+:    90[     ]+nop *
319  +[0-9a-f]+:    64 48 8b 02[    ]+mov    %fs:\(%rdx\),%rax
320  +[0-9a-f]+:    90[     ]+nop *
321  +[0-9a-f]+:    90[     ]+nop *
322  +[0-9a-f]+:    90[     ]+nop *
323  +[0-9a-f]+:    90[     ]+nop *
324 #  IE -> LE against hidden but not local var
325  +[0-9a-f]+:    64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
326  +[0-9a-f]+:    00 00 *
327  +[0-9a-f]+:    90[     ]+nop *
328  +[0-9a-f]+:    90[     ]+nop *
329  +[0-9a-f]+:    48 8d 92 b4 ff ff ff[   ]+lea    -0x4c\(%rdx\),%rdx
330 #                                                       sh6
331  +[0-9a-f]+:    90[     ]+nop *
332  +[0-9a-f]+:    90[     ]+nop *
333  +[0-9a-f]+:    90[     ]+nop *
334  +[0-9a-f]+:    90[     ]+nop *
335 #  direct %fs access IE -> LE against hidden but not local var
336  +[0-9a-f]+:    48 c7 c2 bc ff ff ff[   ]+mov    \$0xf+bc,%rdx
337 #                                                       sh8
338  +[0-9a-f]+:    90[     ]+nop *
339  +[0-9a-f]+:    90[     ]+nop *
340  +[0-9a-f]+:    64 48 8b 02[    ]+mov    %fs:\(%rdx\),%rax
341  +[0-9a-f]+:    90[     ]+nop *
342  +[0-9a-f]+:    90[     ]+nop *
343  +[0-9a-f]+:    90[     ]+nop *
344  +[0-9a-f]+:    90[     ]+nop *
345 #  LE, global var defined in exec
346  +[0-9a-f]+:    64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
347  +[0-9a-f]+:    00 00 *
348  +[0-9a-f]+:    90[     ]+nop *
349  +[0-9a-f]+:    90[     ]+nop *
350  +[0-9a-f]+:    48 8d 90 64 ff ff ff[   ]+lea    -0x9c\(%rax\),%rdx
351 #                                                       sg2
352  +[0-9a-f]+:    90[     ]+nop *
353  +[0-9a-f]+:    90[     ]+nop *
354  +[0-9a-f]+:    90[     ]+nop *
355  +[0-9a-f]+:    90[     ]+nop *
356 #  LE, local var, non-canonical sequence
357  +[0-9a-f]+:    49 c7 c1 e6 ff ff ff[   ]+mov    \$0xf+e6,%r9
358 #                                                       bl2+2
359  +[0-9a-f]+:    90[     ]+nop *
360  +[0-9a-f]+:    90[     ]+nop *
361  +[0-9a-f]+:    64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
362  +[0-9a-f]+:    00 00 *
363  +[0-9a-f]+:    90[     ]+nop *
364  +[0-9a-f]+:    90[     ]+nop *
365  +[0-9a-f]+:    4c 01 ca[       ]+add    %r9,%rdx
366  +[0-9a-f]+:    90[     ]+nop *
367  +[0-9a-f]+:    90[     ]+nop *
368  +[0-9a-f]+:    90[     ]+nop *
369  +[0-9a-f]+:    90[     ]+nop *
370 #  LE, hidden var defined in exec, non-canonical sequence
371  +[0-9a-f]+:    64 48 8b 14 25 00 00[   ]+mov    %fs:0x0,%rdx
372  +[0-9a-f]+:    00 00 *
373  +[0-9a-f]+:    90[     ]+nop *
374  +[0-9a-f]+:    90[     ]+nop *
375  +[0-9a-f]+:    48 81 c2 a5 ff ff ff[   ]+add    \$0xf+a5,%rdx
376 #                                                       sh2+1
377  +[0-9a-f]+:    90[     ]+nop *
378  +[0-9a-f]+:    90[     ]+nop *
379  +[0-9a-f]+:    90[     ]+nop *
380  +[0-9a-f]+:    90[     ]+nop *
381 #  Direct %fs access
382 #  LE, global var defined in exec
383  +[0-9a-f]+:    64 48 8b 04 25 68 ff[   ]+mov    %fs:0xf+68,%rax
384  +[0-9a-f]+:    ff ff *
385 #                                                       sg3
386  +[0-9a-f]+:    90[     ]+nop *
387  +[0-9a-f]+:    90[     ]+nop *
388  +[0-9a-f]+:    90[     ]+nop *
389  +[0-9a-f]+:    90[     ]+nop *
390 #  LE, local var
391  +[0-9a-f]+:    64 4c 8b 14 25 eb ff[   ]+mov    %fs:0xf+eb,%r10
392  +[0-9a-f]+:    ff ff *
393 #                                                       bl3+3
394  +[0-9a-f]+:    90[     ]+nop *
395  +[0-9a-f]+:    90[     ]+nop *
396  +[0-9a-f]+:    90[     ]+nop *
397  +[0-9a-f]+:    90[     ]+nop *
398 #  LE, hidden var defined in exec
399  +[0-9a-f]+:    64 48 8b 14 25 a9 ff[   ]+mov    %fs:0xf+a9,%rdx
400  +[0-9a-f]+:    ff ff *
401 #                                                       sh3+1
402  +[0-9a-f]+:    90[     ]+nop *
403  +[0-9a-f]+:    90[     ]+nop *
404  +[0-9a-f]+:    90[     ]+nop *
405  +[0-9a-f]+:    90[     ]+nop *
406 #  LE, large model
407  +[0-9a-f]+:    48 ba a5 ff ff ff ff[   ]+movabs \$0xffffffffffffffa5,%rdx
408  +[0-9a-f]+:    ff ff ff *
409  +[0-9a-f]+:    c9[     ]+leave *
410  +[0-9a-f]+:    c3[     ]+ret *