# RUN: llvm-mc --disassemble %s -triple=x86_64-apple-darwin9 --output-asm-variant=1 | FileCheck %s

# CHECK: movsb
0xa4

# CHECK: movsw
0x66 0xa5

# CHECK: movsd
0xa5

# CHECK: movsq
0x48 0xa5

# CHECK: pop fs
0x0f 0xa1

# CHECK: pop gs
0x0f 0xa9

# CHECK: in al, dx
0xec

# CHECK: nop
0x90

# CHECK: xchg eax, r8d
0x41 0x90

# CHECK: xchg rax, r8
0x49 0x90

# CHECK: add al, 0
0x04 0x00

# CHECK: add ax, 0
0x66 0x05 0x00 0x00

# CHECK: add eax, 0
0x05 0x00 0x00 0x00 0x00

# CHECK: add rax, 0
0x48 0x05 0x00 0x00 0x00 0x00

# CHECK: adc al, 0
0x14 0x00

# CHECK: adc ax, 0
0x66 0x15 0x00 0x00

# CHECK: adc eax, 0
0x15 0x00 0x00 0x00 0x00

# CHECK: adc rax, 0
0x48 0x15 0x00 0x00 0x00 0x00

# CHECK: cmp al, 0
0x3c 0x00

# CHECK: cmp ax, 0
0x66 0x3d 0x00 0x00

# CHECK: cmp eax, 0
0x3d 0x00 0x00 0x00 0x00

# CHECK: cmp rax, 0
0x48 0x3d 0x00 0x00 0x00 0x00

# CHECK: test al, 0
0xa8 0x00

# CHECK: test ax, 0
0x66 0xa9 0x00 0x00

# CHECK: test eax, 0
0xa9 0x00 0x00 0x00 0x00

# CHECK: test rax, 0
0x48 0xa9 0x00 0x00 0x00 0x00

# CHECK: sysret
0x48 0x0f 0x07

# CHECK: sysret
0x0f 0x07

# CHECK: sysexit
0x48 0x0f 0x35

# CHECK: sysexit
0x0f 0x35

# CHECK: iret
0x66 0xcf

# CHECK: iretd
0xcf

# CHECK: iretq
0x48 0xcf

# CHECK: ret
0x66 0xc3

# CHECK: retf
0x66 0xcb

# CHECK: vshufpd xmm0, xmm1, xmm2, 1
0xc5 0xf1 0xc6 0xc2 0x01

# CHECK: vpgatherqq ymm2, ymmword ptr [rdi + 2*ymm1], ymm0
0xc4 0xe2 0xfd 0x91 0x14 0x4f

# CHECK: vpgatherdd xmm10, xmmword ptr [r15 + 2*xmm9], xmm8
0xc4 0x02 0x39 0x90 0x14 0x4f

# CHECK: xsave64 opaque ptr [rax]
0x48 0x0f 0xae 0x20

# CHECK: xrstor64 opaque ptr [rax]
0x48 0x0f 0xae 0x28

# CHECK: xsaveopt64 opaque ptr [rax]
0x48 0x0f 0xae 0x30

# CHECK: movabs al, byte ptr [-6066930261531658096]
0xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs al, byte ptr [-6066930261531658096]
0x48 0xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs ax, word ptr [-6066930261531658096]
0x66 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs eax, dword ptr [-6066930261531658096]
0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs rax, qword ptr [-6066930261531658096]
0x48 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs byte ptr [-6066930261531658096], al
0xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs byte ptr [-6066930261531658096], al
0x48 0xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs word ptr [-6066930261531658096], ax
0x66 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs dword ptr [-6066930261531658096], eax
0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: movabs qword ptr [-6066930261531658096], rax
0x48 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab

# CHECK: lea	cx, [esp + 4]
0x67 0x66 0x8d 0x4c 0x24 0x04 

# CHECK: lea	ecx, [esp + 4]
0x67 0x8d 0x4c 0x24 0x04 

# CHECK: lea	rcx, [esp + 4]
0x67 0x48 0x8d 0x4c 0x24 0x04 

# CHECK: lea	cx, [rsp + 4]
0x66 0x8d 0x4c 0x24 0x04 

# CHECK: lea	ecx, [rsp + 4]
0x8d 0x4c 0x24 0x04 

# CHECK: lea	rcx, [rsp + 4]
0x48 0x8d 0x4c 0x24 0x04 


