1607 lines
101 KiB
Plaintext
1607 lines
101 KiB
Plaintext
00 MR GP GP - - ADD SIZE_8 LOCK
|
|
01 MR GP GP - - ADD LOCK
|
|
02 RM GP GP - - ADD SIZE_8
|
|
03 RM GP GP - - ADD
|
|
04 IA GP IMM - - ADD SIZE_8
|
|
05 IA GP IMM - - ADD
|
|
06 S SEG - - - PUSH ONLY32
|
|
07 S SEG - - - POP ONLY32
|
|
08 MR GP GP - - OR SIZE_8 LOCK
|
|
09 MR GP GP - - OR LOCK
|
|
0a RM GP GP - - OR SIZE_8
|
|
0b RM GP GP - - OR
|
|
0c IA GP IMM - - OR SIZE_8
|
|
0d IA GP IMM - - OR
|
|
0e S SEG - - - PUSH ONLY32
|
|
#0f escape opcode
|
|
10 MR GP GP - - ADC SIZE_8 LOCK
|
|
11 MR GP GP - - ADC LOCK
|
|
12 RM GP GP - - ADC SIZE_8
|
|
13 RM GP GP - - ADC
|
|
14 IA GP IMM - - ADC SIZE_8
|
|
15 IA GP IMM - - ADC
|
|
16 S SEG - - - PUSH ONLY32
|
|
17 S SEG - - - POP ONLY32
|
|
18 MR GP GP - - SBB SIZE_8 LOCK
|
|
19 MR GP GP - - SBB LOCK
|
|
1a RM GP GP - - SBB SIZE_8
|
|
1b RM GP GP - - SBB
|
|
1c IA GP IMM - - SBB SIZE_8
|
|
1d IA GP IMM - - SBB
|
|
1e S SEG - - - PUSH ONLY32
|
|
1f S SEG - - - POP ONLY32
|
|
20 MR GP GP - - AND SIZE_8 LOCK
|
|
21 MR GP GP - - AND LOCK
|
|
22 RM GP GP - - AND SIZE_8
|
|
23 RM GP GP - - AND
|
|
24 IA GP IMM - - AND SIZE_8
|
|
25 IA GP IMM - - AND
|
|
#26 SEG=ES prefix
|
|
27 NP - - - - DAA ONLY32
|
|
28 MR GP GP - - SUB SIZE_8 LOCK
|
|
29 MR GP GP - - SUB LOCK
|
|
2a RM GP GP - - SUB SIZE_8
|
|
2b RM GP GP - - SUB
|
|
2c IA GP IMM - - SUB SIZE_8
|
|
2d IA GP IMM - - SUB
|
|
#2e SEG=CS prefix
|
|
2f NP - - - - DAS ONLY32
|
|
30 MR GP GP - - XOR SIZE_8 LOCK
|
|
31 MR GP GP - - XOR LOCK
|
|
32 RM GP GP - - XOR SIZE_8
|
|
33 RM GP GP - - XOR
|
|
34 IA GP IMM - - XOR SIZE_8
|
|
35 IA GP IMM - - XOR
|
|
#36 SEG=SS prefix
|
|
37 NP - - - - AAA ONLY32
|
|
38 MR GP GP - - CMP SIZE_8
|
|
39 MR GP GP - - CMP
|
|
3a RM GP GP - - CMP SIZE_8
|
|
3b RM GP GP - - CMP
|
|
3c IA GP IMM - - CMP SIZE_8
|
|
3d IA GP IMM - - CMP
|
|
#3e SEG=DS prefix
|
|
3f NP - - - - AAS ONLY32
|
|
40+ O GP - - - INC ONLY32
|
|
48+ O GP - - - DEC ONLY32
|
|
50+ O GP - - - PUSH DEF64
|
|
58+ O GP - - - POP DEF64
|
|
60 NP - - - - PUSHA ONLY32 INSTR_WIDTH
|
|
61 NP - - - - POPA ONLY32 INSTR_WIDTH
|
|
62/m RM GP MEM - - BOUND ONLY32
|
|
63 MR GP16 GP16 - - ARPL ONLY32
|
|
63 RM GP GP32 - - MOVSX ONLY64 ENC_SEPSZ
|
|
#64 SEG=FS prefix
|
|
#65 SEG=GS prefix
|
|
#66 operand size prefix
|
|
#67 address size prefix
|
|
68 I IMM - - - PUSH DEF64
|
|
69 RMI GP GP IMM - IMUL
|
|
6a I IMM - - - PUSH DEF64 IMM_8
|
|
6b RMI GP GP IMM - IMUL IMM_8
|
|
6c NP - - - - INS SIZE_8 INSTR_WIDTH ENC_REP
|
|
6d NP - - - - INS INSTR_WIDTH ENC_REP
|
|
6e NP - - - - OUTS SIZE_8 INSTR_WIDTH ENC_REP
|
|
6f NP - - - - OUTS INSTR_WIDTH ENC_REP
|
|
70 D IMM - - - JO FORCE64 IMM_8
|
|
71 D IMM - - - JNO FORCE64 IMM_8
|
|
72 D IMM - - - JC FORCE64 IMM_8
|
|
73 D IMM - - - JNC FORCE64 IMM_8
|
|
74 D IMM - - - JZ FORCE64 IMM_8
|
|
75 D IMM - - - JNZ FORCE64 IMM_8
|
|
76 D IMM - - - JBE FORCE64 IMM_8
|
|
77 D IMM - - - JA FORCE64 IMM_8
|
|
78 D IMM - - - JS FORCE64 IMM_8
|
|
79 D IMM - - - JNS FORCE64 IMM_8
|
|
7a D IMM - - - JP FORCE64 IMM_8
|
|
7b D IMM - - - JNP FORCE64 IMM_8
|
|
7c D IMM - - - JL FORCE64 IMM_8
|
|
7d D IMM - - - JGE FORCE64 IMM_8
|
|
7e D IMM - - - JLE FORCE64 IMM_8
|
|
7f D IMM - - - JG FORCE64 IMM_8
|
|
80/0 MI GP IMM - - ADD SIZE_8 LOCK
|
|
80/1 MI GP IMM - - OR SIZE_8 LOCK
|
|
80/2 MI GP IMM - - ADC SIZE_8 LOCK
|
|
80/3 MI GP IMM - - SBB SIZE_8 LOCK
|
|
80/4 MI GP IMM - - AND SIZE_8 LOCK
|
|
80/5 MI GP IMM - - SUB SIZE_8 LOCK
|
|
80/6 MI GP IMM - - XOR SIZE_8 LOCK
|
|
80/7 MI GP IMM - - CMP SIZE_8
|
|
81/0 MI GP IMM - - ADD LOCK
|
|
81/1 MI GP IMM - - OR LOCK
|
|
81/2 MI GP IMM - - ADC LOCK
|
|
81/3 MI GP IMM - - SBB LOCK
|
|
81/4 MI GP IMM - - AND LOCK
|
|
81/5 MI GP IMM - - SUB LOCK
|
|
81/6 MI GP IMM - - XOR LOCK
|
|
81/7 MI GP IMM - - CMP
|
|
82/0 MI GP IMM - - ADD ONLY32 SIZE_8 LOCK
|
|
82/1 MI GP IMM - - OR ONLY32 SIZE_8 LOCK
|
|
82/2 MI GP IMM - - ADC ONLY32 SIZE_8 LOCK
|
|
82/3 MI GP IMM - - SBB ONLY32 SIZE_8 LOCK
|
|
82/4 MI GP IMM - - AND ONLY32 SIZE_8 LOCK
|
|
82/5 MI GP IMM - - SUB ONLY32 SIZE_8 LOCK
|
|
82/6 MI GP IMM - - XOR ONLY32 SIZE_8 LOCK
|
|
82/7 MI GP IMM - - CMP ONLY32 SIZE_8
|
|
83/0 MI GP IMM - - ADD IMM_8 LOCK
|
|
83/1 MI GP IMM - - OR IMM_8 LOCK
|
|
83/2 MI GP IMM - - ADC IMM_8 LOCK
|
|
83/3 MI GP IMM - - SBB IMM_8 LOCK
|
|
83/4 MI GP IMM - - AND IMM_8 LOCK
|
|
83/5 MI GP IMM - - SUB IMM_8 LOCK
|
|
83/6 MI GP IMM - - XOR IMM_8 LOCK
|
|
83/7 MI GP IMM - - CMP IMM_8
|
|
84 MR GP GP - - TEST SIZE_8
|
|
85 MR GP GP - - TEST
|
|
86 MR GP GP - - XCHG SIZE_8 LOCK
|
|
87 MR GP GP - - XCHG LOCK
|
|
88 MR GP GP - - MOV SIZE_8
|
|
89 MR GP GP - - MOV
|
|
8a RM GP GP - - MOV SIZE_8
|
|
8b RM GP GP - - MOV
|
|
8c/0 MR GP16 SEG16 - - MOV_S2G
|
|
8c/1 MR GP16 SEG16 - - MOV_S2G
|
|
8c/2 MR GP16 SEG16 - - MOV_S2G
|
|
8c/3 MR GP16 SEG16 - - MOV_S2G
|
|
8c/4 MR GP16 SEG16 - - MOV_S2G
|
|
8c/5 MR GP16 SEG16 - - MOV_S2G
|
|
8d/m RM GP MEMZ - - LEA
|
|
8e/0 RM SEG16 GP16 - - MOV_G2S
|
|
8e/2 RM SEG16 GP16 - - MOV_G2S
|
|
8e/3 RM SEG16 GP16 - - MOV_G2S
|
|
8e/4 RM SEG16 GP16 - - MOV_G2S
|
|
8e/5 RM SEG16 GP16 - - MOV_G2S
|
|
8f/0 M GP - - - POP DEF64
|
|
# Against frequent belief, only, XCHG (r/e)AX, (r)AX with 90 is NOP.
|
|
# As a lacking REX.B cannot be specified here, this is hardcoded.
|
|
90+ OA GP GP - - XCHG_NOP
|
|
98 NP - - - - C_EX INSTR_WIDTH
|
|
99 NP - - - - C_SEP INSTR_WIDTH
|
|
# Far jmp/call immediate size adjusted in code
|
|
9a I IMM - - - CALLF ONLY32
|
|
9b NP - - - - FWAIT
|
|
9c NP - - - - PUSHF DEF64 INSTR_WIDTH
|
|
9d NP - - - - POPF DEF64 INSTR_WIDTH
|
|
9e NP - - - - SAHF
|
|
9f NP - - - - LAHF
|
|
a0 FD GP GP - - MOV SIZE_8
|
|
a1 FD GP GP - - MOV
|
|
a2 TD GP GP - - MOV SIZE_8
|
|
a3 TD GP GP - - MOV
|
|
a4 NP - - - - MOVS SIZE_8 INSTR_WIDTH ENC_REP
|
|
a5 NP - - - - MOVS INSTR_WIDTH ENC_REP
|
|
a6 NP - - - - CMPS SIZE_8 INSTR_WIDTH ENC_REPCC
|
|
a7 NP - - - - CMPS INSTR_WIDTH ENC_REPCC
|
|
a8 IA GP IMM - - TEST SIZE_8
|
|
a9 IA GP IMM - - TEST
|
|
aa NP - - - - STOS SIZE_8 INSTR_WIDTH ENC_REP
|
|
ab NP - - - - STOS INSTR_WIDTH ENC_REP
|
|
ac NP - - - - LODS SIZE_8 INSTR_WIDTH ENC_REP
|
|
ad NP - - - - LODS INSTR_WIDTH ENC_REP
|
|
ae NP - - - - SCAS SIZE_8 INSTR_WIDTH ENC_REPCC
|
|
af NP - - - - SCAS INSTR_WIDTH ENC_REPCC
|
|
b0+ OI GP IMM8 - - MOVABS SIZE_8
|
|
b8+ OI GP IMM - - MOVABS
|
|
c0/0 MI GP IMM8 - - ROL SIZE_8
|
|
c0/1 MI GP IMM8 - - ROR SIZE_8
|
|
c0/2 MI GP IMM8 - - RCL SIZE_8
|
|
c0/3 MI GP IMM8 - - RCR SIZE_8
|
|
c0/4 MI GP IMM8 - - SHL SIZE_8
|
|
c0/5 MI GP IMM8 - - SHR SIZE_8
|
|
c0/6 MI GP IMM8 - - SHL SIZE_8
|
|
c0/7 MI GP IMM8 - - SAR SIZE_8
|
|
c1/0 MI GP IMM8 - - ROL
|
|
c1/1 MI GP IMM8 - - ROR
|
|
c1/2 MI GP IMM8 - - RCL
|
|
c1/3 MI GP IMM8 - - RCR
|
|
c1/4 MI GP IMM8 - - SHL
|
|
c1/5 MI GP IMM8 - - SHR
|
|
c1/6 MI GP IMM8 - - SHL
|
|
c1/7 MI GP IMM8 - - SAR
|
|
# RET immediate size handled in code
|
|
c2 I IMM16 - - - RET FORCE64 INSTR_WIDTH
|
|
c3 NP - - - - RET FORCE64 INSTR_WIDTH
|
|
c4/m RM GP MEM - - LES ONLY32
|
|
c5/m RM GP MEM - - LDS ONLY32
|
|
c6/0 MI GP IMM - - MOV SIZE_8
|
|
c6f8 I IMM8 - - - XABORT
|
|
c7/0 MI GP IMM - - MOV
|
|
c7f8 D IMM32 - - - XBEGIN ONLY32
|
|
c7f8 D IMM64 - - - XBEGIN ONLY64
|
|
# ENTER immediate handled in code
|
|
c8 I IMM32 - - - ENTER DEF64 INSTR_WIDTH
|
|
c9 NP - - - - LEAVE DEF64 INSTR_WIDTH
|
|
# RETF immediate size handled in code
|
|
ca I IMM16 - - - RETF INSTR_WIDTH
|
|
cb NP - - - - RETF INSTR_WIDTH
|
|
cc NP - - - - INT3
|
|
cd I IMM8 - - - INT
|
|
ce NP - - - - INTO ONLY32
|
|
cf NP - - - - IRET INSTR_WIDTH
|
|
d0/0 M1 GP IMM8 - - ROL SIZE_8
|
|
d0/1 M1 GP IMM8 - - ROR SIZE_8
|
|
d0/2 M1 GP IMM8 - - RCL SIZE_8
|
|
d0/3 M1 GP IMM8 - - RCR SIZE_8
|
|
d0/4 M1 GP IMM8 - - SHL SIZE_8
|
|
d0/5 M1 GP IMM8 - - SHR SIZE_8
|
|
d0/6 M1 GP IMM8 - - SHL SIZE_8
|
|
d0/7 M1 GP IMM8 - - SAR SIZE_8
|
|
d1/0 M1 GP IMM8 - - ROL
|
|
d1/1 M1 GP IMM8 - - ROR
|
|
d1/2 M1 GP IMM8 - - RCL
|
|
d1/3 M1 GP IMM8 - - RCR
|
|
d1/4 M1 GP IMM8 - - SHL
|
|
d1/5 M1 GP IMM8 - - SHR
|
|
d1/6 M1 GP IMM8 - - SHL
|
|
d1/7 M1 GP IMM8 - - SAR
|
|
d2/0 MC GP GP8 - - ROL SIZE_8
|
|
d2/1 MC GP GP8 - - ROR SIZE_8
|
|
d2/2 MC GP GP8 - - RCL SIZE_8
|
|
d2/3 MC GP GP8 - - RCR SIZE_8
|
|
d2/4 MC GP GP8 - - SHL SIZE_8
|
|
d2/5 MC GP GP8 - - SHR SIZE_8
|
|
d2/6 MC GP GP8 - - SHL SIZE_8
|
|
d2/7 MC GP GP8 - - SAR SIZE_8
|
|
d3/0 MC GP GP8 - - ROL
|
|
d3/1 MC GP GP8 - - ROR
|
|
d3/2 MC GP GP8 - - RCL
|
|
d3/3 MC GP GP8 - - RCR
|
|
d3/4 MC GP GP8 - - SHL
|
|
d3/5 MC GP GP8 - - SHR
|
|
d3/6 MC GP GP8 - - SHL
|
|
d3/7 MC GP GP8 - - SAR
|
|
d4 I IMM - - - AAM ONLY32 SIZE_8
|
|
d5 I IMM - - - AAD ONLY32 SIZE_8
|
|
d6 NP - - - - SALC ONLY32 UNDOC
|
|
d7 NP - - - - XLATB
|
|
#d8-df FPU Escape
|
|
e0 D IMM - - - LOOPNZ FORCE64 IMM_8
|
|
e1 D IMM - - - LOOPZ FORCE64 IMM_8
|
|
e2 D IMM - - - LOOP FORCE64 IMM_8
|
|
e3 D IMM - - - JCXZ FORCE64 IMM_8
|
|
e4 IA GP IMM8 - - IN SIZE_8
|
|
e5 IA GP IMM8 - - IN
|
|
e6 IA GP IMM8 - - OUT SIZE_8
|
|
e7 IA GP IMM8 - - OUT
|
|
e8 D IMM - - - CALL FORCE64
|
|
e9 D IMM - - - JMP FORCE64
|
|
# Far jmp/call immediate size adjusted in code
|
|
ea I IMM - - - JMPF ONLY32
|
|
eb D IMM - - - JMP FORCE64 IMM_8
|
|
ec NP - - - - IN SIZE_8 INSTR_WIDTH
|
|
ed NP - - - - IN INSTR_WIDTH
|
|
ee NP - - - - OUT SIZE_8 INSTR_WIDTH
|
|
ef NP - - - - OUT INSTR_WIDTH
|
|
#f0 LOCK prefix
|
|
f1 NP - - - - INT1
|
|
#f2 REPNZ prefix
|
|
#f3 REP/REPZ prefix
|
|
f4 NP - - - - HLT
|
|
f5 NP - - - - CMC
|
|
f6/0 MI GP IMM - - TEST SIZE_8
|
|
f6/1 MI GP IMM - - TEST SIZE_8
|
|
f6/2 M GP - - - NOT SIZE_8 LOCK
|
|
f6/3 M GP - - - NEG SIZE_8 LOCK
|
|
f6/4 M GP - - - MUL SIZE_8
|
|
f6/5 M GP - - - IMUL SIZE_8
|
|
f6/6 M GP - - - DIV SIZE_8
|
|
f6/7 M GP - - - IDIV SIZE_8
|
|
f7/0 MI GP IMM - - TEST
|
|
f7/1 MI GP IMM - - TEST
|
|
f7/2 M GP - - - NOT LOCK
|
|
f7/3 M GP - - - NEG LOCK
|
|
f7/4 M GP - - - MUL
|
|
f7/5 M GP - - - IMUL
|
|
f7/6 M GP - - - DIV
|
|
f7/7 M GP - - - IDIV
|
|
f8 NP - - - - CLC
|
|
f9 NP - - - - STC
|
|
fa NP - - - - CLI
|
|
fb NP - - - - STI
|
|
fc NP - - - - CLD
|
|
fd NP - - - - STD
|
|
fe/0 M GP - - - INC SIZE_8 LOCK
|
|
fe/1 M GP - - - DEC SIZE_8 LOCK
|
|
ff/0 M GP - - - INC LOCK
|
|
ff/1 M GP - - - DEC LOCK
|
|
ff/2 M GP - - - CALL FORCE64
|
|
ff/3m M MEM - - - CALLF
|
|
ff/4 M GP - - - JMP FORCE64
|
|
ff/5m M MEM - - - JMPF
|
|
ff/6 M GP - - - PUSH DEF64
|
|
0f00/0 M GP16 - - - SLDT
|
|
0f00/1 M GP16 - - - STR
|
|
0f00/2 M GP16 - - - LLDT
|
|
0f00/3 M GP16 - - - LTR
|
|
0f00/4 M GP16 - - - VERR
|
|
0f00/5 M GP16 - - - VERW
|
|
0f01/0m M MEMZ - - - SGDT
|
|
0f01/1m M MEMZ - - - SIDT
|
|
0f01/2m M MEMZ - - - LGDT
|
|
0f01/3m M MEMZ - - - LIDT
|
|
0f01/4m M GP16 - - - SMSW
|
|
0f01/4r M GP - - - SMSW
|
|
0f01/6 M GP16 - - - LMSW
|
|
0f01/7m M GP - - - INVLPG SIZE_8
|
|
NP.0f01c0 NP - - - - ENCLV
|
|
NP.0f01c8 NP - - - - MONITOR
|
|
NP.0f01c9 NP - - - - MWAIT
|
|
NP.0f01ca NP - - - - CLAC
|
|
NP.0f01cb NP - - - - STAC
|
|
NP.0f01cf NP - - - - ENCLS
|
|
NP.0f01d0 NP - - - - XGETBV
|
|
NP.0f01d1 NP - - - - XSETBV
|
|
NP.0f01d5 NP - - - - XEND
|
|
NP.0f01d6 NP - - - - XTEST
|
|
NP.0f01d7 NP - - - - ENCLU
|
|
0f01f8 NP - - - - SWAPGS ONLY64
|
|
0f01f9 NP - - - - RDTSCP
|
|
0f02 RM GP GP16 - - LAR
|
|
0f03 RM GP GP16 - - LSL
|
|
0f05 NP - - - - SYSCALL ONLY64
|
|
0f06 NP - - - - CLTS
|
|
0f07 NP - - - - SYSRET ONLY64
|
|
0f08 NP - - - - INVD
|
|
*0f09 NP - - - - WBINVD
|
|
0f0b NP - - - - UD2
|
|
0f0d/0m M MEM8 - - - PREFETCH
|
|
0f0d/1m M MEM8 - - - PREFETCHW
|
|
0f0d/2m M MEM8 - - - PREFETCHWT1
|
|
# All other slots are reserved, AMD maps them to /0
|
|
*0f0d/m M MEM8 - - - RESERVED_PREFETCH ONLYAMD
|
|
*0f0d/r MR GP GP - - RESERVED_NOP
|
|
0f0e NP - - - - FEMMS ONLYAMD
|
|
# TODO: actually decode 3DNow! instructions. Given that 3DNow! no longer exists,
|
|
# this is unlikely to happen, though.
|
|
0f0f RMI MMX MMX IMM8 - 3DNOW ONLYAMD
|
|
0f18/0m M MEM8 - - - PREFETCHNTA
|
|
0f18/1m M MEM8 - - - PREFETCHT0
|
|
0f18/2m M MEM8 - - - PREFETCHT1
|
|
0f18/3m M MEM8 - - - PREFETCHT2
|
|
# Reserved NOPs are weak, they can be overridden by other instructions.
|
|
*0f18 MR GP GP - - RESERVED_NOP
|
|
*0f19 MR GP GP - - RESERVED_NOP
|
|
*0f1a MR GP GP - - RESERVED_NOP
|
|
*0f1b MR GP GP - - RESERVED_NOP
|
|
*0f1c MR GP GP - - RESERVED_NOP
|
|
*0f1d MR GP GP - - RESERVED_NOP
|
|
*0f1e MR GP GP - - RESERVED_NOP
|
|
*0f1f MR GP GP - - RESERVED_NOP
|
|
0f1f/0 M GP - - - NOP
|
|
0f20 MR GP CR - - MOV_CR DEF64 IGN66
|
|
0f21 MR GP DR - - MOV_DR DEF64 IGN66
|
|
0f22 RM CR GP - - MOV_CR DEF64 IGN66
|
|
0f23 RM DR GP - - MOV_DR DEF64 IGN66
|
|
0f30 NP - - - - WRMSR
|
|
0f31 NP - - - - RDTSC
|
|
0f32 NP - - - - RDMSR
|
|
0f33 NP - - - - RDPMC
|
|
0f34 NP - - - - SYSENTER
|
|
0f35 NP - - - - SYSEXIT
|
|
NP.0f37 NP - - - - GETSEC
|
|
# 0f38, 0f3a are escape opcodes
|
|
0f40 RM GP GP - - CMOVO
|
|
0f41 RM GP GP - - CMOVNO
|
|
0f42 RM GP GP - - CMOVC
|
|
0f43 RM GP GP - - CMOVNC
|
|
0f44 RM GP GP - - CMOVZ
|
|
0f45 RM GP GP - - CMOVNZ
|
|
0f46 RM GP GP - - CMOVBE
|
|
0f47 RM GP GP - - CMOVA
|
|
0f48 RM GP GP - - CMOVS
|
|
0f49 RM GP GP - - CMOVNS
|
|
0f4a RM GP GP - - CMOVP
|
|
0f4b RM GP GP - - CMOVNP
|
|
0f4c RM GP GP - - CMOVL
|
|
0f4d RM GP GP - - CMOVGE
|
|
0f4e RM GP GP - - CMOVLE
|
|
0f4f RM GP GP - - CMOVG
|
|
0f80 D IMM - - - JO FORCE64
|
|
0f81 D IMM - - - JNO FORCE64
|
|
0f82 D IMM - - - JC FORCE64
|
|
0f83 D IMM - - - JNC FORCE64
|
|
0f84 D IMM - - - JZ FORCE64
|
|
0f85 D IMM - - - JNZ FORCE64
|
|
0f86 D IMM - - - JBE FORCE64
|
|
0f87 D IMM - - - JA FORCE64
|
|
0f88 D IMM - - - JS FORCE64
|
|
0f89 D IMM - - - JNS FORCE64
|
|
0f8a D IMM - - - JP FORCE64
|
|
0f8b D IMM - - - JNP FORCE64
|
|
0f8c D IMM - - - JL FORCE64
|
|
0f8d D IMM - - - JGE FORCE64
|
|
0f8e D IMM - - - JLE FORCE64
|
|
0f8f D IMM - - - JG FORCE64
|
|
0f90 M GP - - - SETO SIZE_8
|
|
0f91 M GP - - - SETNO SIZE_8
|
|
0f92 M GP - - - SETC SIZE_8
|
|
0f93 M GP - - - SETNC SIZE_8
|
|
0f94 M GP - - - SETZ SIZE_8
|
|
0f95 M GP - - - SETNZ SIZE_8
|
|
0f96 M GP - - - SETBE SIZE_8
|
|
0f97 M GP - - - SETA SIZE_8
|
|
0f98 M GP - - - SETS SIZE_8
|
|
0f99 M GP - - - SETNS SIZE_8
|
|
0f9a M GP - - - SETP SIZE_8
|
|
0f9b M GP - - - SETNP SIZE_8
|
|
0f9c M GP - - - SETL SIZE_8
|
|
0f9d M GP - - - SETGE SIZE_8
|
|
0f9e M GP - - - SETLE SIZE_8
|
|
0f9f M GP - - - SETG SIZE_8
|
|
0fa0 S SEG - - - PUSH DEF64
|
|
0fa1 S SEG - - - POP DEF64
|
|
0fa2 NP - - - - CPUID
|
|
0fa3 MR GP GP - - BT
|
|
0fa4 MRI GP GP IMM8 - SHLD
|
|
0fa5 MRC GP GP GP8 - SHLD
|
|
0fa8 S SEG - - - PUSH DEF64
|
|
0fa9 S SEG - - - POP DEF64
|
|
0faa NP - - - - RSM
|
|
0fab MR GP GP - - BTS LOCK
|
|
0fac MRI GP GP IMM8 - SHRD
|
|
0fad MRC GP GP GP8 - SHRD
|
|
0faf RM GP GP - - IMUL
|
|
0fb0 MR GP GP - - CMPXCHG SIZE_8 LOCK
|
|
0fb1 MR GP GP - - CMPXCHG LOCK
|
|
0fb2/m RM GP MEM - - LSS
|
|
0fb3 MR GP GP - - BTR LOCK
|
|
0fb4/m RM GP MEM - - LFS
|
|
0fb5/m RM GP MEM - - LGS
|
|
0fb6 RM GP GP8 - - MOVZX ENC_SEPSZ
|
|
0fb7 RM GP GP16 - - MOVZX ENC_SEPSZ
|
|
F3.0fb8 RM GP GP - - POPCNT USE66
|
|
0fb9 RM GP GP - - UD1
|
|
0fba/4 MI GP IMM8 - - BT
|
|
0fba/5 MI GP IMM8 - - BTS LOCK
|
|
0fba/6 MI GP IMM8 - - BTR LOCK
|
|
0fba/7 MI GP IMM8 - - BTC LOCK
|
|
0fbb MR GP GP - - BTC LOCK
|
|
*0fbc RM GP GP - - BSF
|
|
F3.0fbc RM GP GP - - TZCNT USE66
|
|
*0fbd RM GP GP - - BSR
|
|
F3.0fbd RM GP GP - - LZCNT USE66
|
|
0fbe RM GP GP8 - - MOVSX ENC_SEPSZ
|
|
0fbf RM GP GP16 - - MOVSX ENC_SEPSZ
|
|
0fc0 MR GP GP - - XADD SIZE_8 LOCK
|
|
0fc1 MR GP GP - - XADD LOCK
|
|
NP.0fc3/m MR MEM GP - - MOVNTI
|
|
0fc7/1m M MEMZ - - - CMPXCHGD LOCK IGN66 INSTR_WIDTH
|
|
0fc8+ O GP - - - BSWAP
|
|
0fff RM GP GP - - UD0
|
|
#
|
|
NFx.0f38f0/m RM GP MEM - - MOVBE
|
|
F2.0f38f0 RM GP32 GP - - CRC32 SIZE_8
|
|
NFx.0f38f1/m MR MEM GP - - MOVBE
|
|
F2.0f38f1 RM GP32 GP - - CRC32 USE66
|
|
#
|
|
# MMX
|
|
NP.0f2a RM XMM64 MMX - - MMX_CVTPI2PS
|
|
66.0f2a RM XMM MMX - - MMX_CVTPI2PD
|
|
NP.0f2c RM MMX XMM64 - - MMX_CVTTPS2PI
|
|
66.0f2c RM MMX XMM - - MMX_CVTTPD2PI
|
|
NP.0f2d RM MMX XMM64 - - MMX_CVTPS2PI
|
|
66.0f2d RM MMX XMM - - MMX_CVTPD2PI
|
|
NP.0f60 RM MMX MMX - - MMX_PUNPCKLBW
|
|
NP.0f61 RM MMX MMX - - MMX_PUNPCKLWD
|
|
NP.0f62 RM MMX MMX - - MMX_PUNPCKLDQ
|
|
NP.0f63 RM MMX MMX - - MMX_PACKSSWB
|
|
NP.0f64 RM MMX MMX - - MMX_PCMPGTB
|
|
NP.0f65 RM MMX MMX - - MMX_PCMPGTW
|
|
NP.0f66 RM MMX MMX - - MMX_PCMPGTD
|
|
NP.0f67 RM MMX MMX - - MMX_PACKUSWB
|
|
NP.0f68 RM MMX MMX - - MMX_PUNPCKHBW
|
|
NP.0f69 RM MMX MMX - - MMX_PUNPCKHWD
|
|
NP.0f6a RM MMX MMX - - MMX_PUNPCKHDQ
|
|
NP.0f6b RM MMX MMX - - MMX_PACKSSDW
|
|
NP.W0.0f6e RM MMX GP32 - - MMX_MOVD
|
|
NP.W1.0f6e RM MMX GP64 - - MMX_MOVQ
|
|
NP.0f6f RM MMX MMX - - MMX_MOVQ
|
|
NP.0f70 RMI MMX MMX IMM8 - MMX_PSHUFW
|
|
NP.0f71/2r MI MMX IMM8 - - MMX_PSRLW
|
|
NP.0f71/4r MI MMX IMM8 - - MMX_PSRAW
|
|
NP.0f71/6r MI MMX IMM8 - - MMX_PSLLW
|
|
NP.0f72/2r MI MMX IMM8 - - MMX_PSRLD
|
|
NP.0f72/4r MI MMX IMM8 - - MMX_PSRAD
|
|
NP.0f72/6r MI MMX IMM8 - - MMX_PSLLD
|
|
NP.0f73/2r MI MMX IMM8 - - MMX_PSRLQ
|
|
NP.0f73/6r MI MMX IMM8 - - MMX_PSLLQ
|
|
NP.0f74 RM MMX MMX - - MMX_PCMPEQB
|
|
NP.0f75 RM MMX MMX - - MMX_PCMPEQW
|
|
NP.0f76 RM MMX MMX - - MMX_PCMPEQD
|
|
NP.0f77 NP - - - - MMX_EMMS
|
|
NP.W0.0f7e MR GP32 MMX - - MMX_MOVD
|
|
NP.W1.0f7e MR GP64 MMX - - MMX_MOVQ
|
|
NP.0f7f MR MMX MMX - - MMX_MOVQ
|
|
# TODO: GP operand is actually GP16
|
|
NP.0fc4 RMI MMX GP IMM8 - MMX_PINSRW ENC_NOSZ
|
|
NP.0fc5/r RMI GP MMX IMM8 - MMX_PEXTRW DEF64
|
|
NP.0fd1 RM MMX MMX - - MMX_PSRLW
|
|
NP.0fd2 RM MMX MMX - - MMX_PSRLD
|
|
NP.0fd3 RM MMX MMX - - MMX_PSRLQ
|
|
NP.0fd4 RM MMX MMX - - MMX_PADDQ
|
|
NP.0fd5 RM MMX MMX - - MMX_PMULLW
|
|
F2.0fd6/r RM MMX XMM64 - - MMX_MOVDQ2Q
|
|
F3.0fd6/r RM XMM MMX - - MMX_MOVQ2DQ
|
|
NP.0fd7/r RM GP MMX - - MMX_PMOVMSKB DEF64
|
|
NP.0fd8 RM MMX MMX - - MMX_PSUBUSB
|
|
NP.0fd9 RM MMX MMX - - MMX_PSUBUSW
|
|
NP.0fda RM MMX MMX - - MMX_PMINUB
|
|
NP.0fdb RM MMX MMX - - MMX_PAND
|
|
NP.0fdc RM MMX MMX - - MMX_PADDUSB
|
|
NP.0fdd RM MMX MMX - - MMX_PADDUSW
|
|
NP.0fde RM MMX MMX - - MMX_PMAXUB
|
|
NP.0fdf RM MMX MMX - - MMX_PANDN
|
|
NP.0fe0 RM MMX MMX - - MMX_PAVGB
|
|
NP.0fe1 RM MMX MMX - - MMX_PSRAW
|
|
NP.0fe2 RM MMX MMX - - MMX_PSRAD
|
|
NP.0fe3 RM MMX MMX - - MMX_PAVGW
|
|
NP.0fe4 RM MMX MMX - - MMX_PMULHUW
|
|
NP.0fe5 RM MMX MMX - - MMX_PMULHW
|
|
NP.0fe7/m MR MEM64 MMX - - MMX_MOVNTQ
|
|
NP.0fe8 RM MMX MMX - - MMX_PSUBSB
|
|
NP.0fe9 RM MMX MMX - - MMX_PSUBSW
|
|
NP.0feb RM MMX MMX - - MMX_POR
|
|
NP.0fec RM MMX MMX - - MMX_PADDSB
|
|
NP.0fea RM MMX MMX - - MMX_PMINSW
|
|
NP.0fee RM MMX MMX - - MMX_PMAXSW
|
|
NP.0fed RM MMX MMX - - MMX_PADDSW
|
|
NP.0fef RM MMX MMX - - MMX_PXOR
|
|
NP.0ff1 RM MMX MMX - - MMX_PSLLW
|
|
NP.0ff2 RM MMX MMX - - MMX_PSLLD
|
|
NP.0ff3 RM MMX MMX - - MMX_PSLLQ
|
|
NP.0ff4 RM MMX MMX - - MMX_PMULUDQ
|
|
NP.0ff5 RM MMX MMX - - MMX_PMADDWD
|
|
NP.0ff6 RM MMX MMX - - MMX_PSADBW
|
|
NP.0ff7/r RM MMX MMX - - MMX_MASKMOVQ
|
|
NP.0ff8 RM MMX MMX - - MMX_PSUBB
|
|
NP.0ff9 RM MMX MMX - - MMX_PSUBW
|
|
NP.0ffa RM MMX MMX - - MMX_PSUBD
|
|
NP.0ffb RM MMX MMX - - MMX_PSUBQ
|
|
NP.0ffc RM MMX MMX - - MMX_PADDB
|
|
NP.0ffd RM MMX MMX - - MMX_PADDW
|
|
NP.0ffe RM MMX MMX - - MMX_PADDD
|
|
NP.0f3800 RM MMX MMX - - MMX_PSHUFB
|
|
NP.0f3801 RM MMX MMX - - MMX_PHADDW
|
|
NP.0f3802 RM MMX MMX - - MMX_PHADDD
|
|
NP.0f3803 RM MMX MMX - - MMX_PHADDSW
|
|
NP.0f3804 RM MMX MMX - - MMX_PMADDUBSW
|
|
NP.0f3805 RM MMX MMX - - MMX_PHSUBW
|
|
NP.0f3806 RM MMX MMX - - MMX_PHSUBD
|
|
NP.0f3807 RM MMX MMX - - MMX_PHSUBSW
|
|
NP.0f3808 RM MMX MMX - - MMX_PSIGNB
|
|
NP.0f3809 RM MMX MMX - - MMX_PSIGNW
|
|
NP.0f380a RM MMX MMX - - MMX_PSIGND
|
|
NP.0f380b RM MMX MMX - - MMX_PMULHRSW
|
|
NP.0f381c RM MMX MMX - - MMX_PABSB
|
|
NP.0f381d RM MMX MMX - - MMX_PABSW
|
|
NP.0f381e RM MMX MMX - - MMX_PABSD
|
|
NP.0f3a0f RMI MMX MMX IMM8 - MMX_PALIGNR
|
|
|
|
#
|
|
# SSE
|
|
NP.0f10 RM XMM XMM - - SSE_MOVUPS
|
|
66.0f10 RM XMM XMM - - SSE_MOVUPD
|
|
# MOVSS/MOVSD reg,mem set the full XMM register
|
|
F3.0f10 RM XMM XMM32 - - SSE_MOVSS
|
|
F2.0f10 RM XMM XMM64 - - SSE_MOVSD
|
|
NP.0f11 MR XMM XMM - - SSE_MOVUPS
|
|
66.0f11 MR XMM XMM - - SSE_MOVUPD
|
|
F3.0f11 MR XMM32 XMM32 - - SSE_MOVSS
|
|
F2.0f11 MR XMM64 XMM64 - - SSE_MOVSD
|
|
NP.0f12/m RM XMM XMM64 - - SSE_MOVLPS
|
|
NP.0f12/r RM XMM XMM - - SSE_MOVHLPS
|
|
66.0f12/m RM XMM XMM64 - - SSE_MOVLPD
|
|
F3.0f12 RM XMM XMM - - SSE_MOVSLDUP
|
|
F2.0f12 RM XMM XMM64 - - SSE_MOVDDUP
|
|
NP.0f13/m MR MEM64 XMM - - SSE_MOVLPS
|
|
66.0f13/m MR MEM64 XMM - - SSE_MOVLPD
|
|
NP.0f14 RM XMM XMM - - SSE_UNPCKLPS
|
|
66.0f14 RM XMM XMM - - SSE_UNPCKLPD
|
|
NP.0f15 RM XMM XMM - - SSE_UNPCKHPS
|
|
66.0f15 RM XMM XMM - - SSE_UNPCKHPD
|
|
NP.0f16/m RM XMM XMM64 - - SSE_MOVHPS
|
|
NP.0f16/r RM XMM XMM64 - - SSE_MOVLHPS
|
|
66.0f16/m RM XMM XMM64 - - SSE_MOVHPD
|
|
F3.0f16 RM XMM XMM - - SSE_MOVSHDUP
|
|
NP.0f17/m MR MEM64 XMM - - SSE_MOVHPS
|
|
66.0f17/m MR MEM64 XMM - - SSE_MOVHPD
|
|
NP.0f28 RM XMM XMM - - SSE_MOVAPS
|
|
66.0f28 RM XMM XMM - - SSE_MOVAPD
|
|
NP.0f29 MR XMM XMM - - SSE_MOVAPS
|
|
66.0f29 MR XMM XMM - - SSE_MOVAPD
|
|
F3.0f2a RM XMM32 GP - - SSE_CVTSI2SS
|
|
F2.0f2a RM XMM64 GP - - SSE_CVTSI2SD
|
|
NP.0f2b/m MR MEMV XMM - - SSE_MOVNTPS
|
|
66.0f2b/m MR MEMV XMM - - SSE_MOVNTPD
|
|
F3.0f2b/m MR MEM32 XMM32 - - SSE_MOVNTSS ONLYAMD
|
|
F2.0f2b/m MR MEM64 XMM64 - - SSE_MOVNTSD ONLYAMD
|
|
F3.0f2c RM GP XMM32 - - SSE_CVTTSS2SI
|
|
F2.0f2c RM GP XMM64 - - SSE_CVTTSD2SI
|
|
F3.0f2d RM GP XMM32 - - SSE_CVTSS2SI
|
|
F2.0f2d RM GP XMM64 - - SSE_CVTSD2SI
|
|
NP.0f2e RM XMM32 XMM32 - - SSE_UCOMISS
|
|
66.0f2e RM XMM64 XMM64 - - SSE_UCOMISD
|
|
NP.0f2f RM XMM32 XMM32 - - SSE_COMISS
|
|
66.0f2f RM XMM64 XMM64 - - SSE_COMISD
|
|
NP.0f50/r RM GP XMM - - SSE_MOVMSKPS DEF64
|
|
66.0f50/r RM GP XMM - - SSE_MOVMSKPD DEF64
|
|
NP.0f51 RM XMM XMM - - SSE_SQRTPS
|
|
66.0f51 RM XMM XMM - - SSE_SQRTPD
|
|
F3.0f51 RM XMM32 XMM32 - - SSE_SQRTSS
|
|
F2.0f51 RM XMM64 XMM64 - - SSE_SQRTSD
|
|
NP.0f52 RM XMM XMM - - SSE_RSQRTPS
|
|
F3.0f52 RM XMM32 XMM32 - - SSE_RSQRTSS
|
|
NP.0f53 RM XMM XMM - - SSE_RCPPS
|
|
F3.0f53 RM XMM32 XMM32 - - SSE_RCPSS
|
|
NP.0f54 RM XMM XMM - - SSE_ANDPS
|
|
66.0f54 RM XMM XMM - - SSE_ANDPD
|
|
NP.0f55 RM XMM XMM - - SSE_ANDNPS
|
|
66.0f55 RM XMM XMM - - SSE_ANDNPD
|
|
NP.0f56 RM XMM XMM - - SSE_ORPS
|
|
66.0f56 RM XMM XMM - - SSE_ORPD
|
|
NP.0f57 RM XMM XMM - - SSE_XORPS
|
|
66.0f57 RM XMM XMM - - SSE_XORPD
|
|
NP.0f58 RM XMM XMM - - SSE_ADDPS
|
|
66.0f58 RM XMM XMM - - SSE_ADDPD
|
|
F3.0f58 RM XMM32 XMM32 - - SSE_ADDSS
|
|
F2.0f58 RM XMM64 XMM64 - - SSE_ADDSD
|
|
NP.0f59 RM XMM XMM - - SSE_MULPS
|
|
66.0f59 RM XMM XMM - - SSE_MULPD
|
|
F3.0f59 RM XMM32 XMM32 - - SSE_MULSS
|
|
F2.0f59 RM XMM64 XMM64 - - SSE_MULSD
|
|
NP.0f5a RM XMM XMM64 - - SSE_CVTPS2PD
|
|
66.0f5a RM XMM XMM - - SSE_CVTPD2PS
|
|
F3.0f5a RM XMM XMM32 - - SSE_CVTSS2SD
|
|
F2.0f5a RM XMM XMM64 - - SSE_CVTSD2SS
|
|
NP.0f5b RM XMM XMM - - SSE_CVTDQ2PS
|
|
66.0f5b RM XMM XMM - - SSE_CVTPS2DQ
|
|
F3.0f5b RM XMM XMM - - SSE_CVTTPS2DQ
|
|
NP.0f5c RM XMM XMM - - SSE_SUBPS
|
|
66.0f5c RM XMM XMM - - SSE_SUBPD
|
|
F3.0f5c RM XMM32 XMM32 - - SSE_SUBSS
|
|
F2.0f5c RM XMM64 XMM64 - - SSE_SUBSD
|
|
NP.0f5d RM XMM XMM - - SSE_MINPS
|
|
66.0f5d RM XMM XMM - - SSE_MINPD
|
|
F3.0f5d RM XMM32 XMM32 - - SSE_MINSS
|
|
F2.0f5d RM XMM64 XMM64 - - SSE_MINSD
|
|
NP.0f5e RM XMM XMM - - SSE_DIVPS
|
|
66.0f5e RM XMM XMM - - SSE_DIVPD
|
|
F3.0f5e RM XMM32 XMM32 - - SSE_DIVSS
|
|
F2.0f5e RM XMM64 XMM64 - - SSE_DIVSD
|
|
NP.0f5f RM XMM XMM - - SSE_MAXPS
|
|
66.0f5f RM XMM XMM - - SSE_MAXPD
|
|
F3.0f5f RM XMM32 XMM32 - - SSE_MAXSS
|
|
F2.0f5f RM XMM64 XMM64 - - SSE_MAXSD
|
|
66.0f60 RM XMM XMM - - SSE_PUNPCKLBW
|
|
66.0f61 RM XMM XMM - - SSE_PUNPCKLWD
|
|
66.0f62 RM XMM XMM - - SSE_PUNPCKLDQ
|
|
66.0f63 RM XMM XMM - - SSE_PACKSSWB
|
|
66.0f64 RM XMM XMM - - SSE_PCMPGTB
|
|
66.0f65 RM XMM XMM - - SSE_PCMPGTW
|
|
66.0f66 RM XMM XMM - - SSE_PCMPGTD
|
|
66.0f67 RM XMM XMM - - SSE_PACKUSWB
|
|
66.0f68 RM XMM XMM - - SSE_PUNPCKHBW
|
|
66.0f69 RM XMM XMM - - SSE_PUNPCKHWD
|
|
66.0f6a RM XMM XMM - - SSE_PUNPCKHDQ
|
|
66.0f6b RM XMM XMM - - SSE_PACKSSDW
|
|
66.0f6c RM XMM XMM - - SSE_PUNPCKLQDQ
|
|
66.0f6d RM XMM XMM - - SSE_PUNPCKHQDQ
|
|
66.W0.0f6e RM XMM GP32 - - SSE_MOVD
|
|
66.W1.0f6e RM XMM GP64 - - SSE_MOVQ
|
|
66.0f6f RM XMM XMM - - SSE_MOVDQA
|
|
F3.0f6f RM XMM XMM - - SSE_MOVDQU
|
|
66.0f70 RMI XMM XMM IMM8 - SSE_PSHUFD
|
|
F3.0f70 RMI XMM XMM IMM8 - SSE_PSHUFHW
|
|
F2.0f70 RMI XMM XMM IMM8 - SSE_PSHUFLW
|
|
66.0f71/2r MI XMM IMM8 - - SSE_PSRLW
|
|
66.0f71/4r MI XMM IMM8 - - SSE_PSRAW
|
|
66.0f71/6r MI XMM IMM8 - - SSE_PSLLW
|
|
66.0f72/2r MI XMM IMM8 - - SSE_PSRLD
|
|
66.0f72/4r MI XMM IMM8 - - SSE_PSRAD
|
|
66.0f72/6r MI XMM IMM8 - - SSE_PSLLD
|
|
66.0f73/2r MI XMM IMM8 - - SSE_PSRLQ
|
|
66.0f73/3r MI XMM IMM8 - - SSE_PSRLDQ
|
|
66.0f73/6r MI XMM IMM8 - - SSE_PSLLQ
|
|
66.0f73/7r MI XMM IMM8 - - SSE_PSLLDQ
|
|
66.0f74 RM XMM XMM - - SSE_PCMPEQB
|
|
66.0f75 RM XMM XMM - - SSE_PCMPEQW
|
|
66.0f76 RM XMM XMM - - SSE_PCMPEQD
|
|
# EXTRQ/INSERTQ immediate size handled in code.
|
|
66.0f78/0r MI XMM IMM16 - - SSE_EXTRQ ONLYAMD
|
|
F2.0f78/r RMI XMM XMM IMM16 - SSE_INSERTQ ONLYAMD
|
|
66.0f79/r RM XMM XMM - - SSE_EXTRQ ONLYAMD
|
|
F2.0f79/r RM XMM XMM - - SSE_INSERTQ ONLYAMD
|
|
66.0f7c RM XMM XMM - - SSE_HADDPD
|
|
F2.0f7c RM XMM XMM - - SSE_HADDPS
|
|
66.0f7d RM XMM XMM - - SSE_HSUBPD
|
|
F2.0f7d RM XMM XMM - - SSE_HSUBPS
|
|
66.W0.0f7e MR GP32 XMM32 - - SSE_MOVD
|
|
66.W1.0f7e MR GP64 XMM64 - - SSE_MOVQ
|
|
F3.0f7e RM XMM XMM64 - - SSE_MOVQ
|
|
66.0f7f MR XMM XMM - - SSE_MOVDQA
|
|
F3.0f7f MR XMM XMM - - SSE_MOVDQU
|
|
NP.0fae/0m M MEMZ - - - FXSAVE INSTR_WIDTH
|
|
NP.0fae/1m M MEMZ - - - FXRSTOR INSTR_WIDTH
|
|
NP.0fae/2m M MEM32 - - - LDMXCSR
|
|
NP.0fae/3m M MEM32 - - - STMXCSR
|
|
NP.0fae/5r NP - - - - LFENCE
|
|
NP.0fae/6r NP - - - - MFENCE
|
|
NP.0fae/7r NP - - - - SFENCE
|
|
NP.0fc2 RMI XMM XMM IMM8 - SSE_CMPPS
|
|
66.0fc2 RMI XMM XMM IMM8 - SSE_CMPPD
|
|
F3.0fc2 RMI XMM XMM32 IMM8 - SSE_CMPSS
|
|
F2.0fc2 RMI XMM XMM64 IMM8 - SSE_CMPSD
|
|
66.0fc4 RMI XMM GP16 IMM8 - SSE_PINSRW
|
|
66.0fc5/r RMI GP XMM IMM8 - SSE_PEXTRW DEF64
|
|
NP.0fc6 RMI XMM XMM IMM8 - SSE_SHUFPS
|
|
66.0fc6 RMI XMM XMM IMM8 - SSE_SHUFPD
|
|
66.0fd0 RM XMM XMM - - SSE_ADDSUBPD
|
|
F2.0fd0 RM XMM XMM - - SSE_ADDSUBPS
|
|
66.0fd1 RM XMM XMM - - SSE_PSRLW
|
|
66.0fd2 RM XMM XMM - - SSE_PSRLD
|
|
66.0fd3 RM XMM XMM - - SSE_PSRLQ
|
|
66.0fd4 RM XMM XMM - - SSE_PADDQ
|
|
66.0fd5 RM XMM XMM - - SSE_PMULLW
|
|
# This is tricky, MOVQ to mem writes 64 bits, MOVQ to reg writes 128 bits
|
|
66.0fd6 MR XMM64 XMM64 - - SSE_MOVQ
|
|
66.0fd7/r RM GP XMM - - SSE_PMOVMSKB DEF64
|
|
66.0fd8 RM XMM XMM - - SSE_PSUBUSB
|
|
66.0fd9 RM XMM XMM - - SSE_PSUBUSW
|
|
66.0fda RM XMM XMM - - SSE_PMINUB
|
|
66.0fdb RM XMM XMM - - SSE_PAND
|
|
66.0fdc RM XMM XMM - - SSE_PADDUSB
|
|
66.0fdd RM XMM XMM - - SSE_PADDUSW
|
|
66.0fde RM XMM XMM - - SSE_PMAXUB
|
|
66.0fdf RM XMM XMM - - SSE_PANDN
|
|
66.0fe0 RM XMM XMM - - SSE_PAVGB
|
|
66.0fe1 RM XMM XMM - - SSE_PSRAW
|
|
66.0fe2 RM XMM XMM - - SSE_PSRAD
|
|
66.0fe3 RM XMM XMM - - SSE_PAVGW
|
|
66.0fe4 RM XMM XMM - - SSE_PMULHUW
|
|
66.0fe5 RM XMM XMM - - SSE_PMULHW
|
|
66.0fe6 RM XMM XMM - - SSE_CVTTPD2DQ
|
|
F3.0fe6 RM XMM XMM64 - - SSE_CVTDQ2PD
|
|
F2.0fe6 RM XMM XMM - - SSE_CVTPD2DQ
|
|
66.0fe7/m MR MEMV XMM - - SSE_MOVNTDQ
|
|
66.0fe8 RM XMM XMM - - SSE_PSUBSB
|
|
66.0fe9 RM XMM XMM - - SSE_PSUBSW
|
|
66.0feb RM XMM XMM - - SSE_POR
|
|
66.0fec RM XMM XMM - - SSE_PADDSB
|
|
66.0fea RM XMM XMM - - SSE_PMINSW
|
|
66.0fee RM XMM XMM - - SSE_PMAXSW
|
|
66.0fed RM XMM XMM - - SSE_PADDSW
|
|
66.0fef RM XMM XMM - - SSE_PXOR
|
|
F2.0ff0/m RM XMM MEMV - - SSE_LDDQU
|
|
66.0ff1 RM XMM XMM - - SSE_PSLLW
|
|
66.0ff2 RM XMM XMM - - SSE_PSLLD
|
|
66.0ff3 RM XMM XMM - - SSE_PSLLQ
|
|
66.0ff4 RM XMM XMM - - SSE_PMULUDQ
|
|
66.0ff5 RM XMM XMM - - SSE_PMADDWD
|
|
66.0ff6 RM XMM XMM - - SSE_PSADBW
|
|
66.0ff7/r RM XMM XMM - - SSE_MASKMOVDQU
|
|
66.0ff8 RM XMM XMM - - SSE_PSUBB
|
|
66.0ff9 RM XMM XMM - - SSE_PSUBW
|
|
66.0ffa RM XMM XMM - - SSE_PSUBD
|
|
66.0ffb RM XMM XMM - - SSE_PSUBQ
|
|
66.0ffc RM XMM XMM - - SSE_PADDB
|
|
66.0ffd RM XMM XMM - - SSE_PADDW
|
|
66.0ffe RM XMM XMM - - SSE_PADDD
|
|
#
|
|
66.0f3800 RM XMM XMM - - SSE_PSHUFB
|
|
66.0f3801 RM XMM XMM - - SSE_PHADDW
|
|
66.0f3802 RM XMM XMM - - SSE_PHADDD
|
|
66.0f3803 RM XMM XMM - - SSE_PHADDSW
|
|
66.0f3804 RM XMM XMM - - SSE_PMADDUBSW
|
|
66.0f3805 RM XMM XMM - - SSE_PHSUBW
|
|
66.0f3806 RM XMM XMM - - SSE_PHSUBD
|
|
66.0f3807 RM XMM XMM - - SSE_PHSUBSW
|
|
66.0f3808 RM XMM XMM - - SSE_PSIGNB
|
|
66.0f3809 RM XMM XMM - - SSE_PSIGNW
|
|
66.0f380a RM XMM XMM - - SSE_PSIGND
|
|
66.0f380b RM XMM XMM - - SSE_PMULHRSW
|
|
66.0f3810 RM XMM XMM - - SSE_PBLENDVB
|
|
66.0f3814 RMA XMM XMM XMM - SSE_BLENDVPS
|
|
66.0f3815 RMA XMM XMM XMM - SSE_BLENDVPD
|
|
66.0f3817 RM XMM XMM - - SSE_PTEST
|
|
66.0f381c RM XMM XMM - - SSE_PABSB
|
|
66.0f381d RM XMM XMM - - SSE_PABSW
|
|
66.0f381e RM XMM XMM - - SSE_PABSD
|
|
66.0f3820 RM XMM XMM - - SSE_PMOVSXBW
|
|
66.0f3821 RM XMM XMM - - SSE_PMOVSXBD
|
|
66.0f3822 RM XMM XMM - - SSE_PMOVSXBQ
|
|
66.0f3823 RM XMM XMM - - SSE_PMOVSXWD
|
|
66.0f3824 RM XMM XMM - - SSE_PMOVSXWQ
|
|
66.0f3825 RM XMM XMM - - SSE_PMOVSXDQ
|
|
66.0f3828 RM XMM XMM - - SSE_PMULDQ
|
|
66.0f3829 RM XMM XMM - - SSE_PCMPEQQ
|
|
66.0f382a/m RM XMM MEMV - - SSE_MOVNTDQA
|
|
66.0f382b RM XMM XMM - - SSE_PACKUSDW
|
|
66.0f3830 RM XMM XMM - - SSE_PMOVZXBW
|
|
66.0f3831 RM XMM XMM - - SSE_PMOVZXBD
|
|
66.0f3832 RM XMM XMM - - SSE_PMOVZXBQ
|
|
66.0f3833 RM XMM XMM - - SSE_PMOVZXWD
|
|
66.0f3834 RM XMM XMM - - SSE_PMOVZXWQ
|
|
66.0f3835 RM XMM XMM - - SSE_PMOVZXDQ
|
|
66.0f3837 RM XMM XMM - - SSE_PCMPGTQ
|
|
66.0f3838 RM XMM XMM - - SSE_PMINSB
|
|
66.0f3839 RM XMM XMM - - SSE_PMINSD
|
|
66.0f383a RM XMM XMM - - SSE_PMINUW
|
|
66.0f383b RM XMM XMM - - SSE_PMINUD
|
|
66.0f383c RM XMM XMM - - SSE_PMAXSB
|
|
66.0f383d RM XMM XMM - - SSE_PMAXSD
|
|
66.0f383e RM XMM XMM - - SSE_PMAXUW
|
|
66.0f383f RM XMM XMM - - SSE_PMAXUD
|
|
66.0f3840 RM XMM XMM - - SSE_PMULLD
|
|
66.0f3841 RM XMM XMM - - SSE_PHMINPOSUW
|
|
# TODO: GP operand has address size
|
|
66.0f38f8/m RM GP MEM512 - - MOVDIR64B DEF64
|
|
NP.0f38f9/m MR MEM GP - - MOVDIRI
|
|
#
|
|
66.0f3a08 RMI XMM XMM IMM8 - SSE_ROUNDPS
|
|
66.0f3a09 RMI XMM XMM IMM8 - SSE_ROUNDPD
|
|
66.0f3a0a RMI XMM32 XMM32 IMM8 - SSE_ROUNDSS
|
|
66.0f3a0b RMI XMM64 XMM64 IMM8 - SSE_ROUNDSD
|
|
66.0f3a0c RMI XMM XMM IMM8 - SSE_BLENDPS
|
|
66.0f3a0d RMI XMM XMM IMM8 - SSE_BLENDPD
|
|
66.0f3a0e RMI XMM XMM IMM8 - SSE_PBLENDW
|
|
66.0f3a0f RMI XMM XMM IMM8 - SSE_PALIGNR
|
|
66.0f3a14/m MRI GP8 XMM IMM8 - SSE_PEXTRB
|
|
66.0f3a14/r MRI GP32 XMM IMM8 - SSE_PEXTRB
|
|
66.0f3a15/m MRI GP16 XMM IMM8 - SSE_PEXTRW
|
|
66.0f3a15/r MRI GP32 XMM IMM8 - SSE_PEXTRW
|
|
66.W0.0f3a16 MRI GP32 XMM IMM8 - SSE_PEXTRD
|
|
66.W1.0f3a16 MRI GP64 XMM IMM8 - SSE_PEXTRQ
|
|
66.0f3a17 MRI GP32 XMM IMM8 - SSE_EXTRACTPS
|
|
66.0f3a20 RMI XMM GP8 IMM8 - SSE_PINSRB
|
|
66.0f3a21 RMI XMM XMM32 IMM8 - SSE_INSERTPS
|
|
66.W0.0f3a22 RMI XMM GP32 IMM8 - SSE_PINSRD
|
|
66.W1.0f3a22 RMI XMM GP64 IMM8 - SSE_PINSRQ
|
|
66.0f3a40 RMI XMM XMM IMM8 - SSE_DPPS
|
|
66.0f3a41 RMI XMM XMM IMM8 - SSE_DPPD
|
|
66.0f3a42 RMI XMM XMM IMM8 - SSE_MPSADBW
|
|
66.0f3a44 RMI XMM XMM IMM8 - SSE_PCLMULQDQ
|
|
66.0f3a60 RMI XMM XMM IMM8 - SSE_PCMPESTRM
|
|
66.0f3a61 RMI XMM XMM IMM8 - SSE_PCMPESTRI
|
|
66.0f3a62 RMI XMM XMM IMM8 - SSE_PCMPISTRM
|
|
66.0f3a63 RMI XMM XMM IMM8 - SSE_PCMPISTRI
|
|
#
|
|
66.0f38db RM XMM XMM - - AESIMC
|
|
66.0f38dc RM XMM XMM - - AESENC
|
|
66.0f38dd RM XMM XMM - - AESENCLAST
|
|
66.0f38de RM XMM XMM - - AESDEC
|
|
66.0f38df RM XMM XMM - - AESDECLAST
|
|
66.0f3adf RMI XMM XMM IMM8 - AESKEYGENASSIST
|
|
VEX.66.L0.0f38db RM XMM XMM - - VAESIMC
|
|
VEX.66.L0.0f38dc RVM XMM XMM XMM - VAESENC
|
|
VEX.66.L0.0f38dd RVM XMM XMM XMM - VAESENCLAST
|
|
VEX.66.L0.0f38de RVM XMM XMM XMM - VAESDEC
|
|
VEX.66.L0.0f38df RVM XMM XMM XMM - VAESDECLAST
|
|
VEX.66.L0.0f3adf RMI XMM XMM IMM8 - VAESKEYGENASSIST
|
|
#
|
|
# AVX
|
|
VEX.NP.0f10 RM XMM XMM - - VMOVUPS
|
|
VEX.66.0f10 RM XMM XMM - - VMOVUPD
|
|
VEX.F3.LIG.0f10/m RM XMM128 XMM32 - - VMOVSS
|
|
VEX.F3.LIG.0f10/r RVM XMM128 XMM128 XMM32 - VMOVSS
|
|
VEX.F2.LIG.0f10/m RM XMM128 XMM64 - - VMOVSD
|
|
VEX.F2.LIG.0f10/r RVM XMM128 XMM128 XMM64 - VMOVSD
|
|
VEX.NP.0f11 MR XMM XMM - - VMOVUPS
|
|
VEX.66.0f11 MR XMM XMM - - VMOVUPD
|
|
VEX.F3.LIG.0f11/m MR XMM32 XMM32 - - VMOVSS
|
|
VEX.F3.LIG.0f11/r MVR XMM128 XMM128 XMM32 - VMOVSS
|
|
VEX.F2.LIG.0f11/m MR XMM64 XMM64 - - VMOVSD
|
|
VEX.F2.LIG.0f11/r MVR XMM128 XMM XMM64 - VMOVSD
|
|
VEX.NP.L0.0f12/m RVM XMM XMM XMM64 - VMOVLPS
|
|
VEX.NP.L0.0f12/r RVM XMM XMM XMM - VMOVHLPS
|
|
VEX.66.L0.0f12/m RVM XMM XMM XMM64 - VMOVLPD
|
|
VEX.F2.L0.0f12 RM XMM XMM64 - - VMOVDDUP
|
|
VEX.F2.L1.0f12 RM XMM XMM - - VMOVDDUP
|
|
VEX.F3.0f12 RM XMM XMM - - VMOVSLDUP
|
|
VEX.NP.L0.0f13/m MR MEM64 XMM - - VMOVLPS
|
|
VEX.66.L0.0f13/m MR MEM64 XMM - - VMOVLPD
|
|
VEX.NP.0f14 RVM XMM XMM XMM - VUNPCKLPS
|
|
VEX.66.0f14 RVM XMM XMM XMM - VUNPCKLPD
|
|
VEX.NP.0f15 RVM XMM XMM XMM - VUNPCKHPS
|
|
VEX.66.0f15 RVM XMM XMM XMM - VUNPCKHPD
|
|
VEX.NP.L0.0f16/m RVM XMM XMM64 XMM64 - VMOVHPS
|
|
VEX.NP.L0.0f16/r RVM XMM XMM64 XMM64 - VMOVLHPS
|
|
VEX.66.L0.0f16/m RVM XMM XMM64 XMM64 - VMOVHPD
|
|
VEX.F3.0f16 RM XMM XMM - - VMOVSHDUP
|
|
VEX.NP.L0.0f17/m MR MEM64 XMM - - VMOVHPS
|
|
VEX.66.L0.0f17/m MR MEM64 XMM - - VMOVHPD
|
|
VEX.NP.0f28 RM XMM XMM - - VMOVAPS
|
|
VEX.66.0f28 RM XMM XMM - - VMOVAPD
|
|
VEX.NP.0f29 MR XMM XMM - - VMOVAPS
|
|
VEX.66.0f29 MR XMM XMM - - VMOVAPD
|
|
VEX.F3.LIG.0f2a RVM XMM128 XMM128 GP - VCVTSI2SS
|
|
VEX.F2.LIG.0f2a RVM XMM128 XMM128 GP - VCVTSI2SD
|
|
VEX.NP.0f2b/m MR MEMV XMM - - VMOVNTPS
|
|
VEX.66.0f2b/m MR MEMV XMM - - VMOVNTPD
|
|
VEX.F3.LIG.0f2c RM GP XMM32 - - VCVTTSS2SI
|
|
VEX.F2.LIG.0f2c RM GP XMM64 - - VCVTTSD2SI
|
|
VEX.F3.LIG.0f2d RM GP XMM32 - - VCVTSS2SI
|
|
VEX.F2.LIG.0f2d RM GP XMM64 - - VCVTSD2SI
|
|
VEX.NP.LIG.0f2e RM XMM32 XMM32 - - VUCOMISS
|
|
VEX.66.LIG.0f2e RM XMM64 XMM64 - - VUCOMISD
|
|
VEX.NP.LIG.0f2f RM XMM32 XMM32 - - VCOMISS
|
|
VEX.66.LIG.0f2f RM XMM64 XMM64 - - VCOMISD
|
|
VEX.NP.0f50/r RM GP XMM - - VMOVMSKPS DEF64
|
|
VEX.66.0f50/r RM GP XMM - - VMOVMSKPD DEF64
|
|
VEX.NP.0f51 RM XMM XMM - - VSQRTPS
|
|
VEX.66.0f51 RM XMM XMM - - VSQRTPD
|
|
VEX.F3.LIG.0f51 RVM XMM128 XMM128 XMM32 - VSQRTSS
|
|
VEX.F2.LIG.0f51 RVM XMM128 XMM128 XMM64 - VSQRTSD
|
|
VEX.NP.0f52 RM XMM XMM - - VRSQRTPS
|
|
VEX.F3.LIG.0f52 RVM XMM128 XMM128 XMM32 - VRSQRTSS
|
|
VEX.NP.0f53 RM XMM XMM - - VRCPPS
|
|
VEX.F3.LIG.0f53 RVM XMM128 XMM128 XMM32 - VRCPSS
|
|
VEX.NP.0f54 RVM XMM XMM XMM - VANDPS
|
|
VEX.66.0f54 RVM XMM XMM XMM - VANDPD
|
|
VEX.NP.0f55 RVM XMM XMM XMM - VANDNPS
|
|
VEX.66.0f55 RVM XMM XMM XMM - VANDNPD
|
|
VEX.NP.0f56 RVM XMM XMM XMM - VORPS
|
|
VEX.66.0f56 RVM XMM XMM XMM - VORPD
|
|
VEX.NP.0f57 RVM XMM XMM XMM - VXORPS
|
|
VEX.66.0f57 RVM XMM XMM XMM - VXORPD
|
|
VEX.NP.0f58 RVM XMM XMM XMM - VADDPS
|
|
VEX.66.0f58 RVM XMM XMM XMM - VADDPD
|
|
VEX.F3.LIG.0f58 RVM XMM128 XMM128 XMM32 - VADDSS
|
|
VEX.F2.LIG.0f58 RVM XMM128 XMM128 XMM64 - VADDSD
|
|
VEX.NP.0f59 RVM XMM XMM XMM - VMULPS
|
|
VEX.66.0f59 RVM XMM XMM XMM - VMULPD
|
|
VEX.F3.LIG.0f59 RVM XMM128 XMM128 XMM32 - VMULSS
|
|
VEX.F2.LIG.0f59 RVM XMM128 XMM128 XMM64 - VMULSD
|
|
VEX.NP.L0.0f5a RM XMM XMM64 - - VCVTPS2PD
|
|
VEX.NP.L1.0f5a RM XMM XMM128 - - VCVTPS2PD
|
|
VEX.66.0f5a RM XMM128 XMM - - VCVTPD2PS
|
|
VEX.F3.LIG.0f5a RVM XMM128 XMM128 XMM32 - VCVTSS2SD
|
|
VEX.F2.LIG.0f5a RVM XMM128 XMM128 XMM64 - VCVTSD2SS
|
|
VEX.NP.0f5b RM XMM XMM - - VCVTDQ2PS
|
|
VEX.66.0f5b RM XMM XMM - - VCVTPS2DQ
|
|
VEX.F3.0f5b RM XMM XMM - - VCVTTPS2DQ
|
|
VEX.NP.0f5c RVM XMM XMM XMM - VSUBPS
|
|
VEX.66.0f5c RVM XMM XMM XMM - VSUBPD
|
|
VEX.F3.LIG.0f5c RVM XMM128 XMM128 XMM32 - VSUBSS
|
|
VEX.F2.LIG.0f5c RVM XMM128 XMM128 XMM64 - VSUBSD
|
|
VEX.NP.0f5d RVM XMM XMM XMM - VMINPS
|
|
VEX.66.0f5d RVM XMM XMM XMM - VMINPD
|
|
VEX.F3.LIG.0f5d RVM XMM128 XMM128 XMM32 - VMINSS
|
|
VEX.F2.LIG.0f5d RVM XMM128 XMM128 XMM64 - VMINSD
|
|
VEX.NP.0f5e RVM XMM XMM XMM - VDIVPS
|
|
VEX.66.0f5e RVM XMM XMM XMM - VDIVPD
|
|
VEX.F3.LIG.0f5e RVM XMM128 XMM128 XMM32 - VDIVSS
|
|
VEX.F2.LIG.0f5e RVM XMM128 XMM128 XMM64 - VDIVSD
|
|
VEX.NP.0f5f RVM XMM XMM XMM - VMAXPS
|
|
VEX.66.0f5f RVM XMM XMM XMM - VMAXPD
|
|
VEX.F3.LIG.0f5f RVM XMM128 XMM128 XMM32 - VMAXSS
|
|
VEX.F2.LIG.0f5f RVM XMM128 XMM128 XMM64 - VMAXSD
|
|
VEX.66.0f60 RVM XMM XMM XMM - VPUNPCKLBW
|
|
VEX.66.0f61 RVM XMM XMM XMM - VPUNPCKLWD
|
|
VEX.66.0f62 RVM XMM XMM XMM - VPUNPCKLDQ
|
|
VEX.66.0f63 RVM XMM XMM XMM - VPACKSSWB
|
|
VEX.66.0f64 RVM XMM XMM XMM - VPCMPGTB
|
|
VEX.66.0f65 RVM XMM XMM XMM - VPCMPGTW
|
|
VEX.66.0f66 RVM XMM XMM XMM - VPCMPGTD
|
|
VEX.66.0f67 RVM XMM XMM XMM - VPACKUSWB
|
|
VEX.66.0f68 RVM XMM XMM XMM - VPUNPCKHBW
|
|
VEX.66.0f69 RVM XMM XMM XMM - VPUNPCKHWD
|
|
VEX.66.0f6a RVM XMM XMM XMM - VPUNPCKHDQ
|
|
VEX.66.0f6b RVM XMM XMM XMM - VPACKSSDW
|
|
VEX.66.0f6c RVM XMM XMM XMM - VPUNPCKLQDQ
|
|
VEX.66.0f6d RVM XMM XMM XMM - VPUNPCKHQDQ
|
|
VEX.66.W0.L0.0f6e RM XMM32 GP - - VMOVD ENC_NOSZ
|
|
VEX.66.W1.L0.0f6e RM XMM32 GP - - VMOVD ONLY32 ENC_NOSZ
|
|
VEX.66.W1.L0.0f6e RM XMM64 GP - - VMOVQ ONLY64 ENC_NOSZ
|
|
VEX.66.0f6f RM XMM XMM - - VMOVDQA
|
|
VEX.F3.0f6f RM XMM XMM - - VMOVDQU
|
|
VEX.66.0f70 RMI XMM XMM IMM8 - VPSHUFD
|
|
VEX.F3.0f70 RMI XMM XMM IMM8 - VPSHUFHW
|
|
VEX.F2.0f70 RMI XMM XMM IMM8 - VPSHUFLW
|
|
VEX.66.0f71/2r VMI XMM XMM IMM8 - VPSRLW
|
|
VEX.66.0f71/4r VMI XMM XMM IMM8 - VPSRAW
|
|
VEX.66.0f71/6r VMI XMM XMM IMM8 - VPSLLW
|
|
VEX.66.0f72/2r VMI XMM XMM IMM8 - VPSRLD
|
|
VEX.66.0f72/4r VMI XMM XMM IMM8 - VPSRAD
|
|
VEX.66.0f72/6r VMI XMM XMM IMM8 - VPSLLD
|
|
VEX.66.0f73/2r VMI XMM XMM IMM8 - VPSRLQ
|
|
VEX.66.0f73/3r VMI XMM XMM IMM8 - VPSRLDQ
|
|
VEX.66.0f73/6r VMI XMM XMM IMM8 - VPSLLQ
|
|
VEX.66.0f73/7r VMI XMM XMM IMM8 - VPSLLDQ
|
|
VEX.66.0f74 RVM XMM XMM XMM - VPCMPEQB
|
|
VEX.66.0f75 RVM XMM XMM XMM - VPCMPEQW
|
|
VEX.66.0f76 RVM XMM XMM XMM - VPCMPEQD
|
|
VEX.NP.L0.0f77 NP - - - - VZEROUPPER
|
|
VEX.NP.L1.0f77 NP - - - - VZEROALL
|
|
VEX.66.0f7c RVM XMM XMM XMM - VHADDPD
|
|
VEX.F2.0f7c RVM XMM XMM XMM - VHADDPS
|
|
VEX.66.0f7d RVM XMM XMM XMM - VHSUBPD
|
|
VEX.F2.0f7d RVM XMM XMM XMM - VHSUBPS
|
|
VEX.66.W0.L0.0f7e MR GP XMM32 - - VMOVD ENC_NOSZ
|
|
VEX.66.W1.L0.0f7e MR GP XMM32 - - VMOVQ ONLY32 ENC_NOSZ
|
|
VEX.66.W1.L0.0f7e MR GP XMM64 - - VMOVQ ONLY64 ENC_NOSZ
|
|
VEX.F3.L0.0f7e RM XMM64 XMM64 - - VMOVQ ENC_NOSZ
|
|
VEX.66.0f7f MR XMM XMM - - VMOVDQA
|
|
VEX.F3.0f7f MR XMM XMM - - VMOVDQU
|
|
VEX.NP.L0.0fae/2m M GP32 - - - VLDMXCSR
|
|
VEX.NP.L0.0fae/3m M GP32 - - - VSTMXCSR
|
|
VEX.NP.0fc2 RVMI XMM XMM XMM IMM8 VCMPPS
|
|
VEX.66.0fc2 RVMI XMM XMM XMM IMM8 VCMPPD
|
|
# TODO: XMM is actually XMM128
|
|
VEX.F3.LIG.0fc2 RVMI XMM XMM XMM32 IMM8 VCMPSS
|
|
VEX.F2.LIG.0fc2 RVMI XMM XMM XMM64 IMM8 VCMPSD
|
|
VEX.66.WIG.L0.0fc4 RVMI XMM XMM GP16 IMM8 VPINSRW ENC_NOSZ
|
|
VEX.66.WIG.L0.0fc5/r RMI GP XMM IMM8 - VPEXTRW DEF64 ENC_NOSZ
|
|
VEX.NP.0fc6 RVMI XMM XMM XMM IMM8 VSHUFPS
|
|
VEX.66.0fc6 RVMI XMM XMM XMM IMM8 VSHUFPD
|
|
VEX.NP.0fd0 RVM XMM XMM XMM - VADDSUBPS
|
|
VEX.66.0fd0 RVM XMM XMM XMM - VADDSUBPD
|
|
VEX.66.0fd1 RVM XMM XMM XMM - VPSRLW
|
|
VEX.66.0fd2 RVM XMM XMM XMM - VPSRLD
|
|
VEX.66.0fd3 RVM XMM XMM XMM - VPSRLQ
|
|
VEX.66.0fd4 RVM XMM XMM XMM - VPADDQ
|
|
VEX.66.0fd5 RVM XMM XMM XMM - VPMULLW
|
|
VEX.66.L0.0fd6 MR XMM64 XMM64 - - VMOVQ
|
|
VEX.66.0fd7/r RM GP XMM - - VPMOVMSKB DEF64
|
|
VEX.66.0fd8 RVM XMM XMM XMM - VPSUBUSB
|
|
VEX.66.0fd9 RVM XMM XMM XMM - VPSUBUSW
|
|
VEX.66.0fda RVM XMM XMM XMM - VPMINUB
|
|
VEX.66.0fdb RVM XMM XMM XMM - VPAND
|
|
VEX.66.0fdc RVM XMM XMM XMM - VPADDUSB
|
|
VEX.66.0fdd RVM XMM XMM XMM - VPADDUSW
|
|
VEX.66.0fde RVM XMM XMM XMM - VPMAXUB
|
|
VEX.66.0fdf RVM XMM XMM XMM - VPANDN
|
|
VEX.66.0fe0 RVM XMM XMM XMM - VPAVGB
|
|
VEX.66.0fe1 RVM XMM XMM XMM - VPSRAW
|
|
VEX.66.0fe2 RVM XMM XMM XMM - VPSRAD
|
|
VEX.66.0fe3 RVM XMM XMM XMM - VPAVGW
|
|
VEX.66.0fe4 RVM XMM XMM XMM - VPMULHUW
|
|
VEX.66.0fe5 RVM XMM XMM XMM - VPMULHW
|
|
VEX.66.0fe6 RM XMM128 XMM - - VCVTTPD2DQ
|
|
VEX.F3.L0.0fe6 RM XMM XMM64 - - VCVTDQ2PD
|
|
VEX.F3.L1.0fe6 RM XMM XMM128 - - VCVTDQ2PD
|
|
VEX.F2.0fe6 RM XMM128 XMM - - VCVTPD2DQ
|
|
VEX.66.0fe7/m MR MEMV XMM - - VMOVNTDQ
|
|
VEX.66.0fe8 RVM XMM XMM XMM - VPSUBSB
|
|
VEX.66.0fe9 RVM XMM XMM XMM - VPSUBSW
|
|
VEX.66.0feb RVM XMM XMM XMM - VPOR
|
|
VEX.66.0fec RVM XMM XMM XMM - VPADDSB
|
|
VEX.66.0fea RVM XMM XMM XMM - VPMINSW
|
|
VEX.66.0fed RVM XMM XMM XMM - VPADDSW
|
|
VEX.66.0fee RVM XMM XMM XMM - VPMAXSW
|
|
VEX.66.0fef RVM XMM XMM XMM - VPXOR
|
|
VEX.F2.0ff0 RM XMM XMM - - VLDDQU
|
|
VEX.66.0ff1 RVM XMM XMM XMM - VPSLLW
|
|
VEX.66.0ff2 RVM XMM XMM XMM - VPSLLD
|
|
VEX.66.0ff3 RVM XMM XMM XMM - VPSLLQ
|
|
VEX.66.0ff4 RVM XMM XMM XMM - VPMULUDQ
|
|
VEX.66.0ff5 RVM XMM XMM XMM - VPMADDWD
|
|
VEX.66.0ff6 RVM XMM XMM XMM - VPSADBW
|
|
VEX.NP.L0.0ff7 RM XMM XMM - - VMASKMOVDQU
|
|
VEX.66.0ff8 RVM XMM XMM XMM - VPSUBB
|
|
VEX.66.0ff9 RVM XMM XMM XMM - VPSUBW
|
|
VEX.66.0ffa RVM XMM XMM XMM - VPSUBD
|
|
VEX.66.0ffb RVM XMM XMM XMM - VPSUBQ
|
|
VEX.66.0ffc RVM XMM XMM XMM - VPADDB
|
|
VEX.66.0ffd RVM XMM XMM XMM - VPADDW
|
|
VEX.66.0ffe RVM XMM XMM XMM - VPADDD
|
|
VEX.66.0f3800 RVM XMM XMM XMM - VPSHUFB
|
|
VEX.66.0f3801 RVM XMM XMM XMM - VPHADDW
|
|
VEX.66.0f3802 RVM XMM XMM XMM - VPHADDD
|
|
VEX.66.0f3803 RVM XMM XMM XMM - VPHADDSW
|
|
VEX.66.0f3804 RVM XMM XMM XMM - VPMADDUBSW
|
|
VEX.66.0f3805 RVM XMM XMM XMM - VPHSUBW
|
|
VEX.66.0f3806 RVM XMM XMM XMM - VPHSUBD
|
|
VEX.66.0f3807 RVM XMM XMM XMM - VPHSUBSW
|
|
VEX.66.0f3808 RVM XMM XMM XMM - VPSIGNB
|
|
VEX.66.0f3809 RVM XMM XMM XMM - VPSIGNW
|
|
VEX.66.0f380a RVM XMM XMM XMM - VPSIGND
|
|
VEX.66.0f380b RVM XMM XMM XMM - VPMULHRSW
|
|
VEX.66.W0.0f380c RVM XMM XMM XMM - VPERMILPS
|
|
VEX.66.W0.0f380d RVM XMM XMM XMM - VPERMILPD
|
|
VEX.66.W0.0f380e RM XMM XMM - - VTESTPS
|
|
VEX.66.W0.0f380f RM XMM XMM - - VTESTPD
|
|
VEX.66.W0.0f3813 RM XMM XMM - - VCVTPH2PS
|
|
VEX.66.W0.L1.0f3816 RVM XMM XMM XMM - VPERMPS
|
|
VEX.66.0f3817 RM XMM XMM - - VPTEST
|
|
VEX.66.W0.0f3818 RM XMM XMM32 - - VBROADCASTSS
|
|
VEX.66.W0.L1.0f3819 RM XMM XMM64 - - VBROADCASTSD
|
|
VEX.66.W0.L1.0f381a RM XMM XMM128 - - VBROADCASTF128
|
|
VEX.66.0f381c RM XMM XMM - - VPABSB
|
|
VEX.66.0f381d RM XMM XMM - - VPABSW
|
|
VEX.66.0f381e RM XMM XMM - - VPABSD
|
|
VEX.66.0f3820 RM XMM XMM - - VPMOVSXBW
|
|
VEX.66.0f3821 RM XMM XMM - - VPMOVSXBD
|
|
VEX.66.0f3822 RM XMM XMM - - VPMOVSXBQ
|
|
VEX.66.0f3823 RM XMM XMM - - VPMOVSXWD
|
|
VEX.66.0f3824 RM XMM XMM - - VPMOVSXWQ
|
|
VEX.66.0f3825 RM XMM XMM - - VPMOVSXDQ
|
|
VEX.66.0f3828 RVM XMM XMM XMM - VPMULDQ
|
|
VEX.66.0f3829 RVM XMM XMM XMM - VPCMPEQQ
|
|
VEX.66.0f382a/m RM XMM MEMV - - VMOVNTDQA
|
|
VEX.66.0f382b RVM XMM XMM XMM - VPACKUSDW
|
|
VEX.66.W0.0f382c RVM XMM XMM XMM - VMASKMOVPS
|
|
VEX.66.W0.0f382d RVM XMM XMM XMM - VMASKMOVPD
|
|
VEX.66.W0.0f382e MVR XMM XMM XMM - VMASKMOVPS
|
|
VEX.66.W0.0f382f MVR XMM XMM XMM - VMASKMOVPD
|
|
VEX.66.0f3830 RM XMM XMM - - VPMOVZXBW
|
|
VEX.66.0f3831 RM XMM XMM - - VPMOVZXBD
|
|
VEX.66.0f3832 RM XMM XMM - - VPMOVZXBQ
|
|
VEX.66.0f3833 RM XMM XMM - - VPMOVZXWD
|
|
VEX.66.0f3834 RM XMM XMM - - VPMOVZXWQ
|
|
VEX.66.0f3835 RM XMM XMM - - VPMOVZXDQ
|
|
VEX.66.W0.L1.0f3836 RVM XMM XMM XMM - VPERMD
|
|
VEX.66.0f3837 RVM XMM XMM XMM - VPCMPGTQ
|
|
VEX.66.0f3838 RVM XMM XMM XMM - VPMINSB
|
|
VEX.66.0f3839 RVM XMM XMM XMM - VPMINSD
|
|
VEX.66.0f383a RVM XMM XMM XMM - VPMINUW
|
|
VEX.66.0f383b RVM XMM XMM XMM - VPMINUD
|
|
VEX.66.0f383c RVM XMM XMM XMM - VPMAXSB
|
|
VEX.66.0f383d RVM XMM XMM XMM - VPMAXSD
|
|
VEX.66.0f383e RVM XMM XMM XMM - VPMAXUW
|
|
VEX.66.0f383f RVM XMM XMM XMM - VPMAXUD
|
|
VEX.66.0f3840 RVM XMM XMM XMM - VPMULLD
|
|
VEX.66.L0.0f3841 RM XMM XMM - - VPHMINPOSUW
|
|
VEX.66.W0.0f3845 RVM XMM XMM XMM - VPSRLVD
|
|
VEX.66.W1.0f3845 RVM XMM XMM XMM - VPSRLVQ
|
|
VEX.66.W0.0f3846 RVM XMM XMM XMM - VPSRAVD
|
|
VEX.66.W1.0f3846 RVM XMM XMM XMM - VPSRAVQ
|
|
VEX.66.W0.0f3847 RVM XMM XMM XMM - VPSLLVD
|
|
VEX.66.W1.0f3847 RVM XMM XMM XMM - VPSLLVQ
|
|
VEX.66.W0.0f3858 RM XMM XMM32 - - VPBROADCASTD
|
|
VEX.66.W0.0f3859 RM XMM XMM64 - - VPBROADCASTQ
|
|
VEX.66.W0.L1.0f385a/m RM XMM MEM128 - - VBROADCASTI128 ENC_NOSZ
|
|
VEX.66.W0.0f3878 RM XMM XMM8 - - VPBROADCASTB
|
|
VEX.66.W0.0f3879 RM XMM XMM16 - - VPBROADCASTW
|
|
VEX.66.W0.0f388c RVM XMM XMM XMM - VPMASKMOVD
|
|
VEX.66.W1.0f388c RVM XMM XMM XMM - VPMASKMOVQ
|
|
VEX.66.W0.0f388e MVR XMM XMM XMM - VPMASKMOVD
|
|
VEX.66.W1.0f388e MVR XMM XMM XMM - VPMASKMOVQ
|
|
VEX.66.W0.0f3890/m RMV XMM MEM32 XMM - VPGATHERDD VSIB
|
|
VEX.66.W1.0f3890/m RMV XMM MEM64 XMM - VPGATHERDQ VSIB
|
|
VEX.66.W0.L0.0f3891/m RMV XMM64 MEM32 XMM64 - VPGATHERQD VSIB
|
|
VEX.66.W0.L1.0f3891/m RMV XMM128 MEM32 XMM128 - VPGATHERQD VSIB
|
|
VEX.66.W1.0f3891/m RMV XMM MEM64 XMM - VPGATHERQQ VSIB
|
|
VEX.66.W0.0f3892/m RMV XMM MEM32 XMM - VGATHERDPS VSIB
|
|
VEX.66.W1.0f3892/m RMV XMM MEM64 XMM - VGATHERDPD VSIB
|
|
VEX.66.W0.L0.0f3893/m RMV XMM64 MEM32 XMM64 - VGATHERQPS VSIB
|
|
VEX.66.W0.L1.0f3893/m RMV XMM128 MEM32 XMM128 - VGATHERQPS VSIB
|
|
VEX.66.W1.0f3893/m RMV XMM MEM64 XMM - VGATHERQPD VSIB
|
|
VEX.66.W0.0f3896 RVM XMM XMM XMM - VFMADDSUB132PS
|
|
VEX.66.W1.0f3896 RVM XMM XMM XMM - VFMADDSUB132PD
|
|
VEX.66.W0.0f3897 RVM XMM XMM XMM - VFMSUBADD132PS
|
|
VEX.66.W1.0f3897 RVM XMM XMM XMM - VFMSUBADD132PD
|
|
VEX.66.W0.0f3898 RVM XMM XMM XMM - VFMADD132PS
|
|
VEX.66.W1.0f3898 RVM XMM XMM XMM - VFMADD132PD
|
|
VEX.66.W0.LIG.0f3899 RVM XMM128 XMM128 XMM32 - VFMADD132SS
|
|
VEX.66.W1.LIG.0f3899 RVM XMM128 XMM128 XMM64 - VFMADD132SD
|
|
VEX.66.W0.0f389a RVM XMM XMM XMM - VFMSUB132PS
|
|
VEX.66.W1.0f389a RVM XMM XMM XMM - VFMSUB132PD
|
|
VEX.66.W0.LIG.0f389b RVM XMM128 XMM128 XMM32 - VFMSUB132SS
|
|
VEX.66.W1.LIG.0f389b RVM XMM128 XMM128 XMM64 - VFMSUB132SD
|
|
VEX.66.W0.0f389c RVM XMM XMM XMM - VFNMADD132PS
|
|
VEX.66.W1.0f389c RVM XMM XMM XMM - VFNMADD132PD
|
|
VEX.66.W0.LIG.0f389d RVM XMM128 XMM128 XMM32 - VFNMADD132SS
|
|
VEX.66.W1.LIG.0f389d RVM XMM128 XMM128 XMM64 - VFNMADD132SD
|
|
VEX.66.W0.0f389e RVM XMM XMM XMM - VFNMSUB132PS
|
|
VEX.66.W1.0f389e RVM XMM XMM XMM - VFNMSUB132PD
|
|
VEX.66.W0.LIG.0f389f RVM XMM128 XMM128 XMM32 - VFNMSUB132SS
|
|
VEX.66.W1.LIG.0f389f RVM XMM128 XMM128 XMM64 - VFNMSUB132SD
|
|
VEX.66.W0.0f38a6 RVM XMM XMM XMM - VFMADDSUB213PS
|
|
VEX.66.W1.0f38a6 RVM XMM XMM XMM - VFMADDSUB213PD
|
|
VEX.66.W0.0f38a7 RVM XMM XMM XMM - VFMSUBADD213PS
|
|
VEX.66.W1.0f38a7 RVM XMM XMM XMM - VFMSUBADD213PD
|
|
VEX.66.W0.0f38a8 RVM XMM XMM XMM - VFMADD213PS
|
|
VEX.66.W1.0f38a8 RVM XMM XMM XMM - VFMADD213PD
|
|
VEX.66.W0.LIG.0f38a9 RVM XMM128 XMM128 XMM32 - VFMADD213SS
|
|
VEX.66.W1.LIG.0f38a9 RVM XMM128 XMM128 XMM64 - VFMADD213SD
|
|
VEX.66.W0.0f38aa RVM XMM XMM XMM - VFMSUB213PS
|
|
VEX.66.W1.0f38aa RVM XMM XMM XMM - VFMSUB213PD
|
|
VEX.66.W0.LIG.0f38ab RVM XMM128 XMM128 XMM32 - VFMSUB213SS
|
|
VEX.66.W1.LIG.0f38ab RVM XMM128 XMM128 XMM64 - VFMSUB213SD
|
|
VEX.66.W0.0f38ac RVM XMM XMM XMM - VFNMADD213PS
|
|
VEX.66.W1.0f38ac RVM XMM XMM XMM - VFNMADD213PD
|
|
VEX.66.W0.LIG.0f38ad RVM XMM128 XMM128 XMM32 - VFNMADD213SS
|
|
VEX.66.W1.LIG.0f38ad RVM XMM128 XMM128 XMM64 - VFNMADD213SD
|
|
VEX.66.W0.0f38ae RVM XMM XMM XMM - VFNMSUB213PS
|
|
VEX.66.W1.0f38ae RVM XMM XMM XMM - VFNMSUB213PD
|
|
VEX.66.W0.LIG.0f38af RVM XMM128 XMM128 XMM32 - VFNMSUB213SS
|
|
VEX.66.W1.LIG.0f38af RVM XMM128 XMM128 XMM64 - VFNMSUB213SD
|
|
VEX.66.W0.0f38b6 RVM XMM XMM XMM - VFMADDSUB231PS
|
|
VEX.66.W1.0f38b6 RVM XMM XMM XMM - VFMADDSUB231PD
|
|
VEX.66.W0.0f38b7 RVM XMM XMM XMM - VFMSUBADD231PS
|
|
VEX.66.W1.0f38b7 RVM XMM XMM XMM - VFMSUBADD231PD
|
|
VEX.66.W0.0f38b8 RVM XMM XMM XMM - VFMADD231PS
|
|
VEX.66.W1.0f38b8 RVM XMM XMM XMM - VFMADD231PD
|
|
VEX.66.W0.LIG.0f38b9 RVM XMM128 XMM128 XMM32 - VFMADD231SS
|
|
VEX.66.W1.LIG.0f38b9 RVM XMM128 XMM128 XMM64 - VFMADD231SD
|
|
VEX.66.W0.0f38ba RVM XMM XMM XMM - VFMSUB231PS
|
|
VEX.66.W1.0f38ba RVM XMM XMM XMM - VFMSUB231PD
|
|
VEX.66.W0.LIG.0f38bb RVM XMM128 XMM128 XMM32 - VFMSUB231SS
|
|
VEX.66.W1.LIG.0f38bb RVM XMM128 XMM128 XMM64 - VFMSUB231SD
|
|
VEX.66.W0.0f38bc RVM XMM XMM XMM - VFNMADD231PS
|
|
VEX.66.W1.0f38bc RVM XMM XMM XMM - VFNMADD231PD
|
|
VEX.66.W0.LIG.0f38bd RVM XMM128 XMM128 XMM32 - VFNMADD231SS
|
|
VEX.66.W1.LIG.0f38bd RVM XMM128 XMM128 XMM64 - VFNMADD231SD
|
|
VEX.66.W0.0f38be RVM XMM XMM XMM - VFNMSUB231PS
|
|
VEX.66.W1.0f38be RVM XMM XMM XMM - VFNMSUB231PD
|
|
VEX.66.W0.LIG.0f38bf RVM XMM128 XMM128 XMM32 - VFNMSUB231SS
|
|
VEX.66.W1.LIG.0f38bf RVM XMM128 XMM128 XMM64 - VFNMSUB231SD
|
|
VEX.66.W1.L1.0f3a00 VMI XMM XMM IMM8 - VPERMQ
|
|
VEX.66.W1.L1.0f3a01 VMI XMM XMM IMM8 - VPERMPD
|
|
VEX.66.W0.0f3a02 RVMI XMM XMM XMM IMM8 VPBLENDD
|
|
VEX.66.W0.0f3a04 RMI XMM XMM IMM8 - VPERMILPS
|
|
VEX.66.W0.0f3a05 RMI XMM XMM IMM8 - VPERMILPD
|
|
VEX.66.W0.L1.0f3a06 RVMI XMM XMM XMM IMM8 VPERM2F128
|
|
VEX.66.0f3a08 RVMI XMM XMM XMM IMM8 VROUNDPS
|
|
VEX.66.0f3a09 RVMI XMM XMM XMM IMM8 VROUNDPD
|
|
# TODO: XMM is actually XMM128
|
|
VEX.66.LIG.0f3a0a RVMI XMM XMM XMM32 IMM8 VROUNDSS
|
|
VEX.66.LIG.0f3a0b RVMI XMM XMM XMM64 IMM8 VROUNDSD
|
|
VEX.66.0f3a0c RVMI XMM XMM XMM IMM8 VBLENDPS
|
|
VEX.66.0f3a0d RVMI XMM XMM XMM IMM8 VBLENDPD
|
|
VEX.66.0f3a0e RVMI XMM XMM XMM IMM8 VPBLENDW
|
|
VEX.66.0f3a0f RVMI XMM XMM XMM IMM8 VPALIGNR
|
|
VEX.66.WIG.L0.0f3a14/m MRI GP8 XMM IMM8 - VPEXTRB ENC_NOSZ
|
|
VEX.66.WIG.L0.0f3a14/r MRI GP32 XMM IMM8 - VPEXTRB ENC_NOSZ
|
|
VEX.66.WIG.L0.0f3a15/m MRI GP16 XMM IMM8 - VPEXTRW ENC_NOSZ
|
|
VEX.66.WIG.L0.0f3a15/r MRI GP32 XMM IMM8 - VPEXTRW ENC_NOSZ
|
|
VEX.66.W0.L0.0f3a16 MRI GP XMM IMM8 - VPEXTRD ENC_NOSZ
|
|
VEX.66.W1.L0.0f3a16 MRI GP XMM IMM8 - VPEXTRD ONLY32 ENC_NOSZ
|
|
VEX.66.W1.L0.0f3a16 MRI GP XMM IMM8 - VPEXTRQ ONLY64 ENC_NOSZ
|
|
VEX.66.L0.0f3a17 MRI GP32 XMM IMM8 - VEXTRACTPS ENC_NOSZ
|
|
VEX.66.W0.L1.0f3a18 RVMI XMM XMM XMM128 IMM8 VINSERTF128 ENC_NOSZ
|
|
VEX.66.W0.L1.0f3a19 MRI XMM128 XMM IMM8 - VEXTRACTF128 ENC_NOSZ
|
|
VEX.66.W0.L1.0f3a1d MRI XMM XMM IMM8 - VCVTPS2PH
|
|
VEX.66.WIG.L0.0f3a20 RVMI XMM XMM GP8 IMM8 VPINSRB ENC_NOSZ
|
|
VEX.66.L0.0f3a21 RVMI XMM XMM XMM32 IMM8 VINSERTPS ENC_NOSZ
|
|
VEX.66.W0.L0.0f3a22 RVMI XMM XMM GP IMM8 VPINSRD ENC_NOSZ
|
|
VEX.66.W1.L0.0f3a22 RVMI XMM XMM GP IMM8 VPINSRD ONLY32 ENC_NOSZ
|
|
VEX.66.W1.L0.0f3a22 RVMI XMM XMM GP IMM8 VPINSRQ ONLY64 ENC_NOSZ
|
|
VEX.66.W0.L1.0f3a38 RVMI XMM XMM XMM128 IMM8 VINSERTI128 ENC_NOSZ
|
|
VEX.66.W0.L1.0f3a39 MRI XMM128 XMM IMM8 - VEXTRACTI128 ENC_NOSZ
|
|
VEX.66.0f3a40 RVMI XMM XMM XMM IMM8 VDPPS
|
|
VEX.66.0f3a41 RVMI XMM XMM XMM IMM8 VDPPD
|
|
VEX.66.0f3a42 RVMI XMM XMM XMM IMM8 VMPSADBW
|
|
VEX.66.0f3a44 RVMI XMM XMM XMM IMM8 VPCLMULQDQ
|
|
VEX.66.W0.L1.0f3a46 RVMI XMM XMM XMM IMM8 VPERM2I128
|
|
VEX.66.W0.0f3a4a RVMR XMM XMM XMM XMM VBLENDVPS
|
|
VEX.66.W0.0f3a4b RVMR XMM XMM XMM XMM VBLENDVPD
|
|
VEX.66.L0.0f3a60 RMI XMM XMM IMM8 - VPCMPESTRM ENC_NOSZ
|
|
VEX.66.L0.0f3a61 RMI XMM XMM IMM8 - VPCMPESTRI ENC_NOSZ
|
|
VEX.66.L0.0f3a62 RMI XMM XMM IMM8 - VPCMPISTRM ENC_NOSZ
|
|
VEX.66.L0.0f3a63 RMI XMM XMM IMM8 - VPCMPISTRI ENC_NOSZ
|
|
#
|
|
# BMI1
|
|
VEX.NP.L0.0f38f2 RVM GP GP GP - ANDN
|
|
VEX.NP.L0.0f38f3/1 VM GP GP - - BLSR
|
|
VEX.NP.L0.0f38f3/2 VM GP GP - - BLSMSK
|
|
VEX.NP.L0.0f38f3/3 VM GP GP - - BLSI
|
|
VEX.NP.L0.0f38f7 RMV GP GP GP - BEXTR
|
|
# BMI2
|
|
VEX.F2.L0.0f3af0 RMI GP GP IMM8 - RORX
|
|
VEX.NP.L0.0f38f5 RMV GP GP GP - BZHI
|
|
VEX.F2.L0.0f38f5 RVM GP GP GP - PDEP
|
|
VEX.F3.L0.0f38f5 RVM GP GP GP - PEXT
|
|
VEX.F2.L0.0f38f6 RVM GP GP GP - MULX
|
|
VEX.66.L0.0f38f7 RMV GP GP GP - SHLX
|
|
VEX.F2.L0.0f38f7 RMV GP GP GP - SHRX
|
|
VEX.F3.L0.0f38f7 RMV GP GP GP - SARX
|
|
# ADX
|
|
66.0f38f6 RM GP GP - - ADCX
|
|
F3.0f38f6 RM GP GP - - ADOX
|
|
#
|
|
# FPU
|
|
# Source for UNDOC opcodes: https://www.sandpile.org/x86/opc_fpu.htm
|
|
d8/0m M MEM32 - - - FADD ENC_SEPSZ
|
|
d8/1m M MEM32 - - - FMUL ENC_SEPSZ
|
|
d8/2m M MEM32 - - - FCOM ENC_SEPSZ
|
|
d8/3m M MEM32 - - - FCOMP ENC_SEPSZ
|
|
d8/4m M MEM32 - - - FSUB ENC_SEPSZ
|
|
d8/5m M MEM32 - - - FSUBR ENC_SEPSZ
|
|
d8/6m M MEM32 - - - FDIV ENC_SEPSZ
|
|
d8/7m M MEM32 - - - FDIVR ENC_SEPSZ
|
|
d8/0r AM FPU FPU - - FADD
|
|
d8/1r AM FPU FPU - - FMUL
|
|
d8/2r AM FPU FPU - - FCOM
|
|
d8/3r AM FPU FPU - - FCOMP
|
|
d8/4r AM FPU FPU - - FSUB
|
|
d8/5r AM FPU FPU - - FSUBR
|
|
d8/6r AM FPU FPU - - FDIV
|
|
d8/7r AM FPU FPU - - FDIVR
|
|
d9/0m M MEM32 - - - FLD ENC_SEPSZ
|
|
d9/2m M MEM32 - - - FST ENC_SEPSZ
|
|
d9/3m M MEM32 - - - FSTP ENC_SEPSZ
|
|
d9/4m M MEMZ - - - FLDENV
|
|
d9/5m M MEM16 - - - FLDCW
|
|
d9/6m M MEMZ - - - FSTENV
|
|
d9/7m M MEM16 - - - FSTCW
|
|
d9/0r M FPU - - - FLD
|
|
d9/1r M FPU - - - FXCH
|
|
d9d0 NP - - - - FNOP
|
|
d9/3r MA FPU FPU - - FSTPNCE UNDOC
|
|
d9e0 NP - - - - FCHS
|
|
d9e1 NP - - - - FABS
|
|
d9e4 NP - - - - FTST
|
|
d9e5 NP - - - - FXAM
|
|
d9e8 NP - - - - FLD1
|
|
d9e9 NP - - - - FLDL2T
|
|
d9ea NP - - - - FLDL2E
|
|
d9eb NP - - - - FLDPI
|
|
d9ec NP - - - - FLDLG2
|
|
d9ed NP - - - - FLDLN2
|
|
d9ee NP - - - - FLDZ
|
|
d9f0 NP - - - - F2XM1
|
|
d9f1 NP - - - - FYL2X
|
|
d9f2 NP - - - - FPTAN
|
|
d9f3 NP - - - - FPATAN
|
|
d9f4 NP - - - - FXTRACT
|
|
d9f5 NP - - - - FPREM1
|
|
d9f6 NP - - - - FDECSTP
|
|
d9f7 NP - - - - FINCSTP
|
|
d9f8 NP - - - - FPREM
|
|
d9f9 NP - - - - FYL2XP1
|
|
d9fa NP - - - - FSQRT
|
|
d9fb NP - - - - FSINCOS
|
|
d9fc NP - - - - FRNDINT
|
|
d9fd NP - - - - FSCALE
|
|
d9fe NP - - - - FSIN
|
|
d9ff NP - - - - FCOS
|
|
da/0m M MEM32 - - - FIADD ENC_SEPSZ
|
|
da/1m M MEM32 - - - FIMUL ENC_SEPSZ
|
|
da/2m M MEM32 - - - FICOM ENC_SEPSZ
|
|
da/3m M MEM32 - - - FICOMP ENC_SEPSZ
|
|
da/4m M MEM32 - - - FISUB ENC_SEPSZ
|
|
da/5m M MEM32 - - - FISUBR ENC_SEPSZ
|
|
da/6m M MEM32 - - - FIDIV ENC_SEPSZ
|
|
da/7m M MEM32 - - - FIDIVR ENC_SEPSZ
|
|
da/0r M FPU - - - FCMOVB
|
|
da/1r M FPU - - - FCMOVE
|
|
da/2r M FPU - - - FCMOVBE
|
|
da/3r M FPU - - - FCMOVU
|
|
dae9 NP - - - - FUCOMPP
|
|
db/0m M MEM32 - - - FILD ENC_SEPSZ
|
|
db/1m M MEM32 - - - FISTTP ENC_SEPSZ
|
|
db/2m M MEM32 - - - FIST ENC_SEPSZ
|
|
db/3m M MEM32 - - - FISTP ENC_SEPSZ
|
|
db/5m M FPU - - - FLD
|
|
db/7m M FPU - - - FSTP
|
|
db/0r M FPU - - - FCMOVNB
|
|
db/1r M FPU - - - FCMOVNE
|
|
db/2r M FPU - - - FCMOVNBE
|
|
db/3r M FPU - - - FCMOVNU
|
|
dbe0 NP - - - - FENI8087_NOP UNDOC
|
|
dbe1 NP - - - - FDISI8087_NOP UNDOC
|
|
dbe2 NP - - - - FCLEX
|
|
dbe3 NP - - - - FINIT
|
|
dbe4 NP - - - - FSETPM287_NOP UNDOC
|
|
dbe5 NP - - - - FSETPM287_NOP UNDOC
|
|
db/5r M FPU - - - FUCOMI
|
|
db/6r M FPU - - - FCOMI
|
|
dc/0m M MEM64 - - - FADD ENC_SEPSZ
|
|
dc/1m M MEM64 - - - FMUL ENC_SEPSZ
|
|
dc/2m M MEM64 - - - FCOM ENC_SEPSZ
|
|
dc/3m M MEM64 - - - FCOMP ENC_SEPSZ
|
|
dc/4m M MEM64 - - - FSUB ENC_SEPSZ
|
|
dc/5m M MEM64 - - - FSUBR ENC_SEPSZ
|
|
dc/6m M MEM64 - - - FDIV ENC_SEPSZ
|
|
dc/7m M MEM64 - - - FDIVR ENC_SEPSZ
|
|
dc/0r MA FPU FPU - - FADD
|
|
dc/1r MA FPU FPU - - FMUL
|
|
dc/2r MA FPU FPU - - FCOM UNDOC
|
|
dc/3r MA FPU FPU - - FCOMP UNDOC
|
|
dc/4r MA FPU FPU - - FSUBR
|
|
dc/5r MA FPU FPU - - FSUB
|
|
dc/6r MA FPU FPU - - FDIVR
|
|
dc/7r MA FPU FPU - - FDIV
|
|
dd/0m M MEM64 - - - FLD ENC_SEPSZ
|
|
dd/1m M MEM64 - - - FISTTP ENC_SEPSZ
|
|
dd/2m M MEM64 - - - FST ENC_SEPSZ
|
|
dd/3m M MEM64 - - - FSTP ENC_SEPSZ
|
|
dd/4m M MEMZ - - - FRSTOR
|
|
dd/6m M MEMZ - - - FSAVE
|
|
dd/7m M MEM16 - - - FSTSW
|
|
dd/0r M FPU - - - FFREE
|
|
dd/1r AM FPU FPU - - FXCH UNDOC
|
|
dd/2r M FPU - - - FST
|
|
dd/3r M FPU - - - FSTP
|
|
dd/4r M FPU - - - FUCOM
|
|
dd/5r M FPU - - - FUCOMP
|
|
de/0m M MEM16 - - - FIADD ENC_SEPSZ
|
|
de/1m M MEM16 - - - FIMUL ENC_SEPSZ
|
|
de/2m M MEM16 - - - FICOM ENC_SEPSZ
|
|
de/3m M MEM16 - - - FICOMP ENC_SEPSZ
|
|
de/4m M MEM16 - - - FISUB ENC_SEPSZ
|
|
de/5m M MEM16 - - - FISUBR ENC_SEPSZ
|
|
de/6m M MEM16 - - - FIDIV ENC_SEPSZ
|
|
de/7m M MEM16 - - - FIDIVR ENC_SEPSZ
|
|
de/0r MA FPU FPU - - FADDP
|
|
de/1r MA FPU FPU - - FMULP
|
|
de/2r AM FPU FPU - - FCOMP UNDOC
|
|
ded9 NP - - - - FCOMPP
|
|
de/4r MA FPU FPU - - FSUBRP
|
|
de/5r MA FPU FPU - - FSUBP
|
|
de/6r MA FPU FPU - - FDIVRP
|
|
de/7r MA FPU FPU - - FDIVP
|
|
df/0m M MEM16 - - - FILD ENC_SEPSZ
|
|
df/1m M MEM16 - - - FISTTP ENC_SEPSZ
|
|
df/2m M MEM16 - - - FIST ENC_SEPSZ
|
|
df/3m M MEM16 - - - FISTP ENC_SEPSZ
|
|
df/4m M FPU - - - FBLD
|
|
df/5m M MEM64 - - - FILD ENC_SEPSZ
|
|
df/6m M FPU - - - FBSTP
|
|
df/7m M MEM64 - - - FISTP ENC_SEPSZ
|
|
df/0r M FPU - - - FFREEP UNDOC
|
|
df/1r AM FPU FPU - - FXCH UNDOC
|
|
df/2r MA FPU FPU - - FSTP UNDOC
|
|
df/3r MA FPU FPU - - FSTP UNDOC
|
|
# FSTSW AX
|
|
dfe0 A GP16 - - - FSTSW
|
|
df/5r AM FPU FPU - - FUCOMIP
|
|
df/6r AM FPU FPU - - FCOMIP
|
|
#
|
|
# Control Flow Enforcement
|
|
F3.0f01/5m M GP64 - - - RSTORSSP
|
|
F3.0f01e8 NP - - - - SETSSBSY
|
|
F3.0f01ea NP - - - - SAVEPREVSSP
|
|
F3.0f1e/1r M GP - - - RDSSP
|
|
F3.0f1efa NP - - - - ENDBR64
|
|
F3.0f1efb NP - - - - ENDBR32
|
|
66.0f38f5/m MR MEM GP - - WRUSS
|
|
NP.0f38f6/m MR MEM GP - - WRSS
|
|
F3.0fae/6m M GP - - - CLRSSBSY
|
|
F3.0fae/5r M GP - - - INCSSP
|
|
#
|
|
# CLDEMOTE
|
|
NP.0f1c/0m M MEM8 - - - CLDEMOTE
|
|
|
|
# VIA PadLock
|
|
F3.0fa6c0 NP - - - - REP_MONTMUL ONLYVIA
|
|
F3.0fa6c8 NP - - - - REP_XSHA1 ONLYVIA
|
|
F3.0fa6d0 NP - - - - REP_XSHA256 ONLYVIA
|
|
NFx.0fa7c0 NP - - - - XSTORE ONLYVIA
|
|
F3.0fa7c0 NP - - - - REP_XSTORE ONLYVIA
|
|
F3.0fa7c8 NP - - - - REP_XCRYPTECB ONLYVIA
|
|
F3.0fa7d0 NP - - - - REP_XCRYPTCBC ONLYVIA
|
|
F3.0fa7d8 NP - - - - REP_XCRYPTCTR ONLYVIA
|
|
F3.0fa7e0 NP - - - - REP_XCRYPTCFB ONLYVIA
|
|
F3.0fa7e8 NP - - - - REP_XCRYPTOFB ONLYVIA
|
|
|
|
# VMX
|
|
66.0f3880/m RM GP MEMZ - - INVEPT DEF64
|
|
66.0f3881/m RM GP MEMZ - - INVVPID DEF64
|
|
NP.0f01c1 NP - - - - VMCALL
|
|
66.0fc7/6m M MEM64 - - - VMCLEAR
|
|
NP.0f01d4 NP - - - - VMFUNC
|
|
NP.0f01c2 NP - - - - VMLAUNCH
|
|
NP.0f01c3 NP - - - - VMRESUME
|
|
NP.0fc7/6m M MEM64 - - - VMPTRLD
|
|
NP.0fc7/7m M MEM64 - - - VMPTRST
|
|
NP.0f78 MR GP GP - - VMREAD DEF64
|
|
NP.0f79 MR GP GP - - VMWRITE DEF64
|
|
NP.0f01c4 NP - - - - VMXOFF
|
|
F3.0fc7/6m M MEM64 - - - VMXON
|
|
# SEAM/TDX
|
|
66.0f01cc NP - - - - TDCALL
|
|
66.0f01cd NP - - - - SEAMRET
|
|
66.0f01ce NP - - - - SEAMOPS
|
|
66.0f01cf NP - - - - SEAMCALL
|
|
|
|
# AMD RDPRU
|
|
0f01fd NP - - - - RDPRU ONLYAMD
|
|
|
|
# AMD SVM
|
|
0f01d8 NP - - - - VMRUN ONLYAMD
|
|
0f01d9 NP - - - - VMMCALL ONLYAMD
|
|
0f01da NP - - - - VMLOAD ONLYAMD
|
|
0f01db NP - - - - VMSAVE ONLYAMD
|
|
0f01dc NP - - - - STGI ONLYAMD
|
|
0f01dd NP - - - - CLGI ONLYAMD
|
|
0f01de NP - - - - SKINIT ONLYAMD
|
|
0f01df NP - - - - INVLPGA ONLYAMD
|
|
NP.0f01fa NP - - - - MONITORX ONLYAMD
|
|
F3.0f01fa NP - - - - MCOMMIT ONLYAMD
|
|
NP.0f01fb NP - - - - MWAITX ONLYAMD
|
|
NP.0f01fe NP - - - - INVLPGB ONLYAMD
|
|
NP.0f01ff NP - - - - TLBSYNC ONLYAMD
|
|
|
|
# AMD SNP
|
|
F3.0f01fe NP - - - - RMPADJUST ONLYAMD ONLY64
|
|
F2.0f01fe NP - - - - RMPUPDATE ONLYAMD ONLY64
|
|
F3.0f01ff NP - - - - PSMASH ONLYAMD ONLY64
|
|
F2.0f01ff NP - - - - PVALIDATE ONLYAMD ONLY64
|
|
|
|
# WAITPKG
|
|
66.0fae/6r M GP32 - - - TPAUSE
|
|
F3.0fae/6r M GP - - - UMONITOR
|
|
F2.0fae/6r M GP32 - - - UMWAIT
|
|
|
|
# PRWRITE
|
|
F3.0fae/4 M GP - - - PTWRITE
|
|
|
|
# GFNI
|
|
66.0f38cf RM XMM XMM - - GF2P8MULB
|
|
66.0f3ace RMI XMM XMM IMM8 - GF2P8AFFINEQB
|
|
66.0f3acf RMI XMM XMM IMM8 - GF2P8AFFINEINVQB
|
|
|
|
# ENQCMD
|
|
F2.0f38f8/m RM GP MEM512 - - ENQCMD
|
|
F3.0f38f8/m RM GP MEM512 - - ENQCMDS
|
|
|
|
# PCONFIG
|
|
NP.0f01c5 NP - - - - PCONFIG
|
|
|
|
# WBNOINVD
|
|
F3.0f09 NP - - - - WBNOINVD
|
|
|
|
NP.0f01ee NP - - - - RDPKRU
|
|
NP.0f01ef NP - - - - WRPKRU
|
|
F3.0fae/0r M GP - - - RDFSBASE ONLY64
|
|
F3.0fae/1r M GP - - - RDGSBASE ONLY64
|
|
F3.0fae/2r M GP - - - WRFSBASE ONLY64
|
|
F3.0fae/3r M GP - - - WRGSBASE ONLY64
|
|
NP.0fae/4m M MEMZ - - - XSAVE INSTR_WIDTH
|
|
NP.0fae/5m M MEMZ - - - XRSTOR INSTR_WIDTH
|
|
NP.0fae/6m M MEMZ - - - XSAVEOPT INSTR_WIDTH
|
|
66.0fae/6m M MEM8 - - - CLWB
|
|
NP.0fae/7m M MEM8 - - - CLFLUSH
|
|
66.0fae/7m M MEM8 - - - CLFLUSHOPT
|
|
NP.0fc7/3m M MEMZ - - - XRSTORS INSTR_WIDTH
|
|
NP.0fc7/4m M MEMZ - - - XSAVEC INSTR_WIDTH
|
|
NP.0fc7/5m M MEMZ - - - XSAVES INSTR_WIDTH
|
|
NFx.0fc7/6r M GP - - - RDRAND
|
|
NFx.0fc7/7r M GP - - - RDSEED
|
|
F3.0fc7/7r M GP - - - RDPID DEF64
|
|
66.0f3882/m RM GP MEM128 - - INVPCID DEF64
|
|
NP.0f38c8 RM XMM XMM - - SHA1NEXTE
|
|
NP.0f38c9 RM XMM XMM - - SHA1MSG1
|
|
NP.0f38ca RM XMM XMM - - SHA1MSG2
|
|
NP.0f38cb RMA XMM XMM XMM - SHA256RNDS2
|
|
NP.0f38cc RM XMM XMM - - SHA256MSG1
|
|
NP.0f38cd RM XMM XMM - - SHA256MSG2
|
|
NP.0f3acc RMI XMM XMM IMM8 - SHA1RNDS4
|
|
|
|
#NP.0f1a/m RM BND MEMZ - - BNDLDX
|
|
#66.0f1a RM BND BND - - BNDMOV DEF64
|
|
#F2.0f1a RM BND GP - - BNDCU DEF64
|
|
#F3.0f1a RM BND GP - - BNDCL DEF64
|
|
#NP.0f1b/m MR MEMZ BND - - BNDSTX
|
|
#66.0f1b MR BND BND - - BNDMOV DEF64
|
|
#F2.0f1b RM BND GP - - BNDCN DEF64
|
|
#F3.0f1b/m RM BND MEMZ - - BNDMK
|
|
|
|
# TSXLDTRK
|
|
F2.0f01e8 NP - - - - XSUSLDTRK
|
|
F2.0f01e9 NP - - - - XRESLDTRK
|
|
|
|
# AVX_VNNI
|
|
VEX.66.W0.0f3850 RVM XMM XMM XMM - VPDPBUSD
|
|
VEX.66.W0.0f3851 RVM XMM XMM XMM - VPDPBUSDS
|
|
VEX.66.W0.0f3852 RVM XMM XMM XMM - VPDPWSSD
|
|
VEX.66.W0.0f3853 RVM XMM XMM XMM - VPDPWSSDS
|
|
|
|
# HRESET
|
|
#F3.0f3af0c0 IA IMM8 GP32 - - HRESET
|
|
|
|
# SERIALIZE
|
|
NP.0f01e8 NP - - - - SERIALIZE
|
|
|
|
# UINTR
|
|
F3.0f01ec NP - - - - UIRET ONLY64
|
|
F3.0f01ed NP - - - - TESTUI ONLY64
|
|
F3.0f01ee NP - - - - CLUI ONLY64
|
|
F3.0f01ef NP - - - - STUI ONLY64
|
|
F3.0fc7/6r M GP - - - SENDUIPI DEF64 ONLY64
|
|
|
|
# AESKLE/KL (Key Locker)
|
|
F3.0f38d8/0m M MEMZ - - - AESENCWIDE128KL
|
|
F3.0f38d8/1m M MEMZ - - - AESDECWIDE128KL
|
|
F3.0f38d8/2m M MEMZ - - - AESENCWIDE256KL
|
|
F3.0f38d8/3m M MEMZ - - - AESDECWIDE256KL
|
|
F3.0f38dc/m RM XMM MEMZ - - AESENC128KL
|
|
F3.0f38dc/r RM XMM XMM - - LOADIWKEY
|
|
F3.0f38dd/m RM XMM MEMZ - - AESDEC128KL
|
|
F3.0f38de/m RM XMM MEMZ - - AESENC256KL
|
|
F3.0f38df/m RM XMM MEMZ - - AESDEC256KL
|
|
F3.0f38fa/r RM GP32 GP32 - - ENCODEKEY128
|
|
F3.0f38fb/r RM GP32 GP32 - - ENCODEKEY256
|