[InstCombine] Signed saturation tests. NFC
[llvm-core.git] / test / MC / Disassembler / X86 / x86-16.txt
blob5820b5e273a814ae9c14c0293edf7cbf681090be
1 # RUN: llvm-mc --disassemble %s -triple=i686-linux-gnu-code16 | FileCheck %s
3 # CHECK: movl $305419896, %ebx
4 0x66 0xbb 0x78 0x56 0x34 0x12
6 # CHECK: pause
7 0xf3 0x90
9 # CHECK: sfence
10 0x0f 0xae 0xf8
12 # CHECK: lfence
13 0x0f 0xae 0xe8
15 # CHECK: mfence
16 0x0f 0xae 0xf0
18 # CHECK: stgi
19 0x0f 0x01 0xdc
21 # CHECK: clgi
22 0x0f 0x01 0xdd
24 # CHECK: rdtscp
25 0x0f 0x01 0xf9
27 # CHECK: movl %eax, 16(%ebp)
28 0x67 0x66 0x89 0x45 0x10
30 # CHECK: movl %eax, -16(%ebp)
31 0x67 0x66 0x89 0x45 0xf0
33 # CHECK: testb %cl, %bl
34 0x84 0xcb
36 # CHECK: cmpl %eax, %ebx
37 0x66 0x39 0xc3
39 # CHECK: addw %ax, %ax
40 0x01 0xc0
42 # CHECK: shrl %eax
43 0x66 0xd1 0xe8
45 # CHECK: shll %eax
46 0x66 0xd1 0xe0
48 # CHECK: shll %eax
49 0x66 0xd1 0xe0
51 # CHECK: movb 0, %al
52 0xa0 0x00 0x00
54 # CHECK: movw 0, %ax
55 0xa1 0x00 0x00
57 # CHECK: movl 0, %eax
58 0x66 0xa1 0x00 0x00
60 # CHECK: into
61 0xce
63 # CHECK: int3
64 0xcc
66 # CHECK: int $4
67 0xcd 0x04
69 # CHECK: int $127
70 0xcd 0x7f
72 # CHECK: pushfw
73 0x9c
75 # CHECK: pushfl
76 0x66 0x9c
78 # CHECK: popfw
79 0x9d
81 # CHECK: popfl
82 0x66 0x9d
84 # CHECK: retl
85 0x66 0xc3
87 # CHECK: cmoval %eax, %edx
88 0x66 0x0f 0x47 0xd0
90 # CHECK: cmovael %eax, %edx
91 0x66 0x0f 0x43 0xd0
93 # CHECK: cmovbel %eax, %edx
94 0x66 0x0f 0x46 0xd0
96 # CHECK: cmovbl %eax, %edx
97 0x66 0x0f 0x42 0xd0
99 # CHECK: cmovbw %bx, %bx
100 0x0f 0x42 0xdb
102 # CHECK: cmovbel %eax, %edx
103 0x66 0x0f 0x46 0xd0
105 # CHECK: cmovbl %eax, %edx
106 0x66 0x0f 0x42 0xd0
108 # CHECK: cmovel %eax, %edx
109 0x66 0x0f 0x44 0xd0
111 # CHECK: cmovgl %eax, %edx
112 0x66 0x0f 0x4f 0xd0
114 # CHECK: cmovgel %eax, %edx
115 0x66 0x0f 0x4d 0xd0
117 # CHECK: cmovll %eax, %edx
118 0x66 0x0f 0x4c 0xd0
120 # CHECK: cmovlel %eax, %edx
121 0x66 0x0f 0x4e 0xd0
123 # CHECK: cmovbel %eax, %edx
124 0x66 0x0f 0x46 0xd0
126 # CHECK: cmovnel %eax, %edx
127 0x66 0x0f 0x45 0xd0
129 # CHECK: cmovael %eax, %edx
130 0x66 0x0f 0x43 0xd0
132 # CHECK: cmoval %eax, %edx
133 0x66 0x0f 0x47 0xd0
135 # CHECK: cmovael %eax, %edx
136 0x66 0x0f 0x43 0xd0
138 # CHECK: cmovnel %eax, %edx
139 0x66 0x0f 0x45 0xd0
141 # CHECK: cmovlel %eax, %edx
142 0x66 0x0f 0x4e 0xd0
144 # CHECK: cmovgel %eax, %edx
145 0x66 0x0f 0x4d 0xd0
147 # CHECK: cmovnel %eax, %edx
148 0x66 0x0f 0x45 0xd0
150 # CHECK: cmovlel %eax, %edx
151 0x66 0x0f 0x4e 0xd0
153 # CHECK: cmovll %eax, %edx
154 0x66 0x0f 0x4c 0xd0
156 # CHECK: cmovgel %eax, %edx
157 0x66 0x0f 0x4d 0xd0
159 # CHECK: cmovgl %eax, %edx
160 0x66 0x0f 0x4f 0xd0
162 # CHECK: cmovnol %eax, %edx
163 0x66 0x0f 0x41 0xd0
165 # CHECK: cmovnpl %eax, %edx
166 0x66 0x0f 0x4b 0xd0
168 # CHECK: cmovnsl %eax, %edx
169 0x66 0x0f 0x49 0xd0
171 # CHECK: cmovnel %eax, %edx
172 0x66 0x0f 0x45 0xd0
174 # CHECK: cmovol %eax, %edx
175 0x66 0x0f 0x40 0xd0
177 # CHECK: cmovpl %eax, %edx
178 0x66 0x0f 0x4a 0xd0
180 # CHECK: cmovsl %eax, %edx
181 0x66 0x0f 0x48 0xd0
183 # CHECK: cmovel %eax, %edx
184 0x66 0x0f 0x44 0xd0
186 # CHECK: fmul %st(0)
187 0xd8 0xc8
189 # CHECK: fadd %st(0)
190 0xd8 0xc0
192 # CHECK: fsub %st(0)
193 0xd8 0xe0
195 # CHECK: fsubr %st(0)
196 0xd8 0xe8
198 # CHECK: fdivr %st(0)
199 0xd8 0xf8
201 # CHECK: fdiv %st(0)
202 0xd8 0xf0
204 # CHECK: movl %cs, %eax
205 0x66 0x8c 0xc8
207 # CHECK: movw %cs, %ax
208 0x8c 0xc8
210 # CHECK: movw %cs, (%eax)
211 0x67 0x66 0x8c 0x08
213 # CHECK: movw %cs, (%eax)
214 0x67 0x8c 0x08
216 # CHECK: movl %eax, %cs
217 0x66 0x8e 0xc8
219 # CHECK: movw (%eax), %cs
220 0x67 0x66 0x8e 0x08
222 # CHECK: movw (%eax), %cs
223 0x67 0x8e 0x08
225 # CHECKX: movl %cr0, %eax
226 0x0f 0x20 0xc0
228 # CHECKX: movl %cr1, %eax
229 0x0f 0x20 0xc8
231 # CHECKX: movl %cr2, %eax
232 0x0f 0x20 0xd0
234 # CHECKX: movl %cr3, %eax
235 0x0f 0x20 0xd8
237 # CHECKX: movl %cr4, %eax
238 0x0f 0x20 0xe0
240 # CHECKX: movl %dr0, %eax
241 0x0f 0x21 0xc0
243 # CHECKX: movl %dr1, %eax
244 0x0f 0x21 0xc8
246 # CHECKX: movl %dr1, %eax
247 0x0f 0x21 0xc8
249 # CHECKX: movl %dr2, %eax
250 0x0f 0x21 0xd0
252 # CHECKX: movl %dr3, %eax
253 0x0f 0x21 0xd8
255 # CHECKX: movl %dr4, %eax
256 0x0f 0x21 0xe0
258 # CHECKX: movl %dr5, %eax
259 0x0f 0x21 0xe8
261 # CHECKX: movl %dr6, %eax
262 0x0f 0x21 0xf0
264 # CHECKX: movl %dr7, %eax
265 0x0f 0x21 0xf8
267 # CHECK: wait
268 0x9b
270 # CHECK: movl %gs:124, %eax
271 0x65 0x66 0x8b 0x06 0x7c 0x00
273 # CHECK: pushaw
274 0x60
276 # CHECK: popaw
277 0x61
279 # CHECK: pushaw
280 0x60
282 # CHECK: popaw
283 0x61
285 # CHECK: pushal
286 0x66 0x60
288 # CHECK: popal
289 0x66 0x61
291 # CHECK: jmpw *8(%eax)
292 0x67 0xff 0x60 0x08
294 # CHECK: jmpl *8(%eax)
295 0x67 0x66 0xff 0x60 0x08
297 # CHECK: lcalll $2, $4660
298 0x66 0x9a 0x34 0x12 0x00 0x00 0x02 0x00
300 # CHECK: jcxz
301 0xe3 0x00
303 # CHECK: jecxz
304 0x67 0xe3 0x00
306 # CHECK: iretw
307 0xcf
309 # CHECK: iretw
310 0xcf
312 # CHECK: iretl
313 0x66 0xcf
315 # CHECK: sysretl
316 0x0f 0x07
318 # CHECK: sysretl
319 0x0f 0x07
321 # CHECK: testl %ecx, -24(%ebp)
322 0x67 0x66 0x85 0x4d 0xe8
324 # CHECK: testl %ecx, -24(%ebp)
325 0x67 0x66 0x85 0x4d 0xe8
327 # CHECK: pushw %cs
328 0x0e
330 # CHECK: pushw %ds
331 0x1e
333 # CHECK: pushw %ss
334 0x16
336 # CHECK: pushw %es
337 0x06
339 # CHECK: pushw %fs
340 0x0f 0xa0
342 # CHECK: pushw %gs
343 0x0f 0xa8
345 # CHECK: pushw %cs
346 0x0e
348 # CHECK: pushw %ds
349 0x1e
351 # CHECK: pushw %ss
352 0x16
354 # CHECK: pushw %es
355 0x06
357 # CHECK: pushw %fs
358 0x0f 0xa0
360 # CHECK: pushw %gs
361 0x0f 0xa8
363 # CHECK: pushl %cs
364 0x66 0x0e
366 # CHECK: pushl %ds
367 0x66 0x1e
369 # CHECK: pushl %ss
370 0x66 0x16
372 # CHECK: pushl %es
373 0x66 0x06
375 # CHECK: pushl %fs
376 0x66 0x0f 0xa0
378 # CHECK: pushl %gs
379 0x66 0x0f 0xa8
381 # CHECK: popw %ss
382 0x17
384 # CHECK: popw %ds
385 0x1f
387 # CHECK: popw %es
388 0x07
390 # CHECK: popl %ss
391 0x66 0x17
393 # CHECK: popl %ds
394 0x66 0x1f
396 # CHECK: popl %es
397 0x66 0x07
399 # CHECK: pushfl
400 0x66 0x9c
402 # CHECK: popfl
403 0x66 0x9d
405 # CHECK: pushfl
406 0x66 0x9c
408 # CHECK: popfl
409 0x66 0x9d
411 # CHECK: salc
412 0xd6
414 # CHECK: setb %bl
415 0x0f 0x92 0xc3
417 # CHECK: setb %bl
418 0x0f 0x92 0xc3
420 # CHECK: setae %bl
421 0x0f 0x93 0xc3
423 # CHECK: setae %bl
424 0x0f 0x93 0xc3
426 # CHECK: setbe %bl
427 0x0f 0x96 0xc3
429 # CHECK: seta %bl
430 0x0f 0x97 0xc3
432 # CHECK: setp %bl
433 0x0f 0x9a 0xc3
435 # CHECK: setnp %bl
436 0x0f 0x9b 0xc3
438 # CHECK: setl %bl
439 0x0f 0x9c 0xc3
441 # CHECK: setge %bl
442 0x0f 0x9d 0xc3
444 # CHECK: setle %bl
445 0x0f 0x9e 0xc3
447 # CHECK: setg %bl
448 0x0f 0x9f 0xc3
450 # CHECK: setne %cl
451 0x0f 0x95 0xc1
453 # CHECK: setb %bl
454 0x0f 0x92 0xc3
456 # CHECK: setb %bl
457 0x0f 0x92 0xc3
459 # CHECK: lcalll $31438, $31438
460 0x66 0x9a 0xce 0x7a 0x00 0x00 0xce 0x7a
462 # CHECK: lcalll $31438, $31438
463 0x66 0x9a 0xce 0x7a 0x00 0x00 0xce 0x7a
465 # CHECK: ljmpl $31438, $31438
466 0x66 0xea 0xce 0x7a 0x00 0x00 0xce 0x7a
468 # CHECK: ljmpl $31438, $31438
469 0x66 0xea 0xce 0x7a 0x00 0x00 0xce 0x7a
471 # CHECK: lcallw $31438, $31438
472 0x9a 0xce 0x7a 0xce 0x7a
474 # CHECK: lcallw $31438, $31438
475 0x9a 0xce 0x7a 0xce 0x7a
477 # CHECK: ljmpw $31438, $31438
478 0xea 0xce 0x7a 0xce 0x7a
480 # CHECK: ljmpw $31438, $31438
481 0xea 0xce 0x7a 0xce 0x7a
483 # CHECK: lcallw $31438, $31438
484 0x9a 0xce 0x7a 0xce 0x7a
486 # CHECK: lcallw $31438, $31438
487 0x9a 0xce 0x7a 0xce 0x7a
489 # CHECK: ljmpw $31438, $31438
490 0xea 0xce 0x7a 0xce 0x7a
492 # CHECK: ljmpw $31438, $31438
493 0xea 0xce 0x7a 0xce 0x7a
495 # CHECK: calll 
496 0x66 0xe8 0x00 0x00 0x00 0x00
498 # CHECK: callw
499 0xe8 0x00 0x00
501 # CHECK: incb %al
502 0xfe 0xc0
504 # CHECK: incw %ax
505 0x40
507 # CHECK: incl %eax
508 0x66 0x40
510 # CHECK: decb %al
511 0xfe 0xc8
513 # CHECK: decw %ax
514 0x48
516 # CHECK: decl %eax
517 0x66 0x48
519 # CHECK: pshufw $14, %mm4, %mm0
520 0x0f 0x70 0xc4 0x0e
522 # CHECK: pshufw $90, %mm4, %mm0
523 0x0f 0x70 0xc4 0x5a
525 # CHECK: aaa
526 0x37
528 # CHECK: aad $1
529 0xd5 0x01
531 # CHECK: aad
532 0xd5 0x0a
534 # CHECK: aad
535 0xd5 0x0a
537 # CHECK: aam $2
538 0xd4 0x02
540 # CHECK: aam
541 0xd4 0x0a
543 # CHECK: aam
544 0xd4 0x0a
546 # CHECK: aas
547 0x3f
549 # CHECK: daa
550 0x27
552 # CHECK: das
553 0x2f
555 # CHECK: retw $31438
556 0xc2 0xce 0x7a
558 # CHECK: lretw $31438
559 0xca 0xce 0x7a
561 # CHECK: retw $31438
562 0xc2 0xce 0x7a
564 # CHECK: lretw $31438
565 0xca 0xce 0x7a
567 # CHECK: retl $31438
568 0x66 0xc2 0xce 0x7a
570 # CHECK: lretl $31438
571 0x66 0xca 0xce 0x7a
573 # CHECK: bound %bx, 2(%eax)
574 0x67 0x62 0x58 0x02
576 # CHECK: bound %ecx, 4(%ebx)
577 0x67 0x66 0x62 0x4b 0x04
579 # CHECK: arpl %bx, %bx
580 0x63 0xdb
582 # CHECK: arpl %bx, 6(%ecx)
583 0x67 0x63 0x59 0x06
585 # CHECK: lgdtw 4(%eax)
586 0x67 0x0f 0x01 0x50 0x04
588 # CHECK: lgdtw 4(%eax)
589 0x67 0x0f 0x01 0x50 0x04
591 # CHECK: lgdtl 4(%eax)
592 0x67 0x66 0x0f 0x01 0x50 0x04
594 # CHECK: lidtw 4(%eax)
595 0x67 0x0f 0x01 0x58 0x04
597 # CHECK: lidtw 4(%eax)
598 0x67 0x0f 0x01 0x58 0x04
600 # CHECK: lidtl 4(%eax)
601 0x67 0x66 0x0f 0x01 0x58 0x04
603 # CHECK: sgdtw 4(%eax)
604 0x67 0x0f 0x01 0x40 0x04
606 # CHECK: sgdtw 4(%eax)
607 0x67 0x0f 0x01 0x40 0x04
609 # CHECK: sgdtl 4(%eax)
610 0x67 0x66 0x0f 0x01 0x40 0x04
612 # CHECK: sidtw 4(%eax)
613 0x67 0x0f 0x01 0x48 0x04
615 # CHECK: sidtw 4(%eax)
616 0x67 0x0f 0x01 0x48 0x04
618 # CHECK: sidtl 4(%eax)
619 0x67 0x66 0x0f 0x01 0x48 0x04
621 # CHECK: fcompi %st(2)
622 0xdf 0xf2
624 # CHECK: fcompi %st(2)
625 0xdf 0xf2
627 # CHECK: fcompi %st(1)
628 0xdf 0xf1
630 # CHECK: fucompi %st(2)
631 0xdf 0xea
633 # CHECK: fucompi %st(2)
634 0xdf 0xea
636 # CHECK: fucompi %st(1)
637 0xdf 0xe9
639 # CHECK: fldcw 32493
640 0xd9 0x2e 0xed 0x7e
642 # CHECK: fldcw 32493
643 0xd9 0x2e 0xed 0x7e
645 # CHECK: fnstcw 32493
646 0xd9 0x3e 0xed 0x7e
648 # CHECK: fnstcw 32493
649 0xd9 0x3e 0xed 0x7e
651 # CHECK: wait
652 0x9b
654 # CHECK: fnstcw 32493
655 0xd9 0x3e 0xed 0x7e
657 # CHECK: wait
658 0x9b
660 # CHECK: fnstcw 32493
661 0xd9 0x3e 0xed 0x7e
663 # CHECK: fnstsw 32493
664 0xdd 0x3e 0xed 0x7e
666 # CHECK: fnstsw 32493
667 0xdd 0x3e 0xed 0x7e
669 # CHECK: wait
670 0x9b
672 # CHECK: fnstsw 32493
673 0xdd 0x3e 0xed 0x7e
675 # CHECK: wait
676 0x9b
678 # CHECK: fnstsw 32493
679 0xdd 0x3e 0xed 0x7e
681 # CHECK: verr 32493
682 0x0f 0x00 0x26 0xed 0x7e
684 # CHECK: verr 32493
685 0x0f 0x00 0x26 0xed 0x7e
687 # CHECK: wait
688 0x9b
690 # CHECK: fnclex
691 0xdb 0xe2
693 # CHECK: fnclex
694 0xdb 0xe2
696 # CHECK: ud2
697 0x0f 0x0b
699 # CHECK: ud2
700 0x0f 0x0b
702 # CHECK: ud2b
703 0x0f 0xb9
705 # CHECK: loope
706 0xe1 0x00
708 # CHECK: loopne
709 0xe0 0x00
711 # CHECK: outsb
712 0x6e
714 # CHECK: outsw
715 0x6f
717 # CHECK: outsl
718 0x66 0x6f
720 # CHECK: insb
721 0x6c
723 # CHECK: insw
724 0x6d
726 # CHECK: insl
727 0x66 0x6d
729 # CHECK: movsb
730 0xa4
732 # CHECK: movsw
733 0xa5
735 # CHECK: movsl
736 0x66 0xa5
738 # CHECK: lodsb
739 0xac
741 # CHECK: lodsw
742 0xad
744 # CHECK: lodsl
745 0x66 0xad
747 # CHECK: stosb
748 0xaa
750 # CHECK: stosw
751 0xab
753 # CHECK: stosl
754 0x66 0xab
756 # CHECK: strw %ax
757 0x0f 0x00 0xc8
759 # CHECK: strl %eax
760 0x66 0x0f 0x00 0xc8
762 # CHECK: fsubp %st, %st(1)
763 0xde 0xe1
765 # CHECK: fsubp %st, %st(2)
766 0xde 0xe2
768 # CHECKX: nop
769 0x66 0x90
771 # CHECKX: nop
772 0x90
774 # CHECK: xchgl %ecx, %eax
775 0x66 0x91
777 # CHECK: xchgl %ecx, %eax
778 0x66 0x91
780 # CHECK: retw
781 0xc3
783 # CHECK: retl
784 0x66 0xc3
786 # CHECK: lretw
787 0xcb
789 # CHECK: lretl
790 0x66 0xcb
792 # CHECK: callw  -1
793 0xe8 0xff 0xff
795 # CHECK: wbnoinvd
796 0xf3 0x0f 0x09
798 # CHECK: umonitor %ax
799 0xf3 0x0f 0xae 0xf0
801 # CHECK: umonitor %eax
802 0x67 0xf3 0x0f 0xae 0xf0
804 #CHECK: movdir64b (%esi), %eax
805 0x67 0x66 0x0f 0x38 0xf8 0x06
807 #CHECK: movdir64b (%si), %ax
808 0x66 0x0f 0x38 0xf8 0x04
810 # CHECK: enqcmd (%bx), %di
811 0xf2,0x0f,0x38,0xf8,0x3f
813 # CHECK: enqcmd 8128(%si), %ax
814 0xf2,0x0f,0x38,0xf8,0x84,0xc0,0x1f
816 # CHECK: enqcmd -8192(%di), %bx
817 0xf2,0x0f,0x38,0xf8,0x9d,0x00,0xe0
819 # CHECK: enqcmd 7408, %cx
820 0xf2,0x0f,0x38,0xf8,0x0e,0xf0,0x1c
822 # CHECK: enqcmds (%bx), %di
823 0xf3,0x0f,0x38,0xf8,0x3f
825 # CHECK: enqcmds 8128(%si), %ax
826 0xf3,0x0f,0x38,0xf8,0x84,0xc0,0x1f
828 # CHECK: enqcmds -8192(%di), %bx
829 0xf3,0x0f,0x38,0xf8,0x9d,0x00,0xe0
831 # CHECK: enqcmds 7408, %cx
832 0xf3,0x0f,0x38,0xf8,0x0e,0xf0,0x1c
834 # CHECK: enqcmd (%edi), %edi
835 0x67,0xf2,0x0f,0x38,0xf8,0x3f
837 # CHECK: enqcmds (%edi), %edi
838 0x67,0xf3,0x0f,0x38,0xf8,0x3f