1 // RUN
: llvm-mc
-triple x86_64-unknown-unknown
-show-encoding
%s
> %t 2> %t.err
2 // RUN
: FileCheck
< %t %s
3 // RUN
: FileCheck
--check-prefix
=CHECK-STDERR
< %t.err
%s
8 // CHECK
: addl $
0, %eax
10 // CHECK
: addb $
255, %al
12 // CHECK
: orq
%rax
, %rdx
14 // CHECK
: shlq $
3, %rax
18 // CHECK
: subb
%al
, %al
21 // CHECK
: addl $
24, %eax
24 // CHECK
: movl
%eax
, 10(%ebp
)
26 // CHECK
: movl
%eax
, 10(%ebp
,%ebx
)
27 movl
%eax
, 10(%ebp
, %ebx
)
28 // CHECK
: movl
%eax
, 10(%ebp
,%ebx
,4)
29 movl
%eax
, 10(%ebp
, %ebx
, 4)
30 // CHECK
: movl
%eax
, 10(,%ebx
,4)
31 movl
%eax
, 10(, %ebx
, 4)
33 // CHECK
: movl
0, %eax
35 // CHECK
: movl $
0, %eax
41 // FIXME
: Check that this matches SUB32ri8
42 // CHECK
: subl $
1, %eax
45 // FIXME
: Check that this matches SUB32ri8
46 // CHECK
: subl $
-1, %eax
49 // FIXME
: Check that this matches SUB32ri
50 // CHECK
: subl $
256, %eax
53 // FIXME
: Check that this matches XOR64ri8
54 // CHECK
: xorq $
1, %rax
57 // FIXME
: Check that this matches XOR64ri32
58 // CHECK
: xorq $
256, %rax
61 // FIXME
: Check that this matches SUB8rr
62 // CHECK
: subb
%al
, %bl
65 // FIXME
: Check that this matches SUB16rr
66 // CHECK
: subw
%ax
, %bx
69 // FIXME
: Check that this matches SUB32rr
70 // CHECK
: subl
%eax
, %ebx
73 // FIXME
: Check that this matches the correct instruction.
77 // FIXME
: Check that this matches the correct instruction.
78 // CHECK
: shldl
%cl
, %eax
, %ebx
81 // CHECK
: shll $
2, %eax
84 // CHECK
: shll $
2, %eax
101 smovb
// CHECK
: movsb
102 smovw
// CHECK
: movsw
103 smovl
// CHECK
: movsl
104 smovq
// CHECK
: movsq
119 // NOTE
: repz
and repe have the same opcode as rep
124 // NOTE
: repnz has the same opcode as repne
129 // NOTE
: repe
and repz have the same opcode as rep
139 // CHECK
: cmpxchgb
%al
, (%ebx
)
140 lock;cmpxchgb
%al
, 0(%ebx
)
143 // CHECK
: movb
(%eax
), %al
147 // CHECK
: movb
(%eax
), %al
151 // CHECK
: movb
(%eax
), %al
155 // CHECK
: movb
(%eax
), %al
159 // CHECK
: movb
(%eax
), %al
163 // CHECK
: movb
(%eax
), %al
166 // CHECK
: fadd %st(0)
167 // CHECK
: fadd %st(1)
168 // CHECK
: fadd %st(7)
174 // CHECK
: leal
0, %eax
177 // rdar
://7986634 - Insensitivity on opcodes.
182 // Allow scale factor without index register.
183 // CHECK
: movaps
%xmm3
, (%esi
)
184 // CHECK-STDERR
: warning
: scale factor without index register is ignored
185 movaps
%xmm3
, (%esi
, 2)
187 // CHECK
: imull $
12, %eax
, %eax
190 // CHECK
: imull
%ecx
, %eax
195 // CHECK
: outb
%al
, $
161
197 // CHECK
: outw
%ax
, $
128
199 // CHECK
: inb $
161, %al
211 // CHECK
: cmovnew
%bx
, %ax
213 // CHECK
: cmovneq
%rbx
, %rax
218 // CHECK
: inb $
127, %al
219 // CHECK
: inw
%dx
, %ax
220 // CHECK
: outb
%al
, $
127
221 // CHECK
: outw
%ax
, %dx
222 // CHECK
: inl
%dx
, %eax
231 // CHECK
: outb
%al
, %dx
232 // CHECK
: outw
%ax
, %dx
233 // CHECK
: outl
%eax
, %dx
242 // CHECK
: fxch
%st(1)
243 // CHECK
: fucom
%st(1)
244 // CHECK
: fucomp
%st(1)
245 // CHECK
: faddp
%st(1)
246 // CHECK
: faddp
%st(0)
247 // CHECK
: fsubp
%st(1)
248 // CHECK
: fsubrp
%st(1)
249 // CHECK
: fmulp
%st(1)
250 // CHECK
: fdivp
%st(1)
251 // CHECK
: fdivrp
%st(1)
264 // CHECK
: fcomi
%st(1)
265 // CHECK
: fcomi
%st(2)
266 // CHECK
: fucomi
%st(1)
267 // CHECK
: fucomi
%st(2)
268 // CHECK
: fucomi
%st(2)
288 // CHECK
: rcll
3735928559(%ebx
,%ecx
,8)
290 // CHECK
: rcrl
305419896
292 rcll
0xdeadbeef(%ebx
,%ecx
,8)
296 rclb
%bl // CHECK
: rclb
%bl # encoding: [0xd0,0xd3]
297 rclb $
1, %bl // CHECK
: rclb
%bl # encoding: [0xd0,0xd3]
298 rclb $
2, %bl // CHECK
: rclb $
2, %bl # encoding: [0xc0,0xd3,0x02]
301 // CHECK
: shldw $
1, %bx
, %bx
302 // CHECK
: shldw $
1, %bx
, %bx
303 // CHECK
: shrdw $
1, %bx
, %bx
304 // CHECK
: shrdw $
1, %bx
, %bx
312 // CHECK
: encoding
: [0x0f,0x00,0xc1]
314 // CHECK
: encoding
: [0x66,0x0f,0x00,0xc1]
319 // CHECK
: lcalll
*3135175374
320 // CHECK
: ljmpl
*3135175374
326 // CHECK
: enter $
31438, $
0
327 // CHECK
: encoding
: [0xc8,0xce,0x7a,0x00]
328 // CHECK
: enter $
31438, $
1
329 // CHECK
: encoding
: [0xc8,0xce,0x7a,0x01]
330 // CHECK
: enter $
31438, $
127
331 // CHECK
: encoding
: [0xc8,0xce,0x7a,0x7f]
338 // CHECK
: movw
%cs
, %ax
342 fcmovb
%st(1), %st(0) // CHECK
: fcmovb
%st(1), %st(0)
343 fcmove
%st(1), %st(0) // CHECK
: fcmove
%st(1), %st(0)
344 fcmovbe
%st(1), %st(0) // CHECK
: fcmovbe
%st(1), %st(0)
345 fcmovu
%st(1), %st(0) // CHECK
: fcmovu
%st(1), %st(0)
347 fcmovnb
%st(1), %st(0) // CHECK
: fcmovnb
%st(1), %st(0)
348 fcmovne
%st(1), %st(0) // CHECK
: fcmovne
%st(1), %st(0)
349 fcmovnbe
%st(1), %st(0) // CHECK
: fcmovnbe
%st(1), %st(0)
350 fcmovnu
%st(1), %st(0) // CHECK
: fcmovnu
%st(1), %st(0)
352 fcmovnae
%st(1), %st(0) // CHECK
: fcmovb
%st(1), %st(0)
353 fcmovna
%st(1), %st(0) // CHECK
: fcmovbe
%st(1), %st(0)
355 fcmovae
%st(1), %st(0) // CHECK
: fcmovnb
%st(1), %st(0)
356 fcmova
%st(1), %st(0) // CHECK
: fcmovnbe
%st(1), %st(0)
359 .byte 88 + 1 & 15 // CHECK: .byte 9
363 // CHECK
: movq
%rdx
, %cr0
364 // CHECK
: encoding
: [0x0f,0x22,0xc2]
366 // CHECK
: movq
%rdx
, %cr4
367 // CHECK
: encoding
: [0x0f,0x22,0xe2]
369 // CHECK
: movq
%rdx
, %cr8
370 // CHECK
: encoding
: [0x44,0x0f,0x22,0xc2]
372 // CHECK
: movq
%rdx
, %cr15
373 // CHECK
: encoding
: [0x44,0x0f,0x22,0xfa]
375 // rdar
://8456371 - Handle commutable instructions written backward.
376 // CHECK
: faddp
%st(1)
377 // CHECK
: fmulp
%st(2)
381 // rdar
://8468087 - Encode these accurately
, they are
not synonyms.
382 // CHECK
: fmul %st(0), %st(1)
383 // CHECK
: encoding
: [0xdc,0xc9]
384 // CHECK
: fmul %st(1)
385 // CHECK
: encoding
: [0xd8,0xc9]
389 // CHECK
: fadd %st(0), %st(1)
390 // CHECK
: encoding
: [0xdc,0xc1]
391 // CHECK
: fadd %st(1)
392 // CHECK
: encoding
: [0xd8,0xc1]
398 // CHECK
: xorb
%al
, %al
399 // CHECK
: encoding
: [0x30,0xc0]
400 // CHECK
: xorw
%di
, %di
401 // CHECK
: encoding
: [0x66,0x31,0xff]
402 // CHECK
: xorl
%esi
, %esi
403 // CHECK
: encoding
: [0x31,0xf6]
404 // CHECK
: xorq
%rsi
, %rsi
405 // CHECK
: encoding
: [0x48,0x31,0xf6]
422 // rdar
://8456378 and PR7557
- fstsw
428 // CHECK
: fnstsw
(%rax
)
433 // CHECK
: fnstcw
(%rsp
)
438 // CHECK
: fnstcw
(%rsp
)
447 // CHECK
: fnsave
32493
450 // rdar
://8456382 - cvtsd2si support.
452 // CHECK
: cvtsd2siq
%xmm1
, %rax
453 // CHECK
: encoding
: [0xf2,0x48,0x0f,0x2d,0xc1]
455 // CHECK
: cvtsd2sil
%xmm1
, %eax
456 // CHECK
: encoding
: [0xf2,0x0f,0x2d,0xc1]
458 cvtsd2siq
%xmm0
, %rax
// CHECK
: cvtsd2siq
%xmm0
, %rax
459 cvtsd2sil
%xmm0
, %eax
// CHECK
: cvtsd2sil
%xmm0
, %eax
460 cvtsd2si
%xmm0
, %rax
// CHECK
: cvtsd2siq
%xmm0
, %rax
463 cvttpd2dq
%xmm1
, %xmm0
// CHECK
: cvttpd2dq
%xmm1
, %xmm0
464 cvttpd2dq
(%rax
), %xmm0
// CHECK
: cvttpd2dq
(%rax
), %xmm0
466 cvttps2dq
%xmm1
, %xmm0
// CHECK
: cvttps2dq
%xmm1
, %xmm0
467 cvttps2dq
(%rax
), %xmm0
// CHECK
: cvttps2dq
(%rax
), %xmm0
469 // rdar
://8456376 - llvm-mc rejects
'roundss'
470 roundss $
0xE, %xmm0
, %xmm0
// CHECK
: encoding
: [0x66,0x0f,0x3a,0x0a,0xc0,0x0e]
471 roundps $
0xE, %xmm0
, %xmm0
// CHECK
: encoding
: [0x66,0x0f,0x3a,0x08,0xc0,0x0e]
472 roundsd $
0xE, %xmm0
, %xmm0
// CHECK
: encoding
: [0x66,0x0f,0x3a,0x0b,0xc0,0x0e]
473 roundpd $
0xE, %xmm0
, %xmm0
// CHECK
: encoding
: [0x66,0x0f,0x3a,0x09,0xc0,0x0e]
476 // rdar
://8482675 - 32-bit mem operand support in
64-bit mode
(0x67 prefix
)
478 // CHECK
: leal
8(%eax
), %esi
479 // CHECK
: encoding
: [0x67,0x8d,0x70,0x08]
481 // CHECK
: leaq
8(%eax
), %rsi
482 // CHECK
: encoding
: [0x67,0x48,0x8d,0x70,0x08]
484 // CHECK
: leaq
8(%rax
), %rsi
485 // CHECK
: encoding
: [0x48,0x8d,0x70,0x08]
488 cvttpd2dq
0xdeadbeef(%ebx
,%ecx
,8),%xmm5
489 // CHECK
: cvttpd2dq
3735928559(%ebx
,%ecx
,8), %xmm5
490 // CHECK
: encoding
: [0x67,0x66,0x0f,0xe6,0xac,0xcb,0xef,0xbe,0xad,0xde]
492 // rdar
://8490728 - llvm-mc rejects
'movmskpd'
494 // CHECK
: movmskpd
%xmm6
, %rax
495 // CHECK
: encoding
: [0x66,0x48,0x0f,0x50,0xc6]
497 // CHECK
: movmskpd
%xmm6
, %eax
498 // CHECK
: encoding
: [0x66,0x0f,0x50,0xc6]
500 // rdar
://8491845 - Gas supports commuted forms of non-commutable instructions.
501 fdivrp
%st(0), %st(1) // CHECK
: encoding
: [0xde,0xf9]
502 fdivrp
%st(1), %st(0) // CHECK
: encoding
: [0xde,0xf9]
504 fsubrp
%ST(0), %ST(1) // CHECK
: encoding
: [0xde,0xe9]
505 fsubrp
%ST(1), %ST(0) // CHECK
: encoding
: [0xde,0xe9]
509 // CHECK
: movl foo
(%rip
), %eax
510 // CHECK
: encoding
: [0x8b,0x05,A,A,A,A]
511 // CHECK
: fixup
A - offset
: 2, value
: foo-
4, kind
: reloc_riprel_4byte
514 // CHECK
: movb $
12, foo
(%rip
)
515 // CHECK
: encoding
: [0xc6,0x05,A,A,A,A,0x0c]
516 // CHECK
: fixup
A - offset
: 2, value
: foo-
5, kind
: reloc_riprel_4byte
519 // CHECK
: movw $
12, foo
(%rip
)
520 // CHECK
: encoding
: [0x66,0xc7,0x05,A,A,A,A,0x0c,0x00]
521 // CHECK
: fixup
A - offset
: 3, value
: foo-
6, kind
: reloc_riprel_4byte
524 // CHECK
: movl $
12, foo
(%rip
)
525 // CHECK
: encoding
: [0xc7,0x05,A,A,A,A,0x0c,0x00,0x00,0x00]
526 // CHECK
: fixup
A - offset
: 2, value
: foo-
8, kind
: reloc_riprel_4byte
529 // CHECK
: movq $
12, foo
(%rip
)
530 // CHECK
: encoding
: [0x48,0xc7,0x05,A,A,A,A,0x0c,0x00,0x00,0x00]
531 // CHECK
: fixup
A - offset
: 3, value
: foo-
8, kind
: reloc_riprel_4byte
533 // CHECK
: addq $
-424, %rax
534 // CHECK
: encoding
: [0x48,0x05,0x58,0xfe,0xff,0xff]
538 // CHECK
: movq _foo@GOTPCREL
(%rip
), %rax
539 // CHECK
: encoding
: [0x48,0x8b,0x05,A,A,A,A]
540 // CHECK
: fixup
A - offset
: 3, value
: _foo@GOTPCREL-
4, kind
: reloc_riprel_4byte_movq_load
541 movq _foo@GOTPCREL
(%rip
), %rax
543 // CHECK
: movq _foo@GOTPCREL
(%rip
), %r14
544 // CHECK
: encoding
: [0x4c,0x8b,0x35,A,A,A,A]
545 // CHECK
: fixup
A - offset
: 3, value
: _foo@GOTPCREL-
4, kind
: reloc_riprel_4byte_movq_load
546 movq _foo@GOTPCREL
(%rip
), %r14
549 // CHECK
: movq
(%r13,%rax
,8), %r13
550 // CHECK
: encoding
: [0x4d,0x8b,0x6c,0xc5,0x00]
551 movq
0x00(%r13,%rax
,8),%r13
553 // CHECK
: testq
%rax
, %rbx
554 // CHECK
: encoding
: [0x48,0x85,0xd8]
557 // CHECK
: cmpq
%rbx
, %r14
558 // CHECK
: encoding
: [0x49,0x39,0xde]
565 // CHECK
: encoding
: [0x48,0xa5]
569 // CHECK
: encoding
: [0xa5]
573 // CHECK
: encoding
: [0x48,0xab]
576 // CHECK
: encoding
: [0xab]
579 // Not moffset forms of moves
, they are x86-
32 only
! rdar
://7947184
580 movb
0, %al
// CHECK
: movb
0, %al
# encoding: [0x8a,0x04,0x25,0x00,0x00,0x00,0x00]
581 movw
0, %ax
// CHECK
: movw
0, %ax
# encoding: [0x66,0x8b,0x04,0x25,0x00,0x00,0x00,0x00]
582 movl
0, %eax
// CHECK
: movl
0, %eax
# encoding: [0x8b,0x04,0x25,0x00,0x00,0x00,0x00]
584 // CHECK
: pushfq
# encoding: [0x9c]
586 // CHECK
: pushfq
# encoding: [0x9c]
588 // CHECK
: popfq
# encoding: [0x9d]
590 // CHECK
: popfq
# encoding: [0x9d]
593 // CHECK
: movabsq $
-281474976710654, %rax
594 // CHECK
: encoding
: [0x48,0xb8,0x02,0x00,0x00,0x00,0x00,0x00,0xff,0xff]
595 movabsq $
0xFFFF000000000002, %rax
597 // CHECK
: movabsq $
-281474976710654, %rax
598 // CHECK
: encoding
: [0x48,0xb8,0x02,0x00,0x00,0x00,0x00,0x00,0xff,0xff]
599 movq $
0xFFFF000000000002, %rax
601 // CHECK
: movq $
-65536, %rax
602 // CHECK
: encoding
: [0x48,0xc7,0xc0,0x00,0x00,0xff,0xff]
603 movq $
0xFFFFFFFFFFFF0000, %rax
605 // CHECK
: movq $
-256, %rax
606 // CHECK
: encoding
: [0x48,0xc7,0xc0,0x00,0xff,0xff,0xff]
607 movq $
0xFFFFFFFFFFFFFF00, %rax
609 // CHECK
: movq $
10, %rax
610 // CHECK
: encoding
: [0x48,0xc7,0xc0,0x0a,0x00,0x00,0x00]
616 // CHECK
: encoding
: [0xc3]
620 // CHECK
: encoding
: [0x0f,0x94,0xc0]
624 // CHECK
: encoding
: [0x0f,0x95,0xc0]
628 // CHECK
: encoding
: [0x74,A]
632 // CHECK
: encoding
: [0x75,A]
637 // CHECK
: btq $
1, %rdx
638 // CHECK
: encoding
: [0x48,0x0f,0xba,0xe2,0x01]
641 // CHECK
: movzbl
%al
, %esi
642 // CHECK
: encoding
: [0x0f,0xb6,0xf0]
645 // CHECK
: movzbq
%al
, %rsi
646 // CHECK
: encoding
: [0x48,0x0f,0xb6,0xf0]
649 // CHECK
: movsbw
%al
, %ax
650 // CHECK
: encoding
: [0x66,0x0f,0xbe,0xc0]
653 // CHECK
: movsbl
%al
, %eax
654 // CHECK
: encoding
: [0x0f,0xbe,0xc0]
657 // CHECK
: movswl
%ax
, %eax
658 // CHECK
: encoding
: [0x0f,0xbf,0xc0]
661 // CHECK
: movsbq
%bl, %rax
662 // CHECK
: encoding
: [0x48,0x0f,0xbe,0xc3]
665 // CHECK
: movswq
%cx
, %rax
666 // CHECK
: encoding
: [0x48,0x0f,0xbf,0xc1]
669 // CHECK
: movslq
%edi
, %rax
670 // CHECK
: encoding
: [0x48,0x63,0xc7]
673 // CHECK
: movzbw
%al
, %ax
674 // CHECK
: encoding
: [0x66,0x0f,0xb6,0xc0]
677 // CHECK
: movzbl
%al
, %eax
678 // CHECK
: encoding
: [0x0f,0xb6,0xc0]
681 // CHECK
: movzwl
%ax
, %eax
682 // CHECK
: encoding
: [0x0f,0xb7,0xc0]
685 // CHECK
: movzbq
%bl, %rax
686 // CHECK
: encoding
: [0x48,0x0f,0xb6,0xc3]
689 // CHECK
: movzwq
%cx
, %rax
690 // CHECK
: encoding
: [0x48,0x0f,0xb7,0xc1]
693 // CHECK
: movsbw
(%rax
), %ax
694 // CHECK
: encoding
: [0x66,0x0f,0xbe,0x00]
697 // CHECK
: movzbw
(%rax
), %ax
698 // CHECK
: encoding
: [0x66,0x0f,0xb6,0x00]
703 // CHECK
: [0x65,0x8b,0x04,0x25,0x7c,0x00,0x00,0x00]
706 // CHECK
: jmpq
*8(%rax
)
707 // CHECK
: encoding
: [0xff,0x60,0x08]
710 // CHECK
: btq $
61, -216(%rbp
)
711 // CHECK
: encoding
: [0x48,0x0f,0xba,0xa5,0x28,0xff,0xff,0xff,0x3d]
719 // CHECK
: encoding
: [0x67,0xe3,A]
722 // CHECK
: encoding
: [0xe3,A]
726 // CHECK
: xchgl
%ecx
, 368(%rax
)
727 xchgl
%ecx
, 368(%rax
)
728 // CHECK
: xchgl
%ecx
, 368(%rax
)
731 xchg
0xdeadbeef(%rbx
,%rcx
,8),%bl
732 // CHECK
: xchgb
%bl, 3735928559(%rbx
,%rcx
,8)
739 // CHECK
: incl
1(%rsp
)
744 // CHECK
: encoding
: [0xf3]
746 // CHECK
: encoding
: [0xa5]
752 // CHECK
: encoding
: [0xcf]
755 // CHECK
: encoding
: [0x66,0xcf]
758 // CHECK
: encoding
: [0xcf]
761 // CHECK
: encoding
: [0x48,0xcf]
764 // CHECK
: retw $
31438
765 // CHECK
: encoding
: [0x66,0xc2,0xce,0x7a]
768 // CHECK
: lretw $
31438
769 // CHECK
: encoding
: [0x66,0xca,0xce,0x7a]
773 lretq
// CHECK
: lretq
# encoding: [0x48,0xcb]
774 lretl
// CHECK
: lretl
# encoding: [0xcb]
775 lret
// CHECK
: lretl
# encoding: [0xcb]
780 // CHECK
: encoding
: [0x0f,0x07]
783 // CHECK
: encoding
: [0x0f,0x07]
786 // CHECK
: encoding
: [0x48,0x0f,0x07]
791 // CHECK
: encoding
: [0x0f,0xa0]
794 // CHECK
: encoding
: [0x0f,0xa8]
798 // CHECK
: encoding
: [0x66,0x0f,0xa0]
801 // CHECK
: encoding
: [0x66,0x0f,0xa8]
806 // CHECK
: encoding
: [0x0f,0xa1]
809 // CHECK
: encoding
: [0x0f,0xa9]
813 // CHECK
: encoding
: [0x66,0x0f,0xa1]
816 // CHECK
: encoding
: [0x66,0x0f,0xa9]
821 // CHECK
: fildll
-8(%rsp
)
822 // CHECK
: encoding
: [0xdf,0x6c,0x24,0xf8]
823 // CHECK
: fildll
-8(%rsp
)
824 // CHECK
: encoding
: [0xdf,0x6c,0x24,0xf8]
829 // CHECK
: leaq
-40(%rbp
), %r15
834 // rdar
://8013734 - Alias dr6
=db6
837 // CHECK
: movq
%dr6
, %rax
838 // CHECK
: movq
%dr6
, %rax
841 // INC
/DEC encodings.
842 incb
%al
// CHECK
: incb
%al
# encoding: [0xfe,0xc0]
843 incw
%ax
// CHECK
: incw
%ax
# encoding: [0x66,0xff,0xc0]
844 incl
%eax
// CHECK
: incl
%eax
# encoding: [0xff,0xc0]
845 decb
%al
// CHECK
: decb
%al
# encoding: [0xfe,0xc8]
846 decw
%ax
// CHECK
: decw
%ax
# encoding: [0x66,0xff,0xc8]
847 decl
%eax
// CHECK
: decl
%eax
# encoding: [0xff,0xc8]
850 // CHECK
: lgdt
4(%rax
)
851 // CHECK
: encoding
: [0x0f,0x01,0x50,0x04]
854 // CHECK
: lgdt
4(%rax
)
855 // CHECK
: encoding
: [0x0f,0x01,0x50,0x04]
858 // CHECK
: lidt
4(%rax
)
859 // CHECK
: encoding
: [0x0f,0x01,0x58,0x04]
862 // CHECK
: lidt
4(%rax
)
863 // CHECK
: encoding
: [0x0f,0x01,0x58,0x04]
866 // CHECK
: sgdt
4(%rax
)
867 // CHECK
: encoding
: [0x0f,0x01,0x40,0x04]
870 // CHECK
: sgdt
4(%rax
)
871 // CHECK
: encoding
: [0x0f,0x01,0x40,0x04]
874 // CHECK
: sidt
4(%rax
)
875 // CHECK
: encoding
: [0x0f,0x01,0x48,0x04]
878 // CHECK
: sidt
4(%rax
)
879 // CHECK
: encoding
: [0x0f,0x01,0x48,0x04]
884 mov
(%rsi
), %gs
// CHECK
: movl
(%rsi
), %gs
# encoding: [0x8e,0x2e]
885 mov
%gs
, (%rsi
) // CHECK
: movl
%gs
, (%rsi
) # encoding: [0x8c,0x2e]
892 div 0xdeadbeef(%ebx
,%ecx
,8),%eax
900 idiv
0xdeadbeef(%ebx
,%ecx
,8),%eax
907 movd
%rax
, %mm5
// CHECK
: movd
%rax
, %mm5
# encoding: [0x48,0x0f,0x6e,0xe8]
908 movd
%mm5
, %rbx
// CHECK
: movd
%mm5
, %rbx
# encoding: [0x48,0x0f,0x7e,0xeb]
909 movq
%rax
, %mm5
// CHECK
: movd
%rax
, %mm5
# encoding: [0x48,0x0f,0x6e,0xe8]
910 movq
%mm5
, %rbx
// CHECK
: movd
%mm5
, %rbx
# encoding: [0x48,0x0f,0x7e,0xeb]
912 rex64
// CHECK
: rex64
# encoding: [0x48]
913 data16
// CHECK
: data16
# encoding: [0x66]