Commit | Line | Data |
---|---|---|
67a4f2b7 AO |
1 | #source: tlsbindesc.s |
2 | #source: tlsbin.s | |
3 | #as: --32 | |
e41b3a13 | 4 | #ld: -melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info |
67a4f2b7 AO |
5 | #objdump: -drj.text |
6 | #target: i?86-*-* | |
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 | ||
5a68afcf | 17 | .*: +file format elf32-i386.* |
67a4f2b7 AO |
18 | |
19 | Disassembly of section .text: | |
20 | ||
21 | [0-9a-f]+ <fn2>: | |
5a68afcf RM |
22 | +[0-9a-f]+: 55[ ]+push %ebp |
23 | +[0-9a-f]+: 89 e5[ ]+mov %esp,%ebp | |
24 | +[0-9a-f]+: 53[ ]+push %ebx | |
25 | +[0-9a-f]+: 50[ ]+push %eax | |
26 | +[0-9a-f]+: e8 00 00 00 00[ ]+call [0-9a-f]+ <fn2\+0xa> | |
27 | +[0-9a-f]+: 5b[ ]+pop %ebx | |
28 | +[0-9a-f]+: 81 c3 ([0-9a-f]{2} ){4}[ ]+add \$0x[0-9a-f]*10fa,%ebx | |
29 | +[0-9a-f]+: 90[ ]+nop * | |
30 | +[0-9a-f]+: 90[ ]+nop * | |
31 | +[0-9a-f]+: 90[ ]+nop * | |
32 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 33 | # GD -> IE because variable is not defined in executable |
5a68afcf | 34 | +[0-9a-f]+: 8b 83 f8 ff ff ff[ ]+mov -0x8\(%ebx\),%eax |
67a4f2b7 | 35 | # ->R_386_TLS_TPOFF32 sG1 |
5a68afcf RM |
36 | +[0-9a-f]+: f7 d8[ ]+neg %eax |
37 | +[0-9a-f]+: 90[ ]+nop * | |
38 | +[0-9a-f]+: 90[ ]+nop * | |
39 | +[0-9a-f]+: 90[ ]+nop * | |
40 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
41 | # GD -> IE because variable is not defined in executable where |
42 | # the variable is referenced through @gottpoff too | |
5a68afcf | 43 | +[0-9a-f]+: 8b 83 e8 ff ff ff[ ]+mov -0x18\(%ebx\),%eax |
67a4f2b7 | 44 | # ->R_386_TLS_TPOFF32 sG2 |
5a68afcf RM |
45 | +[0-9a-f]+: f7 d8[ ]+neg %eax |
46 | +[0-9a-f]+: 90[ ]+nop * | |
47 | +[0-9a-f]+: 90[ ]+nop * | |
48 | +[0-9a-f]+: 90[ ]+nop * | |
49 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
50 | # GD -> IE because variable is not defined in executable where |
51 | # the variable is referenced through @gotntpoff too | |
5a68afcf | 52 | +[0-9a-f]+: 8b 83 dc ff ff ff[ ]+mov -0x24\(%ebx\),%eax |
67a4f2b7 | 53 | # ->R_386_TLS_TPOFF sG3 |
5a68afcf RM |
54 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax |
55 | +[0-9a-f]+: 90[ ]+nop * | |
56 | +[0-9a-f]+: 90[ ]+nop * | |
57 | +[0-9a-f]+: 90[ ]+nop * | |
58 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
59 | # GD -> IE because variable is not defined in executable where |
60 | # the variable is referenced through @gottpoff and @gotntpoff too | |
5a68afcf | 61 | +[0-9a-f]+: 8b 83 f0 ff ff ff[ ]+mov -0x10\(%ebx\),%eax |
67a4f2b7 | 62 | # ->R_386_TLS_TPOFF32 sG4 |
5a68afcf RM |
63 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax |
64 | +[0-9a-f]+: 90[ ]+nop * | |
65 | +[0-9a-f]+: 90[ ]+nop * | |
66 | +[0-9a-f]+: 90[ ]+nop * | |
67 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 68 | # GD -> LE with global variable defined in executable |
5a68afcf | 69 | +[0-9a-f]+: 8d 05 00 f0 ff ff[ ]+lea 0xfffff000,%eax |
67a4f2b7 | 70 | # sg1 |
5a68afcf RM |
71 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax |
72 | +[0-9a-f]+: 90[ ]+nop * | |
73 | +[0-9a-f]+: 90[ ]+nop * | |
74 | +[0-9a-f]+: 90[ ]+nop * | |
75 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 76 | # GD -> LE with local variable defined in executable |
5a68afcf | 77 | +[0-9a-f]+: 8d 05 20 f0 ff ff[ ]+lea 0xfffff020,%eax |
67a4f2b7 | 78 | # sl1 |
5a68afcf RM |
79 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax |
80 | +[0-9a-f]+: 90[ ]+nop * | |
81 | +[0-9a-f]+: 90[ ]+nop * | |
82 | +[0-9a-f]+: 90[ ]+nop * | |
83 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 84 | # GD -> LE with hidden variable defined in executable |
5a68afcf | 85 | +[0-9a-f]+: 8d 05 40 f0 ff ff[ ]+lea 0xfffff040,%eax |
67a4f2b7 | 86 | # sh1 |
5a68afcf RM |
87 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax |
88 | +[0-9a-f]+: 90[ ]+nop * | |
89 | +[0-9a-f]+: 90[ ]+nop * | |
90 | +[0-9a-f]+: 90[ ]+nop * | |
91 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 92 | # LD -> LE |
5a68afcf RM |
93 | +[0-9a-f]+: 8d 05 00 00 00 00[ ]+lea 0x0,%eax |
94 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax | |
95 | +[0-9a-f]+: 90[ ]+nop * | |
96 | +[0-9a-f]+: 90[ ]+nop * | |
97 | +[0-9a-f]+: 8d 90 20 f0 ff ff[ ]+lea -0xfe0\(%eax\),%edx | |
67a4f2b7 | 98 | # sl1 |
5a68afcf RM |
99 | +[0-9a-f]+: 90[ ]+nop * |
100 | +[0-9a-f]+: 90[ ]+nop * | |
101 | +[0-9a-f]+: 8d 88 24 f0 ff ff[ ]+lea -0xfdc\(%eax\),%ecx | |
67a4f2b7 | 102 | # sl2 |
5a68afcf RM |
103 | +[0-9a-f]+: 90[ ]+nop * |
104 | +[0-9a-f]+: 90[ ]+nop * | |
105 | +[0-9a-f]+: 90[ ]+nop * | |
106 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 107 | # LD -> LE against hidden variables |
5a68afcf RM |
108 | +[0-9a-f]+: 8d 05 00 00 00 00[ ]+lea 0x0,%eax |
109 | +[0-9a-f]+: 66 90[ ]+xchg %ax,%ax | |
110 | +[0-9a-f]+: 90[ ]+nop * | |
111 | +[0-9a-f]+: 90[ ]+nop * | |
112 | +[0-9a-f]+: 8d 90 40 f0 ff ff[ ]+lea -0xfc0\(%eax\),%edx | |
67a4f2b7 | 113 | # sh1 |
5a68afcf RM |
114 | +[0-9a-f]+: 90[ ]+nop * |
115 | +[0-9a-f]+: 90[ ]+nop * | |
116 | +[0-9a-f]+: 8d 88 44 f0 ff ff[ ]+lea -0xfbc\(%eax\),%ecx | |
67a4f2b7 | 117 | # sh2 |
5a68afcf RM |
118 | +[0-9a-f]+: 90[ ]+nop * |
119 | +[0-9a-f]+: 90[ ]+nop * | |
120 | +[0-9a-f]+: 90[ ]+nop * | |
121 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 122 | # @gottpoff IE against global var |
5a68afcf RM |
123 | +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx |
124 | +[0-9a-f]+: 90[ ]+nop * | |
125 | +[0-9a-f]+: 90[ ]+nop * | |
126 | +[0-9a-f]+: 2b 8b e8 ff ff ff[ ]+sub -0x18\(%ebx\),%ecx | |
67a4f2b7 | 127 | # ->R_386_TLS_TPOFF32 sG2 |
5a68afcf RM |
128 | +[0-9a-f]+: 90[ ]+nop * |
129 | +[0-9a-f]+: 90[ ]+nop * | |
130 | +[0-9a-f]+: 90[ ]+nop * | |
131 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 132 | # @gottpoff IE against global var |
5a68afcf RM |
133 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
134 | +[0-9a-f]+: 90[ ]+nop * | |
135 | +[0-9a-f]+: 90[ ]+nop * | |
136 | +[0-9a-f]+: 2b 83 ec ff ff ff[ ]+sub -0x14\(%ebx\),%eax | |
67a4f2b7 | 137 | # ->R_386_TLS_TPOFF32 sG4 |
5a68afcf RM |
138 | +[0-9a-f]+: 90[ ]+nop * |
139 | +[0-9a-f]+: 90[ ]+nop * | |
140 | +[0-9a-f]+: 90[ ]+nop * | |
141 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 142 | # @gotntpoff IE against global var |
5a68afcf RM |
143 | +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx |
144 | +[0-9a-f]+: 90[ ]+nop * | |
145 | +[0-9a-f]+: 90[ ]+nop * | |
146 | +[0-9a-f]+: 03 8b dc ff ff ff[ ]+add -0x24\(%ebx\),%ecx | |
67a4f2b7 | 147 | # ->R_386_TLS_TPOFF sG3 |
5a68afcf RM |
148 | +[0-9a-f]+: 90[ ]+nop * |
149 | +[0-9a-f]+: 90[ ]+nop * | |
150 | +[0-9a-f]+: 90[ ]+nop * | |
151 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 152 | # @gotntpoff IE against global var |
5a68afcf RM |
153 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
154 | +[0-9a-f]+: 90[ ]+nop * | |
155 | +[0-9a-f]+: 90[ ]+nop * | |
156 | +[0-9a-f]+: 03 83 f0 ff ff ff[ ]+add -0x10\(%ebx\),%eax | |
67a4f2b7 | 157 | # ->R_386_TLS_TPOFF sG4 |
5a68afcf RM |
158 | +[0-9a-f]+: 90[ ]+nop * |
159 | +[0-9a-f]+: 90[ ]+nop * | |
160 | +[0-9a-f]+: 90[ ]+nop * | |
161 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 162 | # @gottpoff IE -> LE against global var defined in exec |
5a68afcf RM |
163 | +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx |
164 | +[0-9a-f]+: 90[ ]+nop * | |
165 | +[0-9a-f]+: 90[ ]+nop * | |
166 | +[0-9a-f]+: 81 e9 00 10 00 00[ ]+sub \$0x1000,%ecx | |
67a4f2b7 | 167 | # sg1 |
5a68afcf RM |
168 | +[0-9a-f]+: 90[ ]+nop * |
169 | +[0-9a-f]+: 90[ ]+nop * | |
170 | +[0-9a-f]+: 90[ ]+nop * | |
171 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 172 | # @gotntpoff IE -> LE against local var |
5a68afcf RM |
173 | +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx |
174 | +[0-9a-f]+: 90[ ]+nop * | |
175 | +[0-9a-f]+: 90[ ]+nop * | |
176 | +[0-9a-f]+: 81 c0 20 f0 ff ff[ ]+add \$0xfffff020,%eax | |
67a4f2b7 | 177 | # sl1 |
5a68afcf RM |
178 | +[0-9a-f]+: 90[ ]+nop * |
179 | +[0-9a-f]+: 90[ ]+nop * | |
180 | +[0-9a-f]+: 90[ ]+nop * | |
181 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 182 | # @gottpoff IE -> LE against hidden var |
5a68afcf RM |
183 | +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx |
184 | +[0-9a-f]+: 90[ ]+nop * | |
185 | +[0-9a-f]+: 90[ ]+nop * | |
186 | +[0-9a-f]+: 81 e9 c0 0f 00 00[ ]+sub \$0xfc0,%ecx | |
67a4f2b7 | 187 | # sh1 |
5a68afcf RM |
188 | +[0-9a-f]+: 90[ ]+nop * |
189 | +[0-9a-f]+: 90[ ]+nop * | |
190 | +[0-9a-f]+: 90[ ]+nop * | |
191 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
192 | # Direct access through %gs |
193 | # @gotntpoff IE against global var | |
5a68afcf | 194 | +[0-9a-f]+: 8b 8b e0 ff ff ff[ ]+mov -0x20\(%ebx\),%ecx |
67a4f2b7 | 195 | # ->R_386_TLS_TPOFF sG5 |
5a68afcf RM |
196 | +[0-9a-f]+: 90[ ]+nop * |
197 | +[0-9a-f]+: 90[ ]+nop * | |
198 | +[0-9a-f]+: 65 8b 11[ ]+mov %gs:\(%ecx\),%edx | |
199 | +[0-9a-f]+: 90[ ]+nop * | |
200 | +[0-9a-f]+: 90[ ]+nop * | |
201 | +[0-9a-f]+: 90[ ]+nop * | |
202 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 203 | # @gotntpoff IE->LE against local var |
5a68afcf | 204 | +[0-9a-f]+: c7 c0 30 f0 ff ff[ ]+mov \$0xfffff030,%eax |
67a4f2b7 | 205 | # sl5 |
5a68afcf RM |
206 | +[0-9a-f]+: 90[ ]+nop * |
207 | +[0-9a-f]+: 90[ ]+nop * | |
208 | +[0-9a-f]+: 65 8b 10[ ]+mov %gs:\(%eax\),%edx | |
209 | +[0-9a-f]+: 90[ ]+nop * | |
210 | +[0-9a-f]+: 90[ ]+nop * | |
211 | +[0-9a-f]+: 90[ ]+nop * | |
212 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 213 | # @gotntpoff IE->LE against hidden var |
5a68afcf | 214 | +[0-9a-f]+: c7 c2 50 f0 ff ff[ ]+mov \$0xfffff050,%edx |
67a4f2b7 | 215 | # sh5 |
5a68afcf RM |
216 | +[0-9a-f]+: 90[ ]+nop * |
217 | +[0-9a-f]+: 90[ ]+nop * | |
218 | +[0-9a-f]+: 65 8b 12[ ]+mov %gs:\(%edx\),%edx | |
219 | +[0-9a-f]+: 90[ ]+nop * | |
220 | +[0-9a-f]+: 90[ ]+nop * | |
221 | +[0-9a-f]+: 90[ ]+nop * | |
222 | +[0-9a-f]+: 90[ ]+nop * | |
223 | +[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx | |
224 | +[0-9a-f]+: c9[ ]+leave * | |
225 | +[0-9a-f]+: c3[ ]+ret * | |
67a4f2b7 AO |
226 | |
227 | [0-9a-f]+ <_start>: | |
5a68afcf RM |
228 | +[0-9a-f]+: 55[ ]+push %ebp |
229 | +[0-9a-f]+: 89 e5[ ]+mov %esp,%ebp | |
230 | +[0-9a-f]+: e8 00 00 00 00[ ]+call [0-9a-f]+ <_start\+0x8> | |
231 | +[0-9a-f]+: 59[ ]+pop %ecx | |
f60cf82f | 232 | +[0-9a-f]+: 81 c1 ([0-9a-f]{2} ){4}[ ]+add \$0x[0-9a-f]*fa6,%ecx |
5a68afcf RM |
233 | +[0-9a-f]+: 90[ ]+nop * |
234 | +[0-9a-f]+: 90[ ]+nop * | |
235 | +[0-9a-f]+: 90[ ]+nop * | |
236 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 237 | # @gottpoff IE against global var |
5a68afcf RM |
238 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx |
239 | +[0-9a-f]+: 90[ ]+nop * | |
240 | +[0-9a-f]+: 90[ ]+nop * | |
241 | +[0-9a-f]+: 2b 91 f4 ff ff ff[ ]+sub -0xc\(%ecx\),%edx | |
67a4f2b7 | 242 | # ->R_386_TLS_TPOFF32 sG6 |
5a68afcf RM |
243 | +[0-9a-f]+: 90[ ]+nop * |
244 | +[0-9a-f]+: 90[ ]+nop * | |
245 | +[0-9a-f]+: 90[ ]+nop * | |
246 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 247 | # @indntpoff IE against global var |
5a68afcf RM |
248 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
249 | +[0-9a-f]+: 90[ ]+nop * | |
250 | +[0-9a-f]+: 90[ ]+nop * | |
251 | +[0-9a-f]+: 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+0e8,%eax | |
67a4f2b7 | 252 | # ->R_386_TLS_TPOFF sG7 |
5a68afcf RM |
253 | +[0-9a-f]+: 90[ ]+nop * |
254 | +[0-9a-f]+: 90[ ]+nop * | |
255 | +[0-9a-f]+: 90[ ]+nop * | |
256 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 257 | # @indntpoff direct %gs access IE against global var |
5a68afcf | 258 | +[0-9a-f]+: 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+100,%edx |
67a4f2b7 | 259 | # ->R_386_TLS_TPOFF sG8 |
5a68afcf RM |
260 | +[0-9a-f]+: 90[ ]+nop * |
261 | +[0-9a-f]+: 90[ ]+nop * | |
262 | +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax | |
263 | +[0-9a-f]+: 90[ ]+nop * | |
264 | +[0-9a-f]+: 90[ ]+nop * | |
265 | +[0-9a-f]+: 90[ ]+nop * | |
266 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 267 | # @gottpoff IE -> LE against global var defined in exec |
5a68afcf RM |
268 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx |
269 | +[0-9a-f]+: 90[ ]+nop * | |
270 | +[0-9a-f]+: 90[ ]+nop * | |
271 | +[0-9a-f]+: 81 ea 8c 0f 00 00[ ]+sub \$0xf8c,%edx | |
67a4f2b7 | 272 | # bg6 |
5a68afcf RM |
273 | +[0-9a-f]+: 90[ ]+nop * |
274 | +[0-9a-f]+: 90[ ]+nop * | |
275 | +[0-9a-f]+: 90[ ]+nop * | |
276 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 277 | # @indntpoff IE -> LE against global var defined in exec |
5a68afcf RM |
278 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
279 | +[0-9a-f]+: 90[ ]+nop * | |
280 | +[0-9a-f]+: 90[ ]+nop * | |
281 | +[0-9a-f]+: 81 c0 78 f0 ff ff[ ]+add \$0xfffff078,%eax | |
67a4f2b7 | 282 | # bg7 |
5a68afcf RM |
283 | +[0-9a-f]+: 90[ ]+nop * |
284 | +[0-9a-f]+: 90[ ]+nop * | |
285 | +[0-9a-f]+: 90[ ]+nop * | |
286 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
287 | # @indntpoff direct %gs access IE -> LE against global var defined |
288 | # in exec | |
5a68afcf | 289 | +[0-9a-f]+: c7 c2 7c f0 ff ff[ ]+mov \$0xfffff07c,%edx |
67a4f2b7 | 290 | # bg8 |
5a68afcf RM |
291 | +[0-9a-f]+: 90[ ]+nop * |
292 | +[0-9a-f]+: 90[ ]+nop * | |
293 | +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax | |
294 | +[0-9a-f]+: 90[ ]+nop * | |
295 | +[0-9a-f]+: 90[ ]+nop * | |
296 | +[0-9a-f]+: 90[ ]+nop * | |
297 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 298 | # @gottpoff IE -> LE against local var |
5a68afcf RM |
299 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx |
300 | +[0-9a-f]+: 90[ ]+nop * | |
301 | +[0-9a-f]+: 90[ ]+nop * | |
302 | +[0-9a-f]+: 81 ea 6c 0f 00 00[ ]+sub \$0xf6c,%edx | |
67a4f2b7 | 303 | # bl6 |
5a68afcf RM |
304 | +[0-9a-f]+: 90[ ]+nop * |
305 | +[0-9a-f]+: 90[ ]+nop * | |
306 | +[0-9a-f]+: 90[ ]+nop * | |
307 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 308 | # @indntpoff IE -> LE against local var |
5a68afcf RM |
309 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
310 | +[0-9a-f]+: 90[ ]+nop * | |
311 | +[0-9a-f]+: 90[ ]+nop * | |
312 | +[0-9a-f]+: 81 c0 98 f0 ff ff[ ]+add \$0xfffff098,%eax | |
67a4f2b7 | 313 | # bl7 |
5a68afcf RM |
314 | +[0-9a-f]+: 90[ ]+nop * |
315 | +[0-9a-f]+: 90[ ]+nop * | |
316 | +[0-9a-f]+: 90[ ]+nop * | |
317 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 318 | # @indntpoff direct %gs access IE -> LE against local var |
5a68afcf | 319 | +[0-9a-f]+: c7 c2 9c f0 ff ff[ ]+mov \$0xfffff09c,%edx |
67a4f2b7 | 320 | # bl8 |
5a68afcf RM |
321 | +[0-9a-f]+: 90[ ]+nop * |
322 | +[0-9a-f]+: 90[ ]+nop * | |
323 | +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax | |
324 | +[0-9a-f]+: 90[ ]+nop * | |
325 | +[0-9a-f]+: 90[ ]+nop * | |
326 | +[0-9a-f]+: 90[ ]+nop * | |
327 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 328 | # @gottpoff IE -> LE against hidden but not local var |
5a68afcf RM |
329 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx |
330 | +[0-9a-f]+: 90[ ]+nop * | |
331 | +[0-9a-f]+: 90[ ]+nop * | |
332 | +[0-9a-f]+: 81 ea ac 0f 00 00[ ]+sub \$0xfac,%edx | |
67a4f2b7 | 333 | # sh6 |
5a68afcf RM |
334 | +[0-9a-f]+: 90[ ]+nop * |
335 | +[0-9a-f]+: 90[ ]+nop * | |
336 | +[0-9a-f]+: 90[ ]+nop * | |
337 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 338 | # @indntpoff IE -> LE against hidden but not local var |
5a68afcf RM |
339 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
340 | +[0-9a-f]+: 90[ ]+nop * | |
341 | +[0-9a-f]+: 90[ ]+nop * | |
342 | +[0-9a-f]+: 81 c0 58 f0 ff ff[ ]+add \$0xfffff058,%eax | |
67a4f2b7 | 343 | # sh7 |
5a68afcf RM |
344 | +[0-9a-f]+: 90[ ]+nop * |
345 | +[0-9a-f]+: 90[ ]+nop * | |
346 | +[0-9a-f]+: 90[ ]+nop * | |
347 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 AO |
348 | # @indntpoff direct %gs access IE -> LE against hidden but not |
349 | # local var | |
5a68afcf | 350 | +[0-9a-f]+: c7 c2 5c f0 ff ff[ ]+mov \$0xfffff05c,%edx |
67a4f2b7 | 351 | # sh8 |
5a68afcf RM |
352 | +[0-9a-f]+: 90[ ]+nop * |
353 | +[0-9a-f]+: 90[ ]+nop * | |
354 | +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax | |
355 | +[0-9a-f]+: 90[ ]+nop * | |
356 | +[0-9a-f]+: 90[ ]+nop * | |
357 | +[0-9a-f]+: 90[ ]+nop * | |
358 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 359 | # LE @tpoff, global var defined in exec |
5a68afcf | 360 | +[0-9a-f]+: ba 00 10 00 00[ ]+mov \$0x1000,%edx |
67a4f2b7 | 361 | # sg1 |
5a68afcf RM |
362 | +[0-9a-f]+: 90[ ]+nop * |
363 | +[0-9a-f]+: 90[ ]+nop * | |
364 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax | |
365 | +[0-9a-f]+: 90[ ]+nop * | |
366 | +[0-9a-f]+: 90[ ]+nop * | |
367 | +[0-9a-f]+: 29 d0[ ]+sub %edx,%eax | |
368 | +[0-9a-f]+: 90[ ]+nop * | |
369 | +[0-9a-f]+: 90[ ]+nop * | |
370 | +[0-9a-f]+: 90[ ]+nop * | |
371 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 372 | # LE @tpoff, local var |
5a68afcf | 373 | +[0-9a-f]+: b8 7f 0f 00 00[ ]+mov \$0xf7f,%eax |
67a4f2b7 | 374 | # bl1+1 |
5a68afcf RM |
375 | +[0-9a-f]+: 90[ ]+nop * |
376 | +[0-9a-f]+: 90[ ]+nop * | |
377 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx | |
378 | +[0-9a-f]+: 90[ ]+nop * | |
379 | +[0-9a-f]+: 90[ ]+nop * | |
380 | +[0-9a-f]+: 29 c2[ ]+sub %eax,%edx | |
381 | +[0-9a-f]+: 90[ ]+nop * | |
382 | +[0-9a-f]+: 90[ ]+nop * | |
383 | +[0-9a-f]+: 90[ ]+nop * | |
384 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 385 | # LE @tpoff, hidden var defined in exec |
5a68afcf | 386 | +[0-9a-f]+: b8 bd 0f 00 00[ ]+mov \$0xfbd,%eax |
67a4f2b7 | 387 | # sh1+3 |
5a68afcf RM |
388 | +[0-9a-f]+: 90[ ]+nop * |
389 | +[0-9a-f]+: 90[ ]+nop * | |
390 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx | |
391 | +[0-9a-f]+: 90[ ]+nop * | |
392 | +[0-9a-f]+: 90[ ]+nop * | |
393 | +[0-9a-f]+: 29 c2[ ]+sub %eax,%edx | |
394 | +[0-9a-f]+: 90[ ]+nop * | |
395 | +[0-9a-f]+: 90[ ]+nop * | |
396 | +[0-9a-f]+: 90[ ]+nop * | |
397 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 398 | # LE @ntpoff, global var defined in exec |
5a68afcf RM |
399 | +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax |
400 | +[0-9a-f]+: 90[ ]+nop * | |
401 | +[0-9a-f]+: 90[ ]+nop * | |
402 | +[0-9a-f]+: 8d 90 04 f0 ff ff[ ]+lea -0xffc\(%eax\),%edx | |
67a4f2b7 | 403 | # sg2 |
5a68afcf RM |
404 | +[0-9a-f]+: 90[ ]+nop * |
405 | +[0-9a-f]+: 90[ ]+nop * | |
406 | +[0-9a-f]+: 90[ ]+nop * | |
407 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 408 | # LE @ntpoff, local var, non-canonical sequence |
5a68afcf | 409 | +[0-9a-f]+: b8 86 f0 ff ff[ ]+mov \$0xfffff086,%eax |
67a4f2b7 | 410 | # bl2+2 |
5a68afcf RM |
411 | +[0-9a-f]+: 90[ ]+nop * |
412 | +[0-9a-f]+: 90[ ]+nop * | |
413 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx | |
414 | +[0-9a-f]+: 90[ ]+nop * | |
415 | +[0-9a-f]+: 90[ ]+nop * | |
416 | +[0-9a-f]+: 01 c2[ ]+add %eax,%edx | |
417 | +[0-9a-f]+: 90[ ]+nop * | |
418 | +[0-9a-f]+: 90[ ]+nop * | |
419 | +[0-9a-f]+: 90[ ]+nop * | |
420 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 421 | # LE @ntpoff, hidden var defined in exec, non-canonical sequence |
5a68afcf RM |
422 | +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx |
423 | +[0-9a-f]+: 90[ ]+nop * | |
424 | +[0-9a-f]+: 90[ ]+nop * | |
425 | +[0-9a-f]+: 81 c2 45 f0 ff ff[ ]+add \$0xfffff045,%edx | |
67a4f2b7 | 426 | # sh2+1 |
5a68afcf RM |
427 | +[0-9a-f]+: 90[ ]+nop * |
428 | +[0-9a-f]+: 90[ ]+nop * | |
429 | +[0-9a-f]+: 90[ ]+nop * | |
430 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 431 | # LE @ntpoff, global var defined in exec |
5a68afcf | 432 | +[0-9a-f]+: 65 a1 08 f0 ff ff[ ]+mov %gs:0xfffff008,%eax |
67a4f2b7 | 433 | # sg3 |
5a68afcf RM |
434 | +[0-9a-f]+: 90[ ]+nop * |
435 | +[0-9a-f]+: 90[ ]+nop * | |
436 | +[0-9a-f]+: 90[ ]+nop * | |
437 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 438 | # LE @ntpoff, local var |
5a68afcf | 439 | +[0-9a-f]+: 65 8b 15 8b f0 ff ff[ ]+mov %gs:0xfffff08b,%edx |
67a4f2b7 | 440 | # bl3+3 |
5a68afcf RM |
441 | +[0-9a-f]+: 90[ ]+nop * |
442 | +[0-9a-f]+: 90[ ]+nop * | |
443 | +[0-9a-f]+: 90[ ]+nop * | |
444 | +[0-9a-f]+: 90[ ]+nop * | |
67a4f2b7 | 445 | # LE @ntpoff, hidden var defined in exec |
5a68afcf | 446 | +[0-9a-f]+: 65 8b 15 49 f0 ff ff[ ]+mov %gs:0xfffff049,%edx |
67a4f2b7 | 447 | # sh3+1 |
5a68afcf RM |
448 | +[0-9a-f]+: 90[ ]+nop * |
449 | +[0-9a-f]+: 90[ ]+nop * | |
450 | +[0-9a-f]+: 90[ ]+nop * | |
451 | +[0-9a-f]+: 90[ ]+nop * | |
452 | +[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx | |
453 | +[0-9a-f]+: c9[ ]+leave * | |
454 | +[0-9a-f]+: c3[ ]+ret * |