Heuristic: If the number of operands in the alias are more than the number of
[llvm/stm8.git] / test / MC / X86 / x86-32.s
blob60178801efbe90953433bd7d2adfa1cc839ee1f7
1 // RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
3 pause
4 // CHECK: pause
5 // CHECK: encoding: [0xf3,0x90]
6 sfence
7 // CHECK: sfence
8 // CHECK: encoding: [0x0f,0xae,0xf8]
9 lfence
10 // CHECK: lfence
11 // CHECK: encoding: [0x0f,0xae,0xe8]
12 mfence
13 // CHECK: mfence
14 // CHECK: encoding: [0x0f,0xae,0xf0]
15 monitor
16 // CHECK: monitor
17 // CHECK: encoding: [0x0f,0x01,0xc8]
18 monitor %eax, %ecx, %edx
19 // CHECK: monitor
20 // CHECK: encoding: [0x0f,0x01,0xc8]
21 mwait
22 // CHECK: mwait
23 // CHECK: encoding: [0x0f,0x01,0xc9]
24 mwait %eax, %ecx
25 // CHECK: mwait
26 // CHECK: encoding: [0x0f,0x01,0xc9]
28 vmcall
29 // CHECK: vmcall
30 // CHECK: encoding: [0x0f,0x01,0xc1]
31 vmlaunch
32 // CHECK: vmlaunch
33 // CHECK: encoding: [0x0f,0x01,0xc2]
34 vmresume
35 // CHECK: vmresume
36 // CHECK: encoding: [0x0f,0x01,0xc3]
37 vmxoff
38 // CHECK: vmxoff
39 // CHECK: encoding: [0x0f,0x01,0xc4]
40 swapgs
41 // CHECK: swapgs
42 // CHECK: encoding: [0x0f,0x01,0xf8]
44 rdtscp
45 // CHECK: rdtscp
46 // CHECK: encoding: [0x0f,0x01,0xf9]
49 // CHECK: movl %eax, 16(%ebp) # encoding: [0x89,0x45,0x10]
50 movl %eax, 16(%ebp)
51 // CHECK: movl %eax, -16(%ebp) # encoding: [0x89,0x45,0xf0]
52 movl %eax, -16(%ebp)
54 // CHECK: testb %bl, %cl # encoding: [0x84,0xcb]
55 testb %bl, %cl
57 // CHECK: cmpl %eax, %ebx # encoding: [0x39,0xc3]
58 cmpl %eax, %ebx
60 // CHECK: addw %ax, %ax # encoding: [0x66,0x01,0xc0]
61 addw %ax, %ax
63 // CHECK: shrl %eax # encoding: [0xd1,0xe8]
64 shrl $1, %eax
66 // CHECK: shll %eax # encoding: [0xd1,0xe0]
67 sall $1, %eax
68 // CHECK: shll %eax # encoding: [0xd1,0xe0]
69 sal $1, %eax
71 // moffset forms of moves, rdar://7947184
72 movb 0, %al // CHECK: movb 0, %al # encoding: [0xa0,A,A,A,A]
73 movw 0, %ax // CHECK: movw 0, %ax # encoding: [0x66,0xa1,A,A,A,A]
74 movl 0, %eax // CHECK: movl 0, %eax # encoding: [0xa1,A,A,A,A]
76 // rdar://7973775
77 into
78 // CHECK: into
79 // CHECK: encoding: [0xce]
80 int3
81 // CHECK: int3
82 // CHECK: encoding: [0xcc]
83 int $4
84 // CHECK: int $4
85 // CHECK: encoding: [0xcd,0x04]
86 int $255
87 // CHECK: int $255
88 // CHECK: encoding: [0xcd,0xff]
90 // CHECK: pushfl # encoding: [0x9c]
91 pushf
92 // CHECK: pushfl # encoding: [0x9c]
93 pushfl
94 // CHECK: popfl # encoding: [0x9d]
95 popf
96 // CHECK: popfl # encoding: [0x9d]
97 popfl
99 // rdar://8014869
100 retl
101 // CHECK: ret
102 // CHECK: encoding: [0xc3]
104 // rdar://7973854
105 // CHECK: cmoval %eax, %edx
106 // CHECK: encoding: [0x0f,0x47,0xd0]
107 cmoval %eax,%edx
109 // CHECK: cmovael %eax, %edx
110 // CHECK: encoding: [0x0f,0x43,0xd0]
111 cmovael %eax,%edx
113 // CHECK: cmovbel %eax, %edx
114 // CHECK: encoding: [0x0f,0x46,0xd0]
115 cmovbel %eax,%edx
117 // CHECK: cmovbl %eax, %edx
118 // CHECK: encoding: [0x0f,0x42,0xd0]
119 cmovbl %eax,%edx
121 // CHECK: cmovbw %bx, %bx
122 cmovnae %bx,%bx
125 // CHECK: cmovbel %eax, %edx
126 // CHECK: encoding: [0x0f,0x46,0xd0]
127 cmovbel %eax,%edx
129 // CHECK: cmovbl %eax, %edx
130 // CHECK: encoding: [0x0f,0x42,0xd0]
131 cmovcl %eax,%edx
133 // CHECK: cmovel %eax, %edx
134 // CHECK: encoding: [0x0f,0x44,0xd0]
135 cmovel %eax,%edx
137 // CHECK: cmovgl %eax, %edx
138 // CHECK: encoding: [0x0f,0x4f,0xd0]
139 cmovgl %eax,%edx
141 // CHECK: cmovgel %eax, %edx
142 // CHECK: encoding: [0x0f,0x4d,0xd0]
143 cmovgel %eax,%edx
145 // CHECK: cmovll %eax, %edx
146 // CHECK: encoding: [0x0f,0x4c,0xd0]
147 cmovll %eax,%edx
149 // CHECK: cmovlel %eax, %edx
150 // CHECK: encoding: [0x0f,0x4e,0xd0]
151 cmovlel %eax,%edx
153 // CHECK: cmovbel %eax, %edx
154 // CHECK: encoding: [0x0f,0x46,0xd0]
155 cmovnal %eax,%edx
157 // CHECK: cmovnel %eax, %edx
158 // CHECK: encoding: [0x0f,0x45,0xd0]
159 cmovnel %eax,%edx
161 // CHECK: cmovael %eax, %edx
162 // CHECK: encoding: [0x0f,0x43,0xd0]
163 cmovnbl %eax,%edx
165 // CHECK: cmoval %eax, %edx
166 // CHECK: encoding: [0x0f,0x47,0xd0]
167 cmovnbel %eax,%edx
169 // CHECK: cmovael %eax, %edx
170 // CHECK: encoding: [0x0f,0x43,0xd0]
171 cmovncl %eax,%edx
173 // CHECK: cmovnel %eax, %edx
174 // CHECK: encoding: [0x0f,0x45,0xd0]
175 cmovnel %eax,%edx
177 // CHECK: cmovlel %eax, %edx
178 // CHECK: encoding: [0x0f,0x4e,0xd0]
179 cmovngl %eax,%edx
181 // CHECK: cmovgel %eax, %edx
182 // CHECK: encoding: [0x0f,0x4d,0xd0]
183 cmovnl %eax,%edx
185 // CHECK: cmovnel %eax, %edx
186 // CHECK: encoding: [0x0f,0x45,0xd0]
187 cmovnel %eax,%edx
189 // CHECK: cmovlel %eax, %edx
190 // CHECK: encoding: [0x0f,0x4e,0xd0]
191 cmovngl %eax,%edx
193 // CHECK: cmovll %eax, %edx
194 // CHECK: encoding: [0x0f,0x4c,0xd0]
195 cmovngel %eax,%edx
197 // CHECK: cmovgel %eax, %edx
198 // CHECK: encoding: [0x0f,0x4d,0xd0]
199 cmovnll %eax,%edx
201 // CHECK: cmovgl %eax, %edx
202 // CHECK: encoding: [0x0f,0x4f,0xd0]
203 cmovnlel %eax,%edx
205 // CHECK: cmovnol %eax, %edx
206 // CHECK: encoding: [0x0f,0x41,0xd0]
207 cmovnol %eax,%edx
209 // CHECK: cmovnpl %eax, %edx
210 // CHECK: encoding: [0x0f,0x4b,0xd0]
211 cmovnpl %eax,%edx
213 // CHECK: cmovnsl %eax, %edx
214 // CHECK: encoding: [0x0f,0x49,0xd0]
215 cmovnsl %eax,%edx
217 // CHECK: cmovnel %eax, %edx
218 // CHECK: encoding: [0x0f,0x45,0xd0]
219 cmovnzl %eax,%edx
221 // CHECK: cmovol %eax, %edx
222 // CHECK: encoding: [0x0f,0x40,0xd0]
223 cmovol %eax,%edx
225 // CHECK: cmovpl %eax, %edx
226 // CHECK: encoding: [0x0f,0x4a,0xd0]
227 cmovpl %eax,%edx
229 // CHECK: cmovsl %eax, %edx
230 // CHECK: encoding: [0x0f,0x48,0xd0]
231 cmovsl %eax,%edx
233 // CHECK: cmovel %eax, %edx
234 // CHECK: encoding: [0x0f,0x44,0xd0]
235 cmovzl %eax,%edx
237 // CHECK: cmpps $0, %xmm0, %xmm1
238 // CHECK: encoding: [0x0f,0xc2,0xc8,0x00]
239 cmpps $0, %xmm0, %xmm1
240 // CHECK: cmpps $0, (%eax), %xmm1
241 // CHECK: encoding: [0x0f,0xc2,0x08,0x00]
242 cmpps $0, 0(%eax), %xmm1
243 // CHECK: cmppd $0, %xmm0, %xmm1
244 // CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x00]
245 cmppd $0, %xmm0, %xmm1
246 // CHECK: cmppd $0, (%eax), %xmm1
247 // CHECK: encoding: [0x66,0x0f,0xc2,0x08,0x00]
248 cmppd $0, 0(%eax), %xmm1
249 // CHECK: cmpss $0, %xmm0, %xmm1
250 // CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x00]
251 cmpss $0, %xmm0, %xmm1
252 // CHECK: cmpss $0, (%eax), %xmm1
253 // CHECK: encoding: [0xf3,0x0f,0xc2,0x08,0x00]
254 cmpss $0, 0(%eax), %xmm1
255 // CHECK: cmpsd $0, %xmm0, %xmm1
256 // CHECK: encoding: [0xf2,0x0f,0xc2,0xc8,0x00]
257 cmpsd $0, %xmm0, %xmm1
258 // CHECK: cmpsd $0, (%eax), %xmm1
259 // CHECK: encoding: [0xf2,0x0f,0xc2,0x08,0x00]
260 cmpsd $0, 0(%eax), %xmm1
262 // Check matching of instructions which embed the SSE comparison code.
264 // CHECK: cmpps $0, %xmm0, %xmm1
265 // CHECK: encoding: [0x0f,0xc2,0xc8,0x00]
266 cmpeqps %xmm0, %xmm1
268 // CHECK: cmppd $1, %xmm0, %xmm1
269 // CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x01]
270 cmpltpd %xmm0, %xmm1
272 // CHECK: cmpss $2, %xmm0, %xmm1
273 // CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x02]
274 cmpless %xmm0, %xmm1
276 // CHECK: cmppd $3, %xmm0, %xmm1
277 // CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x03]
278 cmpunordpd %xmm0, %xmm1
280 // CHECK: cmpps $4, %xmm0, %xmm1
281 // CHECK: encoding: [0x0f,0xc2,0xc8,0x04]
282 cmpneqps %xmm0, %xmm1
284 // CHECK: cmppd $5, %xmm0, %xmm1
285 // CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x05]
286 cmpnltpd %xmm0, %xmm1
288 // CHECK: cmpss $6, %xmm0, %xmm1
289 // CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x06]
290 cmpnless %xmm0, %xmm1
292 // CHECK: cmpsd $7, %xmm0, %xmm1
293 // CHECK: encoding: [0xf2,0x0f,0xc2,0xc8,0x07]
294 cmpordsd %xmm0, %xmm1
296 // rdar://7995856
297 // CHECK: fmul %st(0)
298 // CHECK: encoding: [0xd8,0xc8]
299 fmul %st(0), %st
301 // CHECK: fadd %st(0)
302 // CHECK: encoding: [0xd8,0xc0]
303 fadd %st(0), %st
305 // CHECK: fsub %st(0)
306 // CHECK: encoding: [0xd8,0xe0]
307 fsub %st(0), %st
309 // CHECK: fsubr %st(0)
310 // CHECK: encoding: [0xd8,0xe8]
311 fsubr %st(0), %st
313 // CHECK: fdivr %st(0)
314 // CHECK: encoding: [0xd8,0xf8]
315 fdivr %st(0), %st
317 // CHECK: fdiv %st(0)
318 // CHECK: encoding: [0xd8,0xf0]
319 fdiv %st(0), %st
321 // radr://8017519
322 // CHECK: movl %cs, %eax
323 // CHECK: encoding: [0x8c,0xc8]
324 movl %cs, %eax
326 // CHECK: movw %cs, %ax
327 // CHECK: encoding: [0x66,0x8c,0xc8]
328 movw %cs, %ax
330 // CHECK: movl %cs, (%eax)
331 // CHECK: encoding: [0x8c,0x08]
332 movl %cs, (%eax)
334 // CHECK: movw %cs, (%eax)
335 // CHECK: encoding: [0x66,0x8c,0x08]
336 movw %cs, (%eax)
338 // CHECK: movl %eax, %cs
339 // CHECK: encoding: [0x8e,0xc8]
340 movl %eax, %cs
342 // CHECK: movl (%eax), %cs
343 // CHECK: encoding: [0x8e,0x08]
344 movl (%eax), %cs
346 // CHECK: movw (%eax), %cs
347 // CHECK: encoding: [0x66,0x8e,0x08]
348 movw (%eax), %cs
350 // radr://8033374
351 // CHECK: movl %cr0, %eax
352 // CHECK: encoding: [0x0f,0x20,0xc0]
353 movl %cr0,%eax
355 // CHECK: movl %cr1, %eax
356 // CHECK: encoding: [0x0f,0x20,0xc8]
357 movl %cr1,%eax
359 // CHECK: movl %cr2, %eax
360 // CHECK: encoding: [0x0f,0x20,0xd0]
361 movl %cr2,%eax
363 // CHECK: movl %cr3, %eax
364 // CHECK: encoding: [0x0f,0x20,0xd8]
365 movl %cr3,%eax
367 // CHECK: movl %cr4, %eax
368 // CHECK: encoding: [0x0f,0x20,0xe0]
369 movl %cr4,%eax
371 // CHECK: movl %dr0, %eax
372 // CHECK: encoding: [0x0f,0x21,0xc0]
373 movl %dr0,%eax
375 // CHECK: movl %dr1, %eax
376 // CHECK: encoding: [0x0f,0x21,0xc8]
377 movl %dr1,%eax
379 // CHECK: movl %dr1, %eax
380 // CHECK: encoding: [0x0f,0x21,0xc8]
381 movl %dr1,%eax
383 // CHECK: movl %dr2, %eax
384 // CHECK: encoding: [0x0f,0x21,0xd0]
385 movl %dr2,%eax
387 // CHECK: movl %dr3, %eax
388 // CHECK: encoding: [0x0f,0x21,0xd8]
389 movl %dr3,%eax
391 // CHECK: movl %dr4, %eax
392 // CHECK: encoding: [0x0f,0x21,0xe0]
393 movl %dr4,%eax
395 // CHECK: movl %dr5, %eax
396 // CHECK: encoding: [0x0f,0x21,0xe8]
397 movl %dr5,%eax
399 // CHECK: movl %dr6, %eax
400 // CHECK: encoding: [0x0f,0x21,0xf0]
401 movl %dr6,%eax
403 // CHECK: movl %dr7, %eax
404 // CHECK: encoding: [0x0f,0x21,0xf8]
405 movl %dr7,%eax
407 // radr://8017522
408 // CHECK: wait
409 // CHECK: encoding: [0x9b]
410 fwait
412 // rdar://7873482
413 // CHECK: [0x65,0x8b,0x05,0x7c,0x00,0x00,0x00]
414 // FIXME: This is a correct bug poor encoding: Use 65 a1 7c 00 00 00
415 movl %gs:124, %eax
417 // CHECK: pusha
418 // CHECK: encoding: [0x60]
419 pusha
421 // CHECK: popa
422 // CHECK: encoding: [0x61]
423 popa
425 // CHECK: pushal
426 // CHECK: encoding: [0x60]
427 pushal
429 // CHECK: popal
430 // CHECK: encoding: [0x61]
431 popal
433 // CHECK: jmpl *8(%eax)
434 // CHECK: encoding: [0xff,0x60,0x08]
435 jmp *8(%eax)
437 // PR7465
438 // CHECK: lcalll $2, $4660
439 // CHECK: encoding: [0x9a,0x34,0x12,0x00,0x00,0x02,0x00]
440 lcalll $0x2, $0x1234
443 // rdar://8061602
445 jcxz L1
446 // CHECK: jcxz L1
447 // CHECK: encoding: [0x67,0xe3,A]
448 jecxz L1
449 // CHECK: jecxz L1
450 // CHECK: encoding: [0xe3,A]
452 // rdar://8403974
453 iret
454 // CHECK: iretl
455 // CHECK: encoding: [0xcf]
456 iretw
457 // CHECK: iretw
458 // CHECK: encoding: [0x66,0xcf]
459 iretl
460 // CHECK: iretl
461 // CHECK: encoding: [0xcf]
463 // rdar://8403907
464 sysret
465 // CHECK: sysretl
466 // CHECK: encoding: [0x0f,0x07]
467 sysretl
468 // CHECK: sysretl
469 // CHECK: encoding: [0x0f,0x07]
471 // rdar://8018260
472 testl %ecx, -24(%ebp)
473 // CHECK: testl -24(%ebp), %ecx
474 testl -24(%ebp), %ecx
475 // CHECK: testl -24(%ebp), %ecx
478 // rdar://8407242
479 push %cs
480 // CHECK: pushl %cs
481 // CHECK: encoding: [0x0e]
482 push %ds
483 // CHECK: pushl %ds
484 // CHECK: encoding: [0x1e]
485 push %ss
486 // CHECK: pushl %ss
487 // CHECK: encoding: [0x16]
488 push %es
489 // CHECK: pushl %es
490 // CHECK: encoding: [0x06]
491 push %fs
492 // CHECK: pushl %fs
493 // CHECK: encoding: [0x0f,0xa0]
494 push %gs
495 // CHECK: pushl %gs
496 // CHECK: encoding: [0x0f,0xa8]
498 pushw %cs
499 // CHECK: pushw %cs
500 // CHECK: encoding: [0x66,0x0e]
501 pushw %ds
502 // CHECK: pushw %ds
503 // CHECK: encoding: [0x66,0x1e]
504 pushw %ss
505 // CHECK: pushw %ss
506 // CHECK: encoding: [0x66,0x16]
507 pushw %es
508 // CHECK: pushw %es
509 // CHECK: encoding: [0x66,0x06]
510 pushw %fs
511 // CHECK: pushw %fs
512 // CHECK: encoding: [0x66,0x0f,0xa0]
513 pushw %gs
514 // CHECK: pushw %gs
515 // CHECK: encoding: [0x66,0x0f,0xa8]
517 pop %ss
518 // CHECK: popl %ss
519 // CHECK: encoding: [0x17]
520 pop %ds
521 // CHECK: popl %ds
522 // CHECK: encoding: [0x1f]
523 pop %es
524 // CHECK: popl %es
525 // CHECK: encoding: [0x07]
527 // rdar://8408129
528 pushfd
529 // CHECK: pushfl
530 popfd
531 // CHECK: popfl
532 pushfl
533 // CHECK: pushfl
534 popfl
535 // CHECK: popfl
538 // rdar://8416805
539 setc %bl
540 setnae %bl
541 setnb %bl
542 setnc %bl
543 setna %bl
544 setnbe %bl
545 setpe %bl
546 setpo %bl
547 setnge %bl
548 setnl %bl
549 setng %bl
550 setnle %bl
552 // PR8686
553 setneb %cl // CHECK: setne %cl
554 setcb %bl // CHECK: setb %bl
555 setnaeb %bl // CHECK: setb %bl
558 // CHECK: lcalll $31438, $31438
559 // CHECK: lcalll $31438, $31438
560 // CHECK: ljmpl $31438, $31438
561 // CHECK: ljmpl $31438, $31438
563 calll $0x7ace,$0x7ace
564 lcalll $0x7ace,$0x7ace
565 jmpl $0x7ace,$0x7ace
566 ljmpl $0x7ace,$0x7ace
568 // CHECK: lcalll $31438, $31438
569 // CHECK: lcalll $31438, $31438
570 // CHECK: ljmpl $31438, $31438
571 // CHECK: ljmpl $31438, $31438
573 call $0x7ace,$0x7ace
574 lcall $0x7ace,$0x7ace
575 jmp $0x7ace,$0x7ace
576 ljmp $0x7ace,$0x7ace
578 // rdar://8456370
579 // CHECK: calll a
580 calll a
582 // CHECK: incb %al # encoding: [0xfe,0xc0]
583 incb %al
585 // CHECK: incw %ax # encoding: [0x66,0x40]
586 incw %ax
588 // CHECK: incl %eax # encoding: [0x40]
589 incl %eax
591 // CHECK: decb %al # encoding: [0xfe,0xc8]
592 decb %al
594 // CHECK: decw %ax # encoding: [0x66,0x48]
595 decw %ax
597 // CHECK: decl %eax # encoding: [0x48]
598 decl %eax
600 // CHECK: pshufw $14, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x0e]
601 pshufw $14, %mm4, %mm0
603 // CHECK: pshufw $90, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x5a]
604 // PR8288
605 pshufw $90, %mm4, %mm0
607 // rdar://8416805
608 // CHECK: aaa
609 // CHECK: encoding: [0x37]
612 // CHECK: aad $1
613 // CHECK: encoding: [0xd5,0x01]
614 aad $1
616 // CHECK: aad
617 // CHECK: encoding: [0xd5,0x0a]
618 aad $0xA
620 // CHECK: aad
621 // CHECK: encoding: [0xd5,0x0a]
624 // CHECK: aam $2
625 // CHECK: encoding: [0xd4,0x02]
626 aam $2
628 // CHECK: aam
629 // CHECK: encoding: [0xd4,0x0a]
630 aam $0xA
632 // CHECK: aam
633 // CHECK: encoding: [0xd4,0x0a]
636 // CHECK: aas
637 // CHECK: encoding: [0x3f]
640 // CHECK: daa
641 // CHECK: encoding: [0x27]
644 // CHECK: das
645 // CHECK: encoding: [0x2f]
648 // CHECK: retw $31438
649 // CHECK: encoding: [0x66,0xc2,0xce,0x7a]
650 retw $0x7ace
652 // CHECK: lretw $31438
653 // CHECK: encoding: [0x66,0xca,0xce,0x7a]
654 lretw $0x7ace
656 // CHECK: bound 2(%eax), %bx
657 // CHECK: encoding: [0x66,0x62,0x58,0x02]
658 bound 2(%eax),%bx
660 // CHECK: bound 4(%ebx), %ecx
661 // CHECK: encoding: [0x62,0x4b,0x04]
662 bound 4(%ebx),%ecx
664 // CHECK: arpl %bx, %bx
665 // CHECK: encoding: [0x63,0xdb]
666 arpl %bx,%bx
668 // CHECK: arpl %bx, 6(%ecx)
669 // CHECK: encoding: [0x63,0x59,0x06]
670 arpl %bx,6(%ecx)
672 // CHECK: lgdtw 4(%eax)
673 // CHECK: encoding: [0x66,0x0f,0x01,0x50,0x04]
674 lgdtw 4(%eax)
676 // CHECK: lgdt 4(%eax)
677 // CHECK: encoding: [0x0f,0x01,0x50,0x04]
678 lgdt 4(%eax)
680 // CHECK: lgdt 4(%eax)
681 // CHECK: encoding: [0x0f,0x01,0x50,0x04]
682 lgdtl 4(%eax)
684 // CHECK: lidtw 4(%eax)
685 // CHECK: encoding: [0x66,0x0f,0x01,0x58,0x04]
686 lidtw 4(%eax)
688 // CHECK: lidt 4(%eax)
689 // CHECK: encoding: [0x0f,0x01,0x58,0x04]
690 lidt 4(%eax)
692 // CHECK: lidt 4(%eax)
693 // CHECK: encoding: [0x0f,0x01,0x58,0x04]
694 lidtl 4(%eax)
696 // CHECK: sgdtw 4(%eax)
697 // CHECK: encoding: [0x66,0x0f,0x01,0x40,0x04]
698 sgdtw 4(%eax)
700 // CHECK: sgdt 4(%eax)
701 // CHECK: encoding: [0x0f,0x01,0x40,0x04]
702 sgdt 4(%eax)
704 // CHECK: sgdt 4(%eax)
705 // CHECK: encoding: [0x0f,0x01,0x40,0x04]
706 sgdtl 4(%eax)
708 // CHECK: sidtw 4(%eax)
709 // CHECK: encoding: [0x66,0x0f,0x01,0x48,0x04]
710 sidtw 4(%eax)
712 // CHECK: sidt 4(%eax)
713 // CHECK: encoding: [0x0f,0x01,0x48,0x04]
714 sidt 4(%eax)
716 // CHECK: sidt 4(%eax)
717 // CHECK: encoding: [0x0f,0x01,0x48,0x04]
718 sidtl 4(%eax)
720 // CHECK: fcompi %st(2)
721 // CHECK: encoding: [0xdf,0xf2]
722 fcompi %st(2), %st
724 // CHECK: fcompi %st(2)
725 // CHECK: encoding: [0xdf,0xf2]
726 fcompi %st(2)
728 // CHECK: fcompi
729 // CHECK: encoding: [0xdf,0xf1]
730 fcompi
732 // CHECK: fucompi %st(2)
733 // CHECK: encoding: [0xdf,0xea]
734 fucompi %st(2),%st
736 // CHECK: fucompi %st(2)
737 // CHECK: encoding: [0xdf,0xea]
738 fucompi %st(2)
740 // CHECK: fucompi
741 // CHECK: encoding: [0xdf,0xe9]
742 fucompi
744 // CHECK: fldcw 32493
745 // CHECK: encoding: [0xd9,0x2d,0xed,0x7e,0x00,0x00]
746 fldcww 0x7eed
748 // CHECK: fldcw 32493
749 // CHECK: encoding: [0xd9,0x2d,0xed,0x7e,0x00,0x00]
750 fldcw 0x7eed
752 // CHECK: fnstcw 32493
753 // CHECK: encoding: [0xd9,0x3d,0xed,0x7e,0x00,0x00]
754 fnstcww 0x7eed
756 // CHECK: fnstcw 32493
757 // CHECK: encoding: [0xd9,0x3d,0xed,0x7e,0x00,0x00]
758 fnstcw 0x7eed
760 // CHECK: wait
761 // CHECK: encoding: [0x9b]
762 fstcww 0x7eed
764 // CHECK: wait
765 // CHECK: encoding: [0x9b]
766 fstcw 0x7eed
768 // CHECK: fnstsw 32493
769 // CHECK: encoding: [0xdd,0x3d,0xed,0x7e,0x00,0x00]
770 fnstsww 0x7eed
772 // CHECK: fnstsw 32493
773 // CHECK: encoding: [0xdd,0x3d,0xed,0x7e,0x00,0x00]
774 fnstsw 0x7eed
776 // CHECK: wait
777 // CHECK: encoding: [0x9b]
778 fstsww 0x7eed
780 // CHECK: wait
781 // CHECK: encoding: [0x9b]
782 fstsw 0x7eed
784 // CHECK: verr 32493
785 // CHECK: encoding: [0x0f,0x00,0x25,0xed,0x7e,0x00,0x00]
786 verrw 0x7eed
788 // CHECK: verr 32493
789 // CHECK: encoding: [0x0f,0x00,0x25,0xed,0x7e,0x00,0x00]
790 verr 0x7eed
792 // CHECK: wait
793 // CHECK: encoding: [0x9b]
794 fclex
796 // CHECK: fnclex
797 // CHECK: encoding: [0xdb,0xe2]
798 fnclex
800 // CHECK: ud2
801 // CHECK: encoding: [0x0f,0x0b]
804 // CHECK: ud2
805 // CHECK: encoding: [0x0f,0x0b]
806 ud2a
808 // CHECK: ud2b
809 // CHECK: encoding: [0x0f,0xb9]
810 ud2b
812 // CHECK: loope 0
813 // CHECK: encoding: [0xe1,A]
814 loopz 0
816 // CHECK: loopne 0
817 // CHECK: encoding: [0xe0,A]
818 loopnz 0
820 // CHECK: outsb # encoding: [0x6e]
821 // CHECK: outsb
822 // CHECK: outsb
823 outsb
824 outsb %ds:(%esi), %dx
825 outsb (%esi), %dx
827 // CHECK: outsw # encoding: [0x66,0x6f]
828 // CHECK: outsw
829 // CHECK: outsw
830 outsw
831 outsw %ds:(%esi), %dx
832 outsw (%esi), %dx
834 // CHECK: outsl # encoding: [0x6f]
835 // CHECK: outsl
836 outsl
837 outsl %ds:(%esi), %dx
838 outsl (%esi), %dx
840 // CHECK: insb # encoding: [0x6c]
841 // CHECK: insb
842 insb
843 insb %dx, %es:(%edi)
845 // CHECK: insw # encoding: [0x66,0x6d]
846 // CHECK: insw
847 insw
848 insw %dx, %es:(%edi)
850 // CHECK: insl # encoding: [0x6d]
851 // CHECK: insl
852 insl
853 insl %dx, %es:(%edi)
855 // CHECK: movsb # encoding: [0xa4]
856 // CHECK: movsb
857 // CHECK: movsb
858 movsb
859 movsb %ds:(%esi), %es:(%edi)
860 movsb (%esi), %es:(%edi)
862 // CHECK: movsw # encoding: [0x66,0xa5]
863 // CHECK: movsw
864 // CHECK: movsw
865 movsw
866 movsw %ds:(%esi), %es:(%edi)
867 movsw (%esi), %es:(%edi)
869 // CHECK: movsd # encoding: [0xa5]
870 // CHECK: movsd
871 // CHECK: movsd
872 movsl
873 movsl %ds:(%esi), %es:(%edi)
874 movsl (%esi), %es:(%edi)
876 // CHECK: lodsb # encoding: [0xac]
877 // CHECK: lodsb
878 // CHECK: lodsb
879 // CHECK: lodsb
880 // CHECK: lodsb
881 lodsb
882 lodsb %ds:(%esi), %al
883 lodsb (%esi), %al
884 lods %ds:(%esi), %al
885 lods (%esi), %al
887 // CHECK: lodsw # encoding: [0x66,0xad]
888 // CHECK: lodsw
889 // CHECK: lodsw
890 // CHECK: lodsw
891 // CHECK: lodsw
892 lodsw
893 lodsw %ds:(%esi), %ax
894 lodsw (%esi), %ax
895 lods %ds:(%esi), %ax
896 lods (%esi), %ax
898 // CHECK: lodsl # encoding: [0xad]
899 // CHECK: lodsl
900 // CHECK: lodsl
901 // CHECK: lodsl
902 // CHECK: lodsl
903 lodsl
904 lodsl %ds:(%esi), %eax
905 lodsl (%esi), %eax
906 lods %ds:(%esi), %eax
907 lods (%esi), %eax
909 // CHECK: stosb # encoding: [0xaa]
910 // CHECK: stosb
911 // CHECK: stosb
912 stosb
913 stosb %al, %es:(%edi)
914 stos %al, %es:(%edi)
916 // CHECK: stosw # encoding: [0x66,0xab]
917 // CHECK: stosw
918 // CHECK: stosw
919 stosw
920 stosw %ax, %es:(%edi)
921 stos %ax, %es:(%edi)
923 // CHECK: stosl # encoding: [0xab]
924 // CHECK: stosl
925 // CHECK: stosl
926 stosl
927 stosl %eax, %es:(%edi)
928 stos %eax, %es:(%edi)
930 // CHECK: strw
931 // CHECK: encoding: [0x66,0x0f,0x00,0xc8]
932 str %ax
934 // CHECK: strl
935 // CHECK: encoding: [0x0f,0x00,0xc8]
936 str %eax
939 // PR9378
940 // CHECK: fsubp
941 // CHECK: encoding: [0xde,0xe1]
942 fsubp %st,%st(1)
944 // PR9164
945 // CHECK: fsubp %st(2)
946 // CHECK: encoding: [0xde,0xe2]
947 fsubp %st, %st(2)