1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
# 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
|