llvm/llvm/test/MC/Disassembler/X86/apx/evex-w-opsize.txt

# RUN: llvm-mc -triple x86_64 -disassemble %s | FileCheck %s --check-prefix=ATT
# RUN: llvm-mc -triple x86_64 -disassemble -output-asm-variant=1 %s | FileCheck %s --check-prefix=INTEL

## This test is to check OSIZE=64b when EVEX.W=1 and EVEX.pp = 01.

## adc
# ATT:   {evex}  adcq    $123, %r9
# INTEL: {evex}  adc     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xd1,0x7b

# ATT:   adcq    $123, %r9, %r10
# INTEL: adc     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xd1,0x7b

## add
# ATT:   {evex}  addq    $123, %r9
# INTEL: {evex}  add     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xc1,0x7b

# ATT:   addq    $123, %r9, %r10
# INTEL: add     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xc1,0x7b

# ATT:   {nf} addq $123, %r9
# INTEL: {nf} add  r9, 123
0x62,0xd4,0xfd,0x0c,0x83,0xc1,0x7b

# ATT:   {nf} addq $123, %r9, %r10
# INTEL: {nf} add  r10, r9, 123
0x62,0xd4,0xad,0x1c,0x83,0xc1,0x7b

## sbb
# ATT:   {evex}  sbbq    $123, %r9
# INTEL: {evex}  sbb     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xd9,0x7b

# ATT:   sbbq    $123, %r9, %r10
# INTEL: sbb     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xd9,0x7b

## sub
# ATT:   {evex}  subq    $123, %r9
# INTEL: {evex}  sub     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xe9,0x7b

# ATT:   subq    $123, %r9, %r10
# INTEL: sub     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xe9,0x7b

# ATT:   {nf} subq $123, %r9
# INTEL: {nf} sub  r9, 123
0x62,0xd4,0xfd,0x0c,0x83,0xe9,0x7b

# ATT:   {nf} subq $123, %r9, %r10
# INTEL: {nf} sub  r10, r9, 123
0x62,0xd4,0xad,0x1c,0x83,0xe9,0x7b

## imul
# ATT:   {evex}  imulq    $123, %r9, %r10
# INTEL: {evex}  imul     r10, r9, 123
0x62,0x54,0xfd,0x08,0x6b,0xd1,0x7b

# ATT:   {nf} imulq    $123, %r9, %r10
# INTEL: {nf} imul     r10, r9, 123
0x62,0x54,0xfd,0x0c,0x6b,0xd1,0x7b

## and
# ATT:   {evex}  andq    $123, %r9
# INTEL: {evex}  and     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xe1,0x7b

# ATT:   andq    $123, %r9, %r10
# INTEL: and     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xe1,0x7b

# ATT:   {nf} andq $123, %r9
# INTEL: {nf} and  r9, 123
0x62,0xd4,0xfd,0x0c,0x83,0xe1,0x7b

# ATT:   {nf} andq $123, %r9, %r10
# INTEL: {nf} and  r10, r9, 123
0x62,0xd4,0xad,0x1c,0x83,0xe1,0x7b

## or
# ATT:   {evex}  orq    $123, %r9
# INTEL: {evex}  or     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xc9,0x7b

# ATT:   orq    $123, %r9, %r10
# INTEL: or     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xc9,0x7b

# ATT:   {nf} orq $123, %r9
# INTEL: {nf} or  r9, 123
0x62,0xd4,0xfd,0x0c,0x83,0xc9,0x7b

# ATT:   {nf} orq $123, %r9, %r10
# INTEL: {nf} or  r10, r9, 123
0x62,0xd4,0xad,0x1c,0x83,0xc9,0x7b

## xor
# ATT:   {evex}  xorq    $123, %r9
# INTEL: {evex}  xor     r9, 123
0x62,0xd4,0xfd,0x08,0x83,0xf1,0x7b

# ATT:   xorq    $123, %r9, %r10
# INTEL: xor     r10, r9, 123
0x62,0xd4,0xad,0x18,0x83,0xf1,0x7b

# ATT:   {nf} xorq $123, %r9
# INTEL: {nf} xor  r9, 123
0x62,0xd4,0xfd,0x0c,0x83,0xf1,0x7b

# ATT:   {nf} xorq $123, %r9, %r10
# INTEL: {nf} xor  r10, r9, 123
0x62,0xd4,0xad,0x1c,0x83,0xf1,0x7b