# x86 Opcode Maps
#
# This is (mostly) based on following documentations.
# - Intel(R) 64 and IA-32 Architectures Software Developer's Manual Vol.2 C
# (#326018 -047 US, June 2013 )
#
#<Opcode maps>
# Table: table-name
# Referrer: escaped-name
# AVXcode: avx-code
# opcode: mnemonic|GrpXXX [operand1[,operand2...]] [(extra1)[,(extra2)...] [| 2 nd-mnemonic ...]
# (or)
# opcode: escape # escaped-name
# EndTable
#
# mnemonics that begin with lowercase 'v' accept a VEX or EVEX prefix
# mnemonics that begin with lowercase 'k' accept a VEX prefix
#
#<group maps>
# GrpTable: GrpXXX
# reg: mnemonic [operand1[,operand2...]] [(extra1)[,(extra2)...] [| 2 nd-mnemonic ...]
# EndTable
#
# AVX Superscripts
# (ev): this opcode requires EVEX prefix.
# (es): this opcode requires EVEX prefix and is SCALABALE.
# (evo): this opcode is changed by EVEX prefix (EVEX opcode)
# (v): this opcode requires VEX prefix.
# (v1): this opcode only supports 128 bit VEX.
#
# Last Prefix Superscripts
# - (66 ): the last prefix is 0 x66
# - (F3): the last prefix is 0 xF3
# - (F2): the last prefix is 0 xF2
# - (!F3) : the last prefix is not 0 xF3 (including non-last prefix case)
# - (66 &F2): Both 0 x66 and 0 xF2 prefixes are specified.
#
# REX2 Prefix Superscripts
# - (!REX2): REX2 is not allowed
# - (REX2): REX2 variant e.g. JMPABS
Table: one byte opcode
Referrer:
AVXcode:
# 0 x00 - 0 x0f
00 : ADD Eb,Gb
01 : ADD Ev,Gv
02 : ADD Gb,Eb
03 : ADD Gv,Ev
04 : ADD AL,Ib
05 : ADD rAX,Iz
06 : PUSH ES (i64)
07 : POP ES (i64)
08 : OR Eb,Gb
09 : OR Ev,Gv
0 a: OR Gb,Eb
0 b: OR Gv,Ev
0 c: OR AL,Ib
0 d: OR rAX,Iz
0 e: PUSH CS (i64)
0 f: escape # 2 -byte escape
# 0 x10 - 0 x1f
10 : ADC Eb,Gb
11 : ADC Ev,Gv
12 : ADC Gb,Eb
13 : ADC Gv,Ev
14 : ADC AL,Ib
15 : ADC rAX,Iz
16 : PUSH SS (i64)
17 : POP SS (i64)
18 : SBB Eb,Gb
19 : SBB Ev,Gv
1 a: SBB Gb,Eb
1 b: SBB Gv,Ev
1 c: SBB AL,Ib
1 d: SBB rAX,Iz
1 e: PUSH DS (i64)
1 f: POP DS (i64)
# 0 x20 - 0 x2f
20 : AND Eb,Gb
21 : AND Ev,Gv
22 : AND Gb,Eb
23 : AND Gv,Ev
24 : AND AL,Ib
25 : AND rAx,Iz
26 : SEG=ES (Prefix)
27 : DAA (i64)
28 : SUB Eb,Gb
29 : SUB Ev,Gv
2 a: SUB Gb,Eb
2 b: SUB Gv,Ev
2 c: SUB AL,Ib
2 d: SUB rAX,Iz
2 e: SEG=CS (Prefix)
2 f: DAS (i64)
# 0 x30 - 0 x3f
30 : XOR Eb,Gb
31 : XOR Ev,Gv
32 : XOR Gb,Eb
33 : XOR Gv,Ev
34 : XOR AL,Ib
35 : XOR rAX,Iz
36 : SEG=SS (Prefix)
37 : AAA (i64)
38 : CMP Eb,Gb
39 : CMP Ev,Gv
3 a: CMP Gb,Eb
3 b: CMP Gv,Ev
3 c: CMP AL,Ib
3 d: CMP rAX,Iz
3 e: SEG=DS (Prefix)
3 f: AAS (i64)
# 0 x40 - 0 x4f
40 : INC eAX (i64) | REX (o64)
41 : INC eCX (i64) | REX.B (o64)
42 : INC eDX (i64) | REX.X (o64)
43 : INC eBX (i64) | REX.XB (o64)
44 : INC eSP (i64) | REX.R (o64)
45 : INC eBP (i64) | REX.RB (o64)
46 : INC eSI (i64) | REX.RX (o64)
47 : INC eDI (i64) | REX.RXB (o64)
48 : DEC eAX (i64) | REX.W (o64)
49 : DEC eCX (i64) | REX.WB (o64)
4 a: DEC eDX (i64) | REX.WX (o64)
4 b: DEC eBX (i64) | REX.WXB (o64)
4 c: DEC eSP (i64) | REX.WR (o64)
4 d: DEC eBP (i64) | REX.WRB (o64)
4 e: DEC eSI (i64) | REX.WRX (o64)
4 f: DEC eDI (i64) | REX.WRXB (o64)
# 0 x50 - 0 x5f
50 : PUSH rAX/r8 (d64)
51 : PUSH rCX/r9 (d64)
52 : PUSH rDX/r10 (d64)
53 : PUSH rBX/r11 (d64)
54 : PUSH rSP/r12 (d64)
55 : PUSH rBP/r13 (d64)
56 : PUSH rSI/r14 (d64)
57 : PUSH rDI/r15 (d64)
58 : POP rAX/r8 (d64)
59 : POP rCX/r9 (d64)
5 a: POP rDX/r10 (d64)
5 b: POP rBX/r11 (d64)
5 c: POP rSP/r12 (d64)
5 d: POP rBP/r13 (d64)
5 e: POP rSI/r14 (d64)
5 f: POP rDI/r15 (d64)
# 0 x60 - 0 x6f
60 : PUSHA/PUSHAD (i64)
61 : POPA/POPAD (i64)
62 : BOUND Gv,Ma (i64) | EVEX (Prefix),(o64)
63 : ARPL Ew,Gw (i64) | MOVSXD Gv,Ev (o64)
64 : SEG=FS (Prefix)
65 : SEG=GS (Prefix)
66 : Operand-Size (Prefix)
67 : Address-Size (Prefix)
68 : PUSH Iz
69 : IMUL Gv,Ev,Iz
6 a: PUSH Ib (d64)
6 b: IMUL Gv,Ev,Ib
6 c: INS/INSB Yb,DX
6 d: INS/INSW/INSD Yz,DX
6 e: OUTS/OUTSB DX,Xb
6 f: OUTS/OUTSW/OUTSD DX,Xz
# 0 x70 - 0 x7f
70 : JO Jb (!REX2)
71 : JNO Jb (!REX2)
72 : JB/JNAE/JC Jb (!REX2)
73 : JNB/JAE/JNC Jb (!REX2)
74 : JZ/JE Jb (!REX2)
75 : JNZ/JNE Jb (!REX2)
76 : JBE/JNA Jb (!REX2)
77 : JNBE/JA Jb (!REX2)
78 : JS Jb (!REX2)
79 : JNS Jb (!REX2)
7 a: JP/JPE Jb (!REX2)
7 b: JNP/JPO Jb (!REX2)
7 c: JL/JNGE Jb (!REX2)
7 d: JNL/JGE Jb (!REX2)
7 e: JLE/JNG Jb (!REX2)
7 f: JNLE/JG Jb (!REX2)
# 0 x80 - 0 x8f
80 : Grp1 Eb,Ib (1 A)
81 : Grp1 Ev,Iz (1 A)
82 : Grp1 Eb,Ib (1 A),(i64)
83 : Grp1 Ev,Ib (1 A)
84 : TEST Eb,Gb
85 : TEST Ev,Gv
86 : XCHG Eb,Gb
87 : XCHG Ev,Gv
88 : MOV Eb,Gb
89 : MOV Ev,Gv
8 a: MOV Gb,Eb
8 b: MOV Gv,Ev
8 c: MOV Ev,Sw
8 d: LEA Gv,M
8 e: MOV Sw,Ew
8 f: Grp1A (1 A) | POP Ev (d64)
# 0 x90 - 0 x9f
90 : NOP | PAUSE (F3) | XCHG r8,rAX
91 : XCHG rCX/r9,rAX
92 : XCHG rDX/r10,rAX
93 : XCHG rBX/r11,rAX
94 : XCHG rSP/r12,rAX
95 : XCHG rBP/r13,rAX
96 : XCHG rSI/r14,rAX
97 : XCHG rDI/r15,rAX
98 : CBW/CWDE/CDQE
99 : CWD/CDQ/CQO
9 a: CALLF Ap (i64)
9 b: FWAIT/WAIT
9 c: PUSHF/D/Q Fv (d64)
9 d: POPF/D/Q Fv (d64)
9 e: SAHF
9 f: LAHF
# 0 xa0 - 0 xaf
a0: MOV AL,Ob (!REX2)
a1: MOV rAX,Ov (!REX2) | JMPABS O (REX2),(o64)
a2: MOV Ob,AL (!REX2)
a3: MOV Ov,rAX (!REX2)
a4: MOVS/B Yb,Xb (!REX2)
a5: MOVS/W/D/Q Yv,Xv (!REX2)
a6: CMPS/B Xb,Yb (!REX2)
a7: CMPS/W/D Xv,Yv (!REX2)
a8: TEST AL,Ib (!REX2)
a9: TEST rAX,Iz (!REX2)
aa: STOS/B Yb,AL (!REX2)
ab: STOS/W/D/Q Yv,rAX (!REX2)
ac: LODS/B AL,Xb (!REX2)
ad: LODS/W/D/Q rAX,Xv (!REX2)
ae: SCAS/B AL,Yb (!REX2)
# Note: The May 2011 Intel manual shows Xv for the second parameter of the
# next instruction but Yv is correct
af: SCAS/W/D/Q rAX,Yv (!REX2)
# 0 xb0 - 0 xbf
b0: MOV AL/R8L,Ib
b1: MOV CL/R9L,Ib
b2: MOV DL/R10L,Ib
b3: MOV BL/R11L,Ib
b4: MOV AH/R12L,Ib
b5: MOV CH/R13L,Ib
b6: MOV DH/R14L,Ib
b7: MOV BH/R15L,Ib
b8: MOV rAX/r8,Iv
b9: MOV rCX/r9,Iv
ba: MOV rDX/r10,Iv
bb: MOV rBX/r11,Iv
bc: MOV rSP/r12,Iv
bd: MOV rBP/r13,Iv
be: MOV rSI/r14,Iv
bf: MOV rDI/r15,Iv
# 0 xc0 - 0 xcf
c0: Grp2 Eb,Ib (1 A)
c1: Grp2 Ev,Ib (1 A)
c2: RETN Iw (f64)
c3: RETN
c4: LES Gz,Mp (i64) | VEX+2 byte (Prefix),(o64)
c5: LDS Gz,Mp (i64) | VEX+1 byte (Prefix),(o64)
c6: Grp11A Eb,Ib (1 A)
c7: Grp11B Ev,Iz (1 A)
c8: ENTER Iw,Ib
c9: LEAVE (d64)
ca: RETF Iw
cb: RETF
cc: INT3
cd: INT Ib
ce: INTO (i64)
cf: IRET/D/Q
# 0 xd0 - 0 xdf
d0: Grp2 Eb,1 (1 A)
d1: Grp2 Ev,1 (1 A)
d2: Grp2 Eb,CL (1 A)
d3: Grp2 Ev,CL (1 A)
d4: AAM Ib (i64)
d5: AAD Ib (i64) | REX2 (Prefix),(o64)
d6:
d7: XLAT/XLATB
d8: ESC
d9: ESC
da: ESC
db: ESC
dc: ESC
dd: ESC
de: ESC
df: ESC
# 0 xe0 - 0 xef
# Note: "forced64" is Intel CPU behavior: they ignore 0 x66 prefix
# in 64 -bit mode. AMD CPUs accept 0 x66 prefix, it causes RIP truncation
# to 16 bits. In 32 -bit mode, 0 x66 is accepted by both Intel and AMD.
e0: LOOPNE/LOOPNZ Jb (f64),(!REX2)
e1: LOOPE/LOOPZ Jb (f64),(!REX2)
e2: LOOP Jb (f64),(!REX2)
e3: JrCXZ Jb (f64),(!REX2)
e4: IN AL,Ib (!REX2)
e5: IN eAX,Ib (!REX2)
e6: OUT Ib,AL (!REX2)
e7: OUT Ib,eAX (!REX2)
# With 0 x66 prefix in 64 -bit mode, for AMD CPUs immediate offset
# in "near" jumps and calls is 16 -bit. For CALL,
# push of return address is 16 -bit wide, RSP is decremented by 2
# but is not truncated to 16 bits, unlike RIP.
e8: CALL Jz (f64),(!REX2)
e9: JMP-near Jz (f64),(!REX2)
ea: JMP-far Ap (i64),(!REX2)
eb: JMP-short Jb (f64),(!REX2)
ec: IN AL,DX (!REX2)
ed: IN eAX,DX (!REX2)
ee: OUT DX,AL (!REX2)
ef: OUT DX,eAX (!REX2)
# 0 xf0 - 0 xff
f0: LOCK (Prefix)
f1:
f2: REPNE (Prefix) | XACQUIRE (Prefix)
f3: REP/REPE (Prefix) | XRELEASE (Prefix)
f4: HLT
f5: CMC
f6: Grp3_1 Eb (1 A)
f7: Grp3_2 Ev (1 A)
f8: CLC
f9: STC
fa: CLI
fb: STI
fc: CLD
fd: STD
fe: Grp4 (1 A)
ff: Grp5 (1 A)
EndTable
Table: 2 -byte opcode (0 x0f)
Referrer: 2 -byte escape
AVXcode: 1
# 0 x0f 0 x00-0 x0f
00 : Grp6 (1 A)
01 : Grp7 (1 A)
02 : LAR Gv,Ew
03 : LSL Gv,Ew
04 :
05 : SYSCALL (o64)
06 : CLTS
07 : SYSRET (o64)
08 : INVD
09 : WBINVD | WBNOINVD (F3)
0 a:
0 b: UD2 (1 B)
0 c:
# AMD's prefetch group. Intel supports prefetchw(/1 ) only.
0 d: GrpP
0 e: FEMMS
# 3 DNow! uses the last imm byte as opcode extension.
0 f: 3 DNow! Pq,Qq,Ib
# 0 x0f 0 x10-0 x1f
# NOTE: According to Intel SDM opcode map, vmovups and vmovupd has no operands
# but it actually has operands. And also, vmovss and vmovsd only accept 128 bit.
# MOVSS/MOVSD has too many forms(3 ) on SDM. This map just shows a typical form.
# Many AVX instructions lack v1 superscript, according to Intel AVX-Prgramming
# Reference A.1
10 : vmovups Vps,Wps | vmovupd Vpd,Wpd (66 ) | vmovss Vx,Hx,Wss (F3),(v1) | vmovsd Vx,Hx,Wsd (F2),(v1)
11 : vmovups Wps,Vps | vmovupd Wpd,Vpd (66 ) | vmovss Wss,Hx,Vss (F3),(v1) | vmovsd Wsd,Hx,Vsd (F2),(v1)
12 : vmovlps Vq,Hq,Mq (v1) | vmovhlps Vq,Hq,Uq (v1) | vmovlpd Vq,Hq,Mq (66 ),(v1) | vmovsldup Vx,Wx (F3) | vmovddup Vx,Wx (F2)
13 : vmovlps Mq,Vq (v1) | vmovlpd Mq,Vq (66 ),(v1)
14 : vunpcklps Vx,Hx,Wx | vunpcklpd Vx,Hx,Wx (66 )
15 : vunpckhps Vx,Hx,Wx | vunpckhpd Vx,Hx,Wx (66 )
16 : vmovhps Vdq,Hq,Mq (v1) | vmovlhps Vdq,Hq,Uq (v1) | vmovhpd Vdq,Hq,Mq (66 ),(v1) | vmovshdup Vx,Wx (F3)
17 : vmovhps Mq,Vq (v1) | vmovhpd Mq,Vq (66 ),(v1)
18 : Grp16 (1 A)
19 :
# Intel SDM opcode map does not list MPX instructions. For now using Gv for
# bnd registers and Ev for everything else is OK because the instruction
# decoder does not use the information except as an indication that there is
# a ModR/M byte.
1 a: BNDCL Gv,Ev (F3) | BNDCU Gv,Ev (F2) | BNDMOV Gv,Ev (66 ) | BNDLDX Gv,Ev
1 b: BNDCN Gv,Ev (F2) | BNDMOV Ev,Gv (66 ) | BNDMK Gv,Ev (F3) | BNDSTX Ev,Gv
1 c: Grp20 (1 A),(1 C)
1 d:
1 e: Grp21 (1 A)
1 f: NOP Ev
# 0 x0f 0 x20-0 x2f
20 : MOV Rd,Cd
21 : MOV Rd,Dd
22 : MOV Cd,Rd
23 : MOV Dd,Rd
24 :
25 :
26 :
27 :
28 : vmovaps Vps,Wps | vmovapd Vpd,Wpd (66 )
29 : vmovaps Wps,Vps | vmovapd Wpd,Vpd (66 )
2 a: cvtpi2ps Vps,Qpi | cvtpi2pd Vpd,Qpi (66 ) | vcvtsi2ss Vss,Hss,Ey (F3),(v1) | vcvtsi2sd Vsd,Hsd,Ey (F2),(v1)
2 b: vmovntps Mps,Vps | vmovntpd Mpd,Vpd (66 )
2 c: cvttps2pi Ppi,Wps | cvttpd2pi Ppi,Wpd (66 ) | vcvttss2si Gy,Wss (F3),(v1) | vcvttsd2si Gy,Wsd (F2),(v1)
2 d: cvtps2pi Ppi,Wps | cvtpd2pi Qpi,Wpd (66 ) | vcvtss2si Gy,Wss (F3),(v1) | vcvtsd2si Gy,Wsd (F2),(v1)
2 e: vucomiss Vss,Wss (v1) | vucomisd Vsd,Wsd (66 ),(v1)
2 f: vcomiss Vss,Wss (v1) | vcomisd Vsd,Wsd (66 ),(v1)
# 0 x0f 0 x30-0 x3f
30 : WRMSR (!REX2)
31 : RDTSC (!REX2)
32 : RDMSR (!REX2)
33 : RDPMC (!REX2)
34 : SYSENTER (!REX2)
35 : SYSEXIT (!REX2)
36 :
37 : GETSEC (!REX2)
38 : escape # 3 -byte escape 1
39 :
3 a: escape # 3 -byte escape 2
3 b:
3 c:
3 d:
3 e:
3 f:
# 0 x0f 0 x40-0 x4f
40 : CMOVO Gv,Ev
41 : CMOVNO Gv,Ev | kandw/q Vk,Hk,Uk | kandb/d Vk,Hk,Uk (66 )
42 : CMOVB/C/NAE Gv,Ev | kandnw/q Vk,Hk,Uk | kandnb/d Vk,Hk,Uk (66 )
43 : CMOVAE/NB/NC Gv,Ev
44 : CMOVE/Z Gv,Ev | knotw/q Vk,Uk | knotb/d Vk,Uk (66 )
45 : CMOVNE/NZ Gv,Ev | korw/q Vk,Hk,Uk | korb/d Vk,Hk,Uk (66 )
46 : CMOVBE/NA Gv,Ev | kxnorw/q Vk,Hk,Uk | kxnorb/d Vk,Hk,Uk (66 )
47 : CMOVA/NBE Gv,Ev | kxorw/q Vk,Hk,Uk | kxorb/d Vk,Hk,Uk (66 )
48 : CMOVS Gv,Ev
49 : CMOVNS Gv,Ev
4 a: CMOVP/PE Gv,Ev | kaddw/q Vk,Hk,Uk | kaddb/d Vk,Hk,Uk (66 )
4 b: CMOVNP/PO Gv,Ev | kunpckbw Vk,Hk,Uk (66 ) | kunpckwd/dq Vk,Hk,Uk
4 c: CMOVL/NGE Gv,Ev
4 d: CMOVNL/GE Gv,Ev
4 e: CMOVLE/NG Gv,Ev
4 f: CMOVNLE/G Gv,Ev
# 0 x0f 0 x50-0 x5f
50 : vmovmskps Gy,Ups | vmovmskpd Gy,Upd (66 )
51 : vsqrtps Vps,Wps | vsqrtpd Vpd,Wpd (66 ) | vsqrtss Vss,Hss,Wss (F3),(v1) | vsqrtsd Vsd,Hsd,Wsd (F2),(v1)
52 : vrsqrtps Vps,Wps | vrsqrtss Vss,Hss,Wss (F3),(v1)
53 : vrcpps Vps,Wps | vrcpss Vss,Hss,Wss (F3),(v1)
54 : vandps Vps,Hps,Wps | vandpd Vpd,Hpd,Wpd (66 )
55 : vandnps Vps,Hps,Wps | vandnpd Vpd,Hpd,Wpd (66 )
56 : vorps Vps,Hps,Wps | vorpd Vpd,Hpd,Wpd (66 )
57 : vxorps Vps,Hps,Wps | vxorpd Vpd,Hpd,Wpd (66 )
58 : vaddps Vps,Hps,Wps | vaddpd Vpd,Hpd,Wpd (66 ) | vaddss Vss,Hss,Wss (F3),(v1) | vaddsd Vsd,Hsd,Wsd (F2),(v1)
59 : vmulps Vps,Hps,Wps | vmulpd Vpd,Hpd,Wpd (66 ) | vmulss Vss,Hss,Wss (F3),(v1) | vmulsd Vsd,Hsd,Wsd (F2),(v1)
5 a: vcvtps2pd Vpd,Wps | vcvtpd2ps Vps,Wpd (66 ) | vcvtss2sd Vsd,Hx,Wss (F3),(v1) | vcvtsd2ss Vss,Hx,Wsd (F2),(v1)
5 b: vcvtdq2ps Vps,Wdq | vcvtqq2ps Vps,Wqq (evo) | vcvtps2dq Vdq,Wps (66 ) | vcvttps2dq Vdq,Wps (F3)
5 c: vsubps Vps,Hps,Wps | vsubpd Vpd,Hpd,Wpd (66 ) | vsubss Vss,Hss,Wss (F3),(v1) | vsubsd Vsd,Hsd,Wsd (F2),(v1)
5 d: vminps Vps,Hps,Wps | vminpd Vpd,Hpd,Wpd (66 ) | vminss Vss,Hss,Wss (F3),(v1) | vminsd Vsd,Hsd,Wsd (F2),(v1)
5 e: vdivps Vps,Hps,Wps | vdivpd Vpd,Hpd,Wpd (66 ) | vdivss Vss,Hss,Wss (F3),(v1) | vdivsd Vsd,Hsd,Wsd (F2),(v1)
5 f: vmaxps Vps,Hps,Wps | vmaxpd Vpd,Hpd,Wpd (66 ) | vmaxss Vss,Hss,Wss (F3),(v1) | vmaxsd Vsd,Hsd,Wsd (F2),(v1)
# 0 x0f 0 x60-0 x6f
60 : punpcklbw Pq,Qd | vpunpcklbw Vx,Hx,Wx (66 ),(v1)
61 : punpcklwd Pq,Qd | vpunpcklwd Vx,Hx,Wx (66 ),(v1)
62 : punpckldq Pq,Qd | vpunpckldq Vx,Hx,Wx (66 ),(v1)
63 : packsswb Pq,Qq | vpacksswb Vx,Hx,Wx (66 ),(v1)
64 : pcmpgtb Pq,Qq | vpcmpgtb Vx,Hx,Wx (66 ),(v1)
65 : pcmpgtw Pq,Qq | vpcmpgtw Vx,Hx,Wx (66 ),(v1)
66 : pcmpgtd Pq,Qq | vpcmpgtd Vx,Hx,Wx (66 ),(v1)
67 : packuswb Pq,Qq | vpackuswb Vx,Hx,Wx (66 ),(v1)
68 : punpckhbw Pq,Qd | vpunpckhbw Vx,Hx,Wx (66 ),(v1)
69 : punpckhwd Pq,Qd | vpunpckhwd Vx,Hx,Wx (66 ),(v1)
6 a: punpckhdq Pq,Qd | vpunpckhdq Vx,Hx,Wx (66 ),(v1)
6 b: packssdw Pq,Qd | vpackssdw Vx,Hx,Wx (66 ),(v1)
6 c: vpunpcklqdq Vx,Hx,Wx (66 ),(v1)
6 d: vpunpckhqdq Vx,Hx,Wx (66 ),(v1)
6 e: movd/q Pd,Ey | vmovd/q Vy,Ey (66 ),(v1)
6 f: movq Pq,Qq | vmovdqa Vx,Wx (66 ) | vmovdqa32/64 Vx,Wx (66 ),(evo) | vmovdqu Vx,Wx (F3) | vmovdqu32/64 Vx,Wx (F3),(evo) | vmovdqu8/16 Vx,Wx (F2),(ev)
# 0 x0f 0 x70-0 x7f
70 : pshufw Pq,Qq,Ib | vpshufd Vx,Wx,Ib (66 ),(v1) | vpshufhw Vx,Wx,Ib (F3),(v1) | vpshuflw Vx,Wx,Ib (F2),(v1)
71 : Grp12 (1 A)
72 : Grp13 (1 A)
73 : Grp14 (1 A)
74 : pcmpeqb Pq,Qq | vpcmpeqb Vx,Hx,Wx (66 ),(v1)
75 : pcmpeqw Pq,Qq | vpcmpeqw Vx,Hx,Wx (66 ),(v1)
76 : pcmpeqd Pq,Qq | vpcmpeqd Vx,Hx,Wx (66 ),(v1)
# Note: Remove (v), because vzeroall and vzeroupper becomes emms without VEX.
77 : emms | vzeroupper | vzeroall
78 : VMREAD Ey,Gy | vcvttps2udq/pd2udq Vx,Wpd (evo) | vcvttsd2usi Gv,Wx (F2),(ev) | vcvttss2usi Gv,Wx (F3),(ev) | vcvttps2uqq/pd2uqq Vx,Wx (66 ),(ev)
79 : VMWRITE Gy,Ey | vcvtps2udq/pd2udq Vx,Wpd (evo) | vcvtsd2usi Gv,Wx (F2),(ev) | vcvtss2usi Gv,Wx (F3),(ev) | vcvtps2uqq/pd2uqq Vx,Wx (66 ),(ev)
7 a: vcvtudq2pd/uqq2pd Vpd,Wx (F3),(ev) | vcvtudq2ps/uqq2ps Vpd,Wx (F2),(ev) | vcvttps2qq/pd2qq Vx,Wx (66 ),(ev)
7 b: vcvtusi2sd Vpd,Hpd,Ev (F2),(ev) | vcvtusi2ss Vps,Hps,Ev (F3),(ev) | vcvtps2qq/pd2qq Vx,Wx (66 ),(ev)
7 c: vhaddpd Vpd,Hpd,Wpd (66 ) | vhaddps Vps,Hps,Wps (F2)
7 d: vhsubpd Vpd,Hpd,Wpd (66 ) | vhsubps Vps,Hps,Wps (F2)
7 e: movd/q Ey,Pd | vmovd/q Ey,Vy (66 ),(v1) | vmovq Vq,Wq (F3),(v1)
7 f: movq Qq,Pq | vmovdqa Wx,Vx (66 ) | vmovdqa32/64 Wx,Vx (66 ),(evo) | vmovdqu Wx,Vx (F3) | vmovdqu32/64 Wx,Vx (F3),(evo) | vmovdqu8/16 Wx,Vx (F2),(ev)
# 0 x0f 0 x80-0 x8f
# Note: "forced64" is Intel CPU behavior (see comment about CALL insn).
80 : JO Jz (f64),(!REX2)
81 : JNO Jz (f64),(!REX2)
82 : JB/JC/JNAE Jz (f64),(!REX2)
83 : JAE/JNB/JNC Jz (f64),(!REX2)
84 : JE/JZ Jz (f64),(!REX2)
85 : JNE/JNZ Jz (f64),(!REX2)
86 : JBE/JNA Jz (f64),(!REX2)
87 : JA/JNBE Jz (f64),(!REX2)
88 : JS Jz (f64),(!REX2)
89 : JNS Jz (f64),(!REX2)
8 a: JP/JPE Jz (f64),(!REX2)
8 b: JNP/JPO Jz (f64),(!REX2)
8 c: JL/JNGE Jz (f64),(!REX2)
8 d: JNL/JGE Jz (f64),(!REX2)
8 e: JLE/JNG Jz (f64),(!REX2)
8 f: JNLE/JG Jz (f64),(!REX2)
# 0 x0f 0 x90-0 x9f
90 : SETO Eb | kmovw/q Vk,Wk | kmovb/d Vk,Wk (66 )
91 : SETNO Eb | kmovw/q Mv,Vk | kmovb/d Mv,Vk (66 )
92 : SETB/C/NAE Eb | kmovw Vk,Rv | kmovb Vk,Rv (66 ) | kmovq/d Vk,Rv (F2)
93 : SETAE/NB/NC Eb | kmovw Gv,Uk | kmovb Gv,Uk (66 ) | kmovq/d Gv,Uk (F2)
94 : SETE/Z Eb
95 : SETNE/NZ Eb
96 : SETBE/NA Eb
97 : SETA/NBE Eb
98 : SETS Eb | kortestw/q Vk,Uk | kortestb/d Vk,Uk (66 )
99 : SETNS Eb | ktestw/q Vk,Uk | ktestb/d Vk,Uk (66 )
9 a: SETP/PE Eb
9 b: SETNP/PO Eb
9 c: SETL/NGE Eb
9 d: SETNL/GE Eb
9 e: SETLE/NG Eb
9 f: SETNLE/G Eb
# 0 x0f 0 xa0-0 xaf
a0: PUSH FS (d64)
a1: POP FS (d64)
a2: CPUID
a3: BT Ev,Gv
a4: SHLD Ev,Gv,Ib
a5: SHLD Ev,Gv,CL
a6: GrpPDLK
a7: GrpRNG
a8: PUSH GS (d64)
a9: POP GS (d64)
aa: RSM
ab: BTS Ev,Gv
ac: SHRD Ev,Gv,Ib
ad: SHRD Ev,Gv,CL
ae: Grp15 (1 A),(1 C)
af: IMUL Gv,Ev
# 0 x0f 0 xb0-0 xbf
b0: CMPXCHG Eb,Gb
b1: CMPXCHG Ev,Gv
b2: LSS Gv,Mp
b3: BTR Ev,Gv
b4: LFS Gv,Mp
b5: LGS Gv,Mp
b6: MOVZX Gv,Eb
b7: MOVZX Gv,Ew
b8: JMPE (!F3) | POPCNT Gv,Ev (F3)
b9: Grp10 (1 A)
ba: Grp8 Ev,Ib (1 A)
bb: BTC Ev,Gv
bc: BSF Gv,Ev (!F3) | TZCNT Gv,Ev (F3)
bd: BSR Gv,Ev (!F3) | LZCNT Gv,Ev (F3)
be: MOVSX Gv,Eb
bf: MOVSX Gv,Ew
# 0 x0f 0 xc0-0 xcf
c0: XADD Eb,Gb
c1: XADD Ev,Gv
c2: vcmpps Vps,Hps,Wps,Ib | vcmppd Vpd,Hpd,Wpd,Ib (66 ) | vcmpss Vss,Hss,Wss,Ib (F3),(v1) | vcmpsd Vsd,Hsd,Wsd,Ib (F2),(v1)
c3: movnti My,Gy
c4: pinsrw Pq,Ry/Mw,Ib | vpinsrw Vdq,Hdq,Ry/Mw,Ib (66 ),(v1)
c5: pextrw Gd,Nq,Ib | vpextrw Gd,Udq,Ib (66 ),(v1)
c6: vshufps Vps,Hps,Wps,Ib | vshufpd Vpd,Hpd,Wpd,Ib (66 )
c7: Grp9 (1 A)
c8: BSWAP RAX/EAX/R8/R8D
c9: BSWAP RCX/ECX/R9/R9D
ca: BSWAP RDX/EDX/R10/R10D
cb: BSWAP RBX/EBX/R11/R11D
cc: BSWAP RSP/ESP/R12/R12D
cd: BSWAP RBP/EBP/R13/R13D
ce: BSWAP RSI/ESI/R14/R14D
cf: BSWAP RDI/EDI/R15/R15D
# 0 x0f 0 xd0-0 xdf
d0: vaddsubpd Vpd,Hpd,Wpd (66 ) | vaddsubps Vps,Hps,Wps (F2)
d1: psrlw Pq,Qq | vpsrlw Vx,Hx,Wx (66 ),(v1)
d2: psrld Pq,Qq | vpsrld Vx,Hx,Wx (66 ),(v1)
d3: psrlq Pq,Qq | vpsrlq Vx,Hx,Wx (66 ),(v1)
d4: paddq Pq,Qq | vpaddq Vx,Hx,Wx (66 ),(v1)
d5: pmullw Pq,Qq | vpmullw Vx,Hx,Wx (66 ),(v1)
d6: vmovq Wq,Vq (66 ),(v1) | movq2dq Vdq,Nq (F3) | movdq2q Pq,Uq (F2)
d7: pmovmskb Gd,Nq | vpmovmskb Gd,Ux (66 ),(v1)
d8: psubusb Pq,Qq | vpsubusb Vx,Hx,Wx (66 ),(v1)
d9: psubusw Pq,Qq | vpsubusw Vx,Hx,Wx (66 ),(v1)
da: pminub Pq,Qq | vpminub Vx,Hx,Wx (66 ),(v1)
db: pand Pq,Qq | vpand Vx,Hx,Wx (66 ),(v1) | vpandd/q Vx,Hx,Wx (66 ),(evo)
dc: paddusb Pq,Qq | vpaddusb Vx,Hx,Wx (66 ),(v1)
dd: paddusw Pq,Qq | vpaddusw Vx,Hx,Wx (66 ),(v1)
de: pmaxub Pq,Qq | vpmaxub Vx,Hx,Wx (66 ),(v1)
df: pandn Pq,Qq | vpandn Vx,Hx,Wx (66 ),(v1) | vpandnd/q Vx,Hx,Wx (66 ),(evo)
# 0 x0f 0 xe0-0 xef
e0: pavgb Pq,Qq | vpavgb Vx,Hx,Wx (66 ),(v1)
e1: psraw Pq,Qq | vpsraw Vx,Hx,Wx (66 ),(v1)
e2: psrad Pq,Qq | vpsrad Vx,Hx,Wx (66 ),(v1)
e3: pavgw Pq,Qq | vpavgw Vx,Hx,Wx (66 ),(v1)
e4: pmulhuw Pq,Qq | vpmulhuw Vx,Hx,Wx (66 ),(v1)
e5: pmulhw Pq,Qq | vpmulhw Vx,Hx,Wx (66 ),(v1)
e6: vcvttpd2dq Vx,Wpd (66 ) | vcvtdq2pd Vx,Wdq (F3) | vcvtdq2pd/qq2pd Vx,Wdq (F3),(evo) | vcvtpd2dq Vx,Wpd (F2)
e7: movntq Mq,Pq | vmovntdq Mx,Vx (66 )
e8: psubsb Pq,Qq | vpsubsb Vx,Hx,Wx (66 ),(v1)
e9: psubsw Pq,Qq | vpsubsw Vx,Hx,Wx (66 ),(v1)
ea: pminsw Pq,Qq | vpminsw Vx,Hx,Wx (66 ),(v1)
eb: por Pq,Qq | vpor Vx,Hx,Wx (66 ),(v1) | vpord/q Vx,Hx,Wx (66 ),(evo)
ec: paddsb Pq,Qq | vpaddsb Vx,Hx,Wx (66 ),(v1)
ed: paddsw Pq,Qq | vpaddsw Vx,Hx,Wx (66 ),(v1)
ee: pmaxsw Pq,Qq | vpmaxsw Vx,Hx,Wx (66 ),(v1)
ef: pxor Pq,Qq | vpxor Vx,Hx,Wx (66 ),(v1) | vpxord/q Vx,Hx,Wx (66 ),(evo)
# 0 x0f 0 xf0-0 xff
f0: vlddqu Vx,Mx (F2)
f1: psllw Pq,Qq | vpsllw Vx,Hx,Wx (66 ),(v1)
f2: pslld Pq,Qq | vpslld Vx,Hx,Wx (66 ),(v1)
f3: psllq Pq,Qq | vpsllq Vx,Hx,Wx (66 ),(v1)
f4: pmuludq Pq,Qq | vpmuludq Vx,Hx,Wx (66 ),(v1)
f5: pmaddwd Pq,Qq | vpmaddwd Vx,Hx,Wx (66 ),(v1)
f6: psadbw Pq,Qq | vpsadbw Vx,Hx,Wx (66 ),(v1)
f7: maskmovq Pq,Nq | vmaskmovdqu Vx,Ux (66 ),(v1)
f8: psubb Pq,Qq | vpsubb Vx,Hx,Wx (66 ),(v1)
f9: psubw Pq,Qq | vpsubw Vx,Hx,Wx (66 ),(v1)
fa: psubd Pq,Qq | vpsubd Vx,Hx,Wx (66 ),(v1)
fb: psubq Pq,Qq | vpsubq Vx,Hx,Wx (66 ),(v1)
fc: paddb Pq,Qq | vpaddb Vx,Hx,Wx (66 ),(v1)
fd: paddw Pq,Qq | vpaddw Vx,Hx,Wx (66 ),(v1)
fe: paddd Pq,Qq | vpaddd Vx,Hx,Wx (66 ),(v1)
ff: UD0
EndTable
Table: 3 -byte opcode 1 (0 x0f 0 x38)
Referrer: 3 -byte escape 1
AVXcode: 2
# 0 x0f 0 x38 0 x00-0 x0f
00 : pshufb Pq,Qq | vpshufb Vx,Hx,Wx (66 ),(v1)
01 : phaddw Pq,Qq | vphaddw Vx,Hx,Wx (66 ),(v1)
02 : phaddd Pq,Qq | vphaddd Vx,Hx,Wx (66 ),(v1)
03 : phaddsw Pq,Qq | vphaddsw Vx,Hx,Wx (66 ),(v1)
04 : pmaddubsw Pq,Qq | vpmaddubsw Vx,Hx,Wx (66 ),(v1)
05 : phsubw Pq,Qq | vphsubw Vx,Hx,Wx (66 ),(v1)
06 : phsubd Pq,Qq | vphsubd Vx,Hx,Wx (66 ),(v1)
07 : phsubsw Pq,Qq | vphsubsw Vx,Hx,Wx (66 ),(v1)
08 : psignb Pq,Qq | vpsignb Vx,Hx,Wx (66 ),(v1)
09 : psignw Pq,Qq | vpsignw Vx,Hx,Wx (66 ),(v1)
0 a: psignd Pq,Qq | vpsignd Vx,Hx,Wx (66 ),(v1)
0 b: pmulhrsw Pq,Qq | vpmulhrsw Vx,Hx,Wx (66 ),(v1)
0 c: vpermilps Vx,Hx,Wx (66 ),(v)
0 d: vpermilpd Vx,Hx,Wx (66 ),(v)
0 e: vtestps Vx,Wx (66 ),(v)
0 f: vtestpd Vx,Wx (66 ),(v)
# 0 x0f 0 x38 0 x10-0 x1f
10 : pblendvb Vdq,Wdq (66 ) | vpsrlvw Vx,Hx,Wx (66 ),(evo) | vpmovuswb Wx,Vx (F3),(ev)
11 : vpmovusdb Wx,Vd (F3),(ev) | vpsravw Vx,Hx,Wx (66 ),(ev)
12 : vpmovusqb Wx,Vq (F3),(ev) | vpsllvw Vx,Hx,Wx (66 ),(ev)
13 : vcvtph2ps Vx,Wx (66 ),(v) | vpmovusdw Wx,Vd (F3),(ev)
14 : blendvps Vdq,Wdq (66 ) | vpmovusqw Wx,Vq (F3),(ev) | vprorvd/q Vx,Hx,Wx (66 ),(evo)
15 : blendvpd Vdq,Wdq (66 ) | vpmovusqd Wx,Vq (F3),(ev) | vprolvd/q Vx,Hx,Wx (66 ),(evo)
16 : vpermps Vqq,Hqq,Wqq (66 ),(v) | vpermps/d Vqq,Hqq,Wqq (66 ),(evo)
17 : vptest Vx,Wx (66 )
18 : vbroadcastss Vx,Wd (66 ),(v)
19 : vbroadcastsd Vqq,Wq (66 ),(v) | vbroadcastf32x2 Vqq,Wq (66 ),(evo)
1 a: vbroadcastf128 Vqq,Mdq (66 ),(v) | vbroadcastf32x4/64 x2 Vqq,Wq (66 ),(evo)
1 b: vbroadcastf32x8/64 x4 Vqq,Mdq (66 ),(ev)
1 c: pabsb Pq,Qq | vpabsb Vx,Wx (66 ),(v1)
1 d: pabsw Pq,Qq | vpabsw Vx,Wx (66 ),(v1)
1 e: pabsd Pq,Qq | vpabsd Vx,Wx (66 ),(v1)
1 f: vpabsq Vx,Wx (66 ),(ev)
# 0 x0f 0 x38 0 x20-0 x2f
20 : vpmovsxbw Vx,Ux/Mq (66 ),(v1) | vpmovswb Wx,Vx (F3),(ev)
21 : vpmovsxbd Vx,Ux/Md (66 ),(v1) | vpmovsdb Wx,Vd (F3),(ev)
22 : vpmovsxbq Vx,Ux/Mw (66 ),(v1) | vpmovsqb Wx,Vq (F3),(ev)
23 : vpmovsxwd Vx,Ux/Mq (66 ),(v1) | vpmovsdw Wx,Vd (F3),(ev)
24 : vpmovsxwq Vx,Ux/Md (66 ),(v1) | vpmovsqw Wx,Vq (F3),(ev)
25 : vpmovsxdq Vx,Ux/Mq (66 ),(v1) | vpmovsqd Wx,Vq (F3),(ev)
26 : vptestmb/w Vk,Hx,Wx (66 ),(ev) | vptestnmb/w Vk,Hx,Wx (F3),(ev)
27 : vptestmd/q Vk,Hx,Wx (66 ),(ev) | vptestnmd/q Vk,Hx,Wx (F3),(ev)
28 : vpmuldq Vx,Hx,Wx (66 ),(v1) | vpmovm2b/w Vx,Uk (F3),(ev)
29 : vpcmpeqq Vx,Hx,Wx (66 ),(v1) | vpmovb2m/w2m Vk,Ux (F3),(ev)
2 a: vmovntdqa Vx,Mx (66 ),(v1) | vpbroadcastmb2q Vx,Uk (F3),(ev)
2 b: vpackusdw Vx,Hx,Wx (66 ),(v1)
2 c: vmaskmovps Vx,Hx,Mx (66 ),(v) | vscalefps/d Vx,Hx,Wx (66 ),(evo)
2 d: vmaskmovpd Vx,Hx,Mx (66 ),(v) | vscalefss/d Vx,Hx,Wx (66 ),(evo)
2 e: vmaskmovps Mx,Hx,Vx (66 ),(v)
2 f: vmaskmovpd Mx,Hx,Vx (66 ),(v)
# 0 x0f 0 x38 0 x30-0 x3f
30 : vpmovzxbw Vx,Ux/Mq (66 ),(v1) | vpmovwb Wx,Vx (F3),(ev)
31 : vpmovzxbd Vx,Ux/Md (66 ),(v1) | vpmovdb Wx,Vd (F3),(ev)
32 : vpmovzxbq Vx,Ux/Mw (66 ),(v1) | vpmovqb Wx,Vq (F3),(ev)
33 : vpmovzxwd Vx,Ux/Mq (66 ),(v1) | vpmovdw Wx,Vd (F3),(ev)
34 : vpmovzxwq Vx,Ux/Md (66 ),(v1) | vpmovqw Wx,Vq (F3),(ev)
35 : vpmovzxdq Vx,Ux/Mq (66 ),(v1) | vpmovqd Wx,Vq (F3),(ev)
36 : vpermd Vqq,Hqq,Wqq (66 ),(v) | vpermd/q Vqq,Hqq,Wqq (66 ),(evo)
37 : vpcmpgtq Vx,Hx,Wx (66 ),(v1)
38 : vpminsb Vx,Hx,Wx (66 ),(v1) | vpmovm2d/q Vx,Uk (F3),(ev)
39 : vpminsd Vx,Hx,Wx (66 ),(v1) | vpminsd/q Vx,Hx,Wx (66 ),(evo) | vpmovd2m/q2m Vk,Ux (F3),(ev)
3 a: vpminuw Vx,Hx,Wx (66 ),(v1) | vpbroadcastmw2d Vx,Uk (F3),(ev)
3 b: vpminud Vx,Hx,Wx (66 ),(v1) | vpminud/q Vx,Hx,Wx (66 ),(evo)
3 c: vpmaxsb Vx,Hx,Wx (66 ),(v1)
3 d: vpmaxsd Vx,Hx,Wx (66 ),(v1) | vpmaxsd/q Vx,Hx,Wx (66 ),(evo)
3 e: vpmaxuw Vx,Hx,Wx (66 ),(v1)
3 f: vpmaxud Vx,Hx,Wx (66 ),(v1) | vpmaxud/q Vx,Hx,Wx (66 ),(evo)
# 0 x0f 0 x38 0 x40-0 x8f
40 : vpmulld Vx,Hx,Wx (66 ),(v1) | vpmulld/q Vx,Hx,Wx (66 ),(evo)
41 : vphminposuw Vdq,Wdq (66 ),(v1)
42 : vgetexpps/d Vx,Wx (66 ),(ev)
43 : vgetexpss/d Vx,Hx,Wx (66 ),(ev)
44 : vplzcntd/q Vx,Wx (66 ),(ev)
45 : vpsrlvd/q Vx,Hx,Wx (66 ),(v)
46 : vpsravd Vx,Hx,Wx (66 ),(v) | vpsravd/q Vx,Hx,Wx (66 ),(evo)
47 : vpsllvd/q Vx,Hx,Wx (66 ),(v)
# Skip 0 x48
49 : TILERELEASE (v1),(000 ),(11 B) | LDTILECFG Mtc (v1)(000 ) | STTILECFG Mtc (66 ),(v1),(000 ) | TILEZERO Vt (F2),(v1),(11 B)
# Skip 0 x4a
4 b: TILELOADD Vt,Wsm (F2),(v1) | TILELOADDT1 Vt,Wsm (66 ),(v1) | TILESTORED Wsm,Vt (F3),(v)
4 c: vrcp14ps/d Vpd,Wpd (66 ),(ev)
4 d: vrcp14ss/d Vsd,Hpd,Wsd (66 ),(ev)
4 e: vrsqrt14ps/d Vpd,Wpd (66 ),(ev)
4 f: vrsqrt14ss/d Vsd,Hsd,Wsd (66 ),(ev)
50 : vpdpbusd Vx,Hx,Wx (66 ) | vpdpbssd Vx,Hx,Wx (F2),(v) | vpdpbsud Vx,Hx,Wx (F3),(v) | vpdpbuud Vx,Hx,Wx (v)
51 : vpdpbusds Vx,Hx,Wx (66 ) | vpdpbssds Vx,Hx,Wx (F2),(v) | vpdpbsuds Vx,Hx,Wx (F3),(v) | vpdpbuuds Vx,Hx,Wx (v)
52 : vdpbf16ps Vx,Hx,Wx (F3),(ev) | vpdpwssd Vx,Hx,Wx (66 ) | vp4dpwssd Vdqq,Hdqq,Wdq (F2),(ev)
53 : vpdpwssds Vx,Hx,Wx (66 ) | vp4dpwssds Vdqq,Hdqq,Wdq (F2),(ev)
54 : vpopcntb/w Vx,Wx (66 ),(ev)
55 : vpopcntd/q Vx,Wx (66 ),(ev)
58 : vpbroadcastd Vx,Wx (66 ),(v)
59 : vpbroadcastq Vx,Wx (66 ),(v) | vbroadcasti32x2 Vx,Wx (66 ),(evo)
5 a: vbroadcasti128 Vqq,Mdq (66 ),(v) | vbroadcasti32x4/64 x2 Vx,Wx (66 ),(evo)
5 b: vbroadcasti32x8/64 x4 Vqq,Mdq (66 ),(ev)
5 c: TDPBF16PS Vt,Wt,Ht (F3),(v1) | TDPFP16PS Vt,Wt,Ht (F2),(v1),(o64)
# Skip 0 x5d
5 e: TDPBSSD Vt,Wt,Ht (F2),(v1) | TDPBSUD Vt,Wt,Ht (F3),(v1) | TDPBUSD Vt,Wt,Ht (66 ),(v1) | TDPBUUD Vt,Wt,Ht (v1)
# Skip 0 x5f-0 x61
62 : vpexpandb/w Vx,Wx (66 ),(ev)
63 : vpcompressb/w Wx,Vx (66 ),(ev)
64 : vpblendmd/q Vx,Hx,Wx (66 ),(ev)
65 : vblendmps/d Vx,Hx,Wx (66 ),(ev)
66 : vpblendmb/w Vx,Hx,Wx (66 ),(ev)
68 : vp2intersectd/q Kx,Hx,Wx (F2),(ev)
# Skip 0 x69-0 x6b
6 c: TCMMIMFP16PS Vt,Wt,Ht (66 ),(v1),(o64) | TCMMRLFP16PS Vt,Wt,Ht (v1),(o64)
# Skip 0 x6d-0 x6f
70 : vpshldvw Vx,Hx,Wx (66 ),(ev)
71 : vpshldvd/q Vx,Hx,Wx (66 ),(ev)
72 : vcvtne2ps2bf16 Vx,Hx,Wx (F2),(ev) | vcvtneps2bf16 Vx,Wx (F3) | vpshrdvw Vx,Hx,Wx (66 ),(ev)
73 : vpshrdvd/q Vx,Hx,Wx (66 ),(ev)
75 : vpermi2b/w Vx,Hx,Wx (66 ),(ev)
76 : vpermi2d/q Vx,Hx,Wx (66 ),(ev)
77 : vpermi2ps/d Vx,Hx,Wx (66 ),(ev)
78 : vpbroadcastb Vx,Wx (66 ),(v)
79 : vpbroadcastw Vx,Wx (66 ),(v)
7 a: vpbroadcastb Vx,Rv (66 ),(ev)
7 b: vpbroadcastw Vx,Rv (66 ),(ev)
7 c: vpbroadcastd/q Vx,Rv (66 ),(ev)
7 d: vpermt2b/w Vx,Hx,Wx (66 ),(ev)
7 e: vpermt2d/q Vx,Hx,Wx (66 ),(ev)
7 f: vpermt2ps/d Vx,Hx,Wx (66 ),(ev)
80 : INVEPT Gy,Mdq (66 )
81 : INVVPID Gy,Mdq (66 )
82 : INVPCID Gy,Mdq (66 )
83 : vpmultishiftqb Vx,Hx,Wx (66 ),(ev)
88 : vexpandps/d Vpd,Wpd (66 ),(ev)
89 : vpexpandd/q Vx,Wx (66 ),(ev)
8 a: vcompressps/d Wx,Vx (66 ),(ev)
8 b: vpcompressd/q Wx,Vx (66 ),(ev)
8 c: vpmaskmovd/q Vx,Hx,Mx (66 ),(v)
8 d: vpermb/w Vx,Hx,Wx (66 ),(ev)
8 e: vpmaskmovd/q Mx,Vx,Hx (66 ),(v)
8 f: vpshufbitqmb Kx,Hx,Wx (66 ),(ev)
# 0 x0f 0 x38 0 x90-0 xbf (FMA)
90 : vgatherdd/q Vx,Hx,Wx (66 ),(v) | vpgatherdd/q Vx,Wx (66 ),(evo)
91 : vgatherqd/q Vx,Hx,Wx (66 ),(v) | vpgatherqd/q Vx,Wx (66 ),(evo)
92 : vgatherdps/d Vx,Hx,Wx (66 ),(v)
93 : vgatherqps/d Vx,Hx,Wx (66 ),(v)
94 :
95 :
96 : vfmaddsub132ps/d Vx,Hx,Wx (66 ),(v)
97 : vfmsubadd132ps/d Vx,Hx,Wx (66 ),(v)
98 : vfmadd132ps/d Vx,Hx,Wx (66 ),(v)
99 : vfmadd132ss/d Vx,Hx,Wx (66 ),(v),(v1)
9 a: vfmsub132ps/d Vx,Hx,Wx (66 ),(v) | v4fmaddps Vdqq,Hdqq,Wdq (F2),(ev)
9 b: vfmsub132ss/d Vx,Hx,Wx (66 ),(v),(v1) | v4fmaddss Vdq,Hdq,Wdq (F2),(ev)
9 c: vfnmadd132ps/d Vx,Hx,Wx (66 ),(v)
9 d: vfnmadd132ss/d Vx,Hx,Wx (66 ),(v),(v1)
9 e: vfnmsub132ps/d Vx,Hx,Wx (66 ),(v)
9 f: vfnmsub132ss/d Vx,Hx,Wx (66 ),(v),(v1)
a0: vpscatterdd/q Wx,Vx (66 ),(ev)
a1: vpscatterqd/q Wx,Vx (66 ),(ev)
a2: vscatterdps/d Wx,Vx (66 ),(ev)
a3: vscatterqps/d Wx,Vx (66 ),(ev)
a6: vfmaddsub213ps/d Vx,Hx,Wx (66 ),(v)
a7: vfmsubadd213ps/d Vx,Hx,Wx (66 ),(v)
a8: vfmadd213ps/d Vx,Hx,Wx (66 ),(v)
a9: vfmadd213ss/d Vx,Hx,Wx (66 ),(v),(v1)
aa: vfmsub213ps/d Vx,Hx,Wx (66 ),(v) | v4fnmaddps Vdqq,Hdqq,Wdq (F2),(ev)
ab: vfmsub213ss/d Vx,Hx,Wx (66 ),(v),(v1) | v4fnmaddss Vdq,Hdq,Wdq (F2),(ev)
ac: vfnmadd213ps/d Vx,Hx,Wx (66 ),(v)
ad: vfnmadd213ss/d Vx,Hx,Wx (66 ),(v),(v1)
ae: vfnmsub213ps/d Vx,Hx,Wx (66 ),(v)
af: vfnmsub213ss/d Vx,Hx,Wx (66 ),(v),(v1)
b0: vcvtneebf162ps Vx,Mx (F3),(!11 B),(v) | vcvtneeph2ps Vx,Mx (66 ),(!11 B),(v) | vcvtneobf162ps Vx,Mx (F2),(!11 B),(v) | vcvtneoph2ps Vx,Mx (!11 B),(v)
b1: vbcstnebf162ps Vx,Mw (F3),(!11 B),(v) | vbcstnesh2ps Vx,Mw (66 ),(!11 B),(v)
b4: vpmadd52luq Vx,Hx,Wx (66 )
b5: vpmadd52huq Vx,Hx,Wx (66 )
b6: vfmaddsub231ps/d Vx,Hx,Wx (66 ),(v)
b7: vfmsubadd231ps/d Vx,Hx,Wx (66 ),(v)
b8: vfmadd231ps/d Vx,Hx,Wx (66 ),(v)
b9: vfmadd231ss/d Vx,Hx,Wx (66 ),(v),(v1)
ba: vfmsub231ps/d Vx,Hx,Wx (66 ),(v)
bb: vfmsub231ss/d Vx,Hx,Wx (66 ),(v),(v1)
bc: vfnmadd231ps/d Vx,Hx,Wx (66 ),(v)
bd: vfnmadd231ss/d Vx,Hx,Wx (66 ),(v),(v1)
be: vfnmsub231ps/d Vx,Hx,Wx (66 ),(v)
bf: vfnmsub231ss/d Vx,Hx,Wx (66 ),(v),(v1)
# 0 x0f 0 x38 0 xc0-0 xff
c4: vpconflictd/q Vx,Wx (66 ),(ev)
c6: Grp18 (1 A)
c7: Grp19 (1 A)
c8: sha1nexte Vdq,Wdq | vexp2ps/d Vx,Wx (66 ),(ev)
c9: sha1msg1 Vdq,Wdq
ca: sha1msg2 Vdq,Wdq | vrcp28ps/d Vx,Wx (66 ),(ev)
cb: sha256rnds2 Vdq,Wdq | vrcp28ss/d Vx,Hx,Wx (66 ),(ev) | vsha512rnds2 Vqq,Hqq,Udq (F2),(11 B),(v)
cc: sha256msg1 Vdq,Wdq | vrsqrt28ps/d Vx,Wx (66 ),(ev) | vsha512msg1 Vqq,Udq (F2),(11 B),(v)
cd: sha256msg2 Vdq,Wdq | vrsqrt28ss/d Vx,Hx,Wx (66 ),(ev) | vsha512msg2 Vqq,Uqq (F2),(11 B),(v)
cf: vgf2p8mulb Vx,Wx (66 )
d2: vpdpwsud Vx,Hx,Wx (F3),(v) | vpdpwusd Vx,Hx,Wx (66 ),(v) | vpdpwuud Vx,Hx,Wx (v)
d3: vpdpwsuds Vx,Hx,Wx (F3),(v) | vpdpwusds Vx,Hx,Wx (66 ),(v) | vpdpwuuds Vx,Hx,Wx (v)
d8: AESENCWIDE128KL Qpi (F3),(000 ),(00 B) | AESENCWIDE256KL Qpi (F3),(000 ),(10 B) | AESDECWIDE128KL Qpi (F3),(000 ),(01 B) | AESDECWIDE256KL Qpi (F3),(000 ),(11 B)
da: vsm3msg1 Vdq,Hdq,Udq (v1) | vsm3msg2 Vdq,Hdq,Udq (66 ),(v1) | vsm4key4 Vx,Hx,Wx (F3),(v) | vsm4rnds4 Vx,Hx,Wx (F2),(v)
db: VAESIMC Vdq,Wdq (66 ),(v1)
dc: vaesenc Vx,Hx,Wx (66 ) | LOADIWKEY Vx,Hx (F3) | AESENC128KL Vpd,Qpi (F3)
dd: vaesenclast Vx,Hx,Wx (66 ) | AESDEC128KL Vpd,Qpi (F3)
de: vaesdec Vx,Hx,Wx (66 ) | AESENC256KL Vpd,Qpi (F3)
df: vaesdeclast Vx,Hx,Wx (66 ) | AESDEC256KL Vpd,Qpi (F3)
e0: CMPOXADD My,Gy,By (66 ),(v1),(o64)
e1: CMPNOXADD My,Gy,By (66 ),(v1),(o64)
e2: CMPBXADD My,Gy,By (66 ),(v1),(o64)
e3: CMPNBXADD My,Gy,By (66 ),(v1),(o64)
e4: CMPZXADD My,Gy,By (66 ),(v1),(o64)
e5: CMPNZXADD My,Gy,By (66 ),(v1),(o64)
e6: CMPBEXADD My,Gy,By (66 ),(v1),(o64)
e7: CMPNBEXADD My,Gy,By (66 ),(v1),(o64)
e8: CMPSXADD My,Gy,By (66 ),(v1),(o64)
e9: CMPNSXADD My,Gy,By (66 ),(v1),(o64)
ea: CMPPXADD My,Gy,By (66 ),(v1),(o64)
eb: CMPNPXADD My,Gy,By (66 ),(v1),(o64)
ec: CMPLXADD My,Gy,By (66 ),(v1),(o64)
ed: CMPNLXADD My,Gy,By (66 ),(v1),(o64)
ee: CMPLEXADD My,Gy,By (66 ),(v1),(o64)
ef: CMPNLEXADD My,Gy,By (66 ),(v1),(o64)
f0: MOVBE Gy,My | MOVBE Gw,Mw (66 ) | CRC32 Gd,Eb (F2) | CRC32 Gd,Eb (66 &F2)
f1: MOVBE My,Gy | MOVBE Mw,Gw (66 ) | CRC32 Gd,Ey (F2) | CRC32 Gd,Ew (66 &F2)
f2: ANDN Gy,By,Ey (v)
f3: Grp17 (1 A)
f5: BZHI Gy,Ey,By (v) | PEXT Gy,By,Ey (F3),(v) | PDEP Gy,By,Ey (F2),(v) | WRUSSD/Q My,Gy (66 )
f6: ADCX Gy,Ey (66 ) | ADOX Gy,Ey (F3) | MULX By,Gy,rDX,Ey (F2),(v) | WRSSD/Q My,Gy
f7: BEXTR Gy,Ey,By (v) | SHLX Gy,Ey,By (66 ),(v) | SARX Gy,Ey,By (F3),(v) | SHRX Gy,Ey,By (F2),(v)
f8: MOVDIR64B Gv,Mdqq (66 ) | ENQCMD Gv,Mdqq (F2) | ENQCMDS Gv,Mdqq (F3) | URDMSR Rq,Gq (F2),(11 B) | UWRMSR Gq,Rq (F3),(11 B)
f9: MOVDIRI My,Gy
fa: ENCODEKEY128 Ew,Ew (F3)
fb: ENCODEKEY256 Ew,Ew (F3)
fc: AADD My,Gy | AAND My,Gy (66 ) | AOR My,Gy (F2) | AXOR My,Gy (F3)
EndTable
Table: 3 -byte opcode 2 (0 x0f 0 x3a)
Referrer: 3 -byte escape 2
AVXcode: 3
# 0 x0f 0 x3a 0 x00-0 xff
00 : vpermq Vqq,Wqq,Ib (66 ),(v)
01 : vpermpd Vqq,Wqq,Ib (66 ),(v)
02 : vpblendd Vx,Hx,Wx,Ib (66 ),(v)
03 : valignd/q Vx,Hx,Wx,Ib (66 ),(ev)
04 : vpermilps Vx,Wx,Ib (66 ),(v)
05 : vpermilpd Vx,Wx,Ib (66 ),(v)
06 : vperm2f128 Vqq,Hqq,Wqq,Ib (66 ),(v)
07 :
08 : vroundps Vx,Wx,Ib (66 ) | vrndscaleps Vx,Wx,Ib (66 ),(evo) | vrndscaleph Vx,Wx,Ib (evo)
09 : vroundpd Vx,Wx,Ib (66 ) | vrndscalepd Vx,Wx,Ib (66 ),(evo)
0 a: vroundss Vss,Wss,Ib (66 ),(v1) | vrndscaless Vx,Hx,Wx,Ib (66 ),(evo) | vrndscalesh Vx,Hx,Wx,Ib (evo)
0 b: vroundsd Vsd,Wsd,Ib (66 ),(v1) | vrndscalesd Vx,Hx,Wx,Ib (66 ),(evo)
0 c: vblendps Vx,Hx,Wx,Ib (66 )
0 d: vblendpd Vx,Hx,Wx,Ib (66 )
0 e: vpblendw Vx,Hx,Wx,Ib (66 ),(v1)
0 f: palignr Pq,Qq,Ib | vpalignr Vx,Hx,Wx,Ib (66 ),(v1)
14 : vpextrb Rd/Mb,Vdq,Ib (66 ),(v1)
15 : vpextrw Rd/Mw,Vdq,Ib (66 ),(v1)
16 : vpextrd/q Ey,Vdq,Ib (66 ),(v1)
17 : vextractps Ed,Vdq,Ib (66 ),(v1)
18 : vinsertf128 Vqq,Hqq,Wqq,Ib (66 ),(v) | vinsertf32x4/64 x2 Vqq,Hqq,Wqq,Ib (66 ),(evo)
19 : vextractf128 Wdq,Vqq,Ib (66 ),(v) | vextractf32x4/64 x2 Wdq,Vqq,Ib (66 ),(evo)
1 a: vinsertf32x8/64 x4 Vqq,Hqq,Wqq,Ib (66 ),(ev)
1 b: vextractf32x8/64 x4 Wdq,Vqq,Ib (66 ),(ev)
1 d: vcvtps2ph Wx,Vx,Ib (66 ),(v)
1 e: vpcmpud/q Vk,Hd,Wd,Ib (66 ),(ev)
1 f: vpcmpd/q Vk,Hd,Wd,Ib (66 ),(ev)
20 : vpinsrb Vdq,Hdq,Ry/Mb,Ib (66 ),(v1)
21 : vinsertps Vdq,Hdq,Udq/Md,Ib (66 ),(v1)
22 : vpinsrd/q Vdq,Hdq,Ey,Ib (66 ),(v1)
23 : vshuff32x4/64 x2 Vx,Hx,Wx,Ib (66 ),(ev)
25 : vpternlogd/q Vx,Hx,Wx,Ib (66 ),(ev)
26 : vgetmantps/d Vx,Wx,Ib (66 ),(ev) | vgetmantph Vx,Wx,Ib (ev)
27 : vgetmantss/d Vx,Hx,Wx,Ib (66 ),(ev) | vgetmantsh Vx,Hx,Wx,Ib (ev)
30 : kshiftrb/w Vk,Uk,Ib (66 ),(v)
31 : kshiftrd/q Vk,Uk,Ib (66 ),(v)
32 : kshiftlb/w Vk,Uk,Ib (66 ),(v)
33 : kshiftld/q Vk,Uk,Ib (66 ),(v)
38 : vinserti128 Vqq,Hqq,Wqq,Ib (66 ),(v) | vinserti32x4/64 x2 Vqq,Hqq,Wqq,Ib (66 ),(evo)
39 : vextracti128 Wdq,Vqq,Ib (66 ),(v) | vextracti32x4/64 x2 Wdq,Vqq,Ib (66 ),(evo)
3 a: vinserti32x8/64 x4 Vqq,Hqq,Wqq,Ib (66 ),(ev)
3 b: vextracti32x8/64 x4 Wdq,Vqq,Ib (66 ),(ev)
3 e: vpcmpub/w Vk,Hk,Wx,Ib (66 ),(ev)
3 f: vpcmpb/w Vk,Hk,Wx,Ib (66 ),(ev)
40 : vdpps Vx,Hx,Wx,Ib (66 )
41 : vdppd Vdq,Hdq,Wdq,Ib (66 ),(v1)
42 : vmpsadbw Vx,Hx,Wx,Ib (66 ),(v1) | vdbpsadbw Vx,Hx,Wx,Ib (66 ),(evo)
43 : vshufi32x4/64 x2 Vx,Hx,Wx,Ib (66 ),(ev)
44 : vpclmulqdq Vx,Hx,Wx,Ib (66 )
46 : vperm2i128 Vqq,Hqq,Wqq,Ib (66 ),(v)
4 a: vblendvps Vx,Hx,Wx,Lx (66 ),(v)
4 b: vblendvpd Vx,Hx,Wx,Lx (66 ),(v)
4 c: vpblendvb Vx,Hx,Wx,Lx (66 ),(v1)
50 : vrangeps/d Vx,Hx,Wx,Ib (66 ),(ev)
51 : vrangess/d Vx,Hx,Wx,Ib (66 ),(ev)
54 : vfixupimmps/d Vx,Hx,Wx,Ib (66 ),(ev)
55 : vfixupimmss/d Vx,Hx,Wx,Ib (66 ),(ev)
56 : vreduceps/d Vx,Wx,Ib (66 ),(ev) | vreduceph Vx,Wx,Ib (ev)
57 : vreducess/d Vx,Hx,Wx,Ib (66 ),(ev) | vreducesh Vx,Hx,Wx,Ib (ev)
60 : vpcmpestrm Vdq,Wdq,Ib (66 ),(v1)
61 : vpcmpestri Vdq,Wdq,Ib (66 ),(v1)
62 : vpcmpistrm Vdq,Wdq,Ib (66 ),(v1)
63 : vpcmpistri Vdq,Wdq,Ib (66 ),(v1)
66 : vfpclassps/d Vk,Wx,Ib (66 ),(ev) | vfpclassph Vx,Wx,Ib (ev)
67 : vfpclassss/d Vk,Wx,Ib (66 ),(ev) | vfpclasssh Vx,Wx,Ib (ev)
70 : vpshldw Vx,Hx,Wx,Ib (66 ),(ev)
71 : vpshldd/q Vx,Hx,Wx,Ib (66 ),(ev)
72 : vpshrdw Vx,Hx,Wx,Ib (66 ),(ev)
73 : vpshrdd/q Vx,Hx,Wx,Ib (66 ),(ev)
c2: vcmpph Vx,Hx,Wx,Ib (ev) | vcmpsh Vx,Hx,Wx,Ib (F3),(ev)
cc: sha1rnds4 Vdq,Wdq,Ib
ce: vgf2p8affineqb Vx,Wx,Ib (66 )
cf: vgf2p8affineinvqb Vx,Wx,Ib (66 )
de: vsm3rnds2 Vdq,Hdq,Wdq,Ib (66 ),(v1)
df: VAESKEYGEN Vdq,Wdq,Ib (66 ),(v1)
f0: RORX Gy,Ey,Ib (F2),(v) | HRESET Gv,Ib (F3),(000 ),(11 B)
EndTable
Table: EVEX map 4
Referrer:
AVXcode: 4
00 : ADD Eb,Gb (ev)
01 : ADD Ev,Gv (es) | ADD Ev,Gv (66 ),(es)
02 : ADD Gb,Eb (ev)
03 : ADD Gv,Ev (es) | ADD Gv,Ev (66 ),(es)
08 : OR Eb,Gb (ev)
09 : OR Ev,Gv (es) | OR Ev,Gv (66 ),(es)
0 a: OR Gb,Eb (ev)
0 b: OR Gv,Ev (es) | OR Gv,Ev (66 ),(es)
10 : ADC Eb,Gb (ev)
11 : ADC Ev,Gv (es) | ADC Ev,Gv (66 ),(es)
12 : ADC Gb,Eb (ev)
13 : ADC Gv,Ev (es) | ADC Gv,Ev (66 ),(es)
18 : SBB Eb,Gb (ev)
19 : SBB Ev,Gv (es) | SBB Ev,Gv (66 ),(es)
1 a: SBB Gb,Eb (ev)
1 b: SBB Gv,Ev (es) | SBB Gv,Ev (66 ),(es)
20 : AND Eb,Gb (ev)
21 : AND Ev,Gv (es) | AND Ev,Gv (66 ),(es)
22 : AND Gb,Eb (ev)
23 : AND Gv,Ev (es) | AND Gv,Ev (66 ),(es)
24 : SHLD Ev,Gv,Ib (es) | SHLD Ev,Gv,Ib (66 ),(es)
28 : SUB Eb,Gb (ev)
29 : SUB Ev,Gv (es) | SUB Ev,Gv (66 ),(es)
2 a: SUB Gb,Eb (ev)
2 b: SUB Gv,Ev (es) | SUB Gv,Ev (66 ),(es)
2 c: SHRD Ev,Gv,Ib (es) | SHRD Ev,Gv,Ib (66 ),(es)
30 : XOR Eb,Gb (ev)
31 : XOR Ev,Gv (es) | XOR Ev,Gv (66 ),(es)
32 : XOR Gb,Eb (ev)
33 : XOR Gv,Ev (es) | XOR Gv,Ev (66 ),(es)
# CCMPSCC instructions are: CCOMB, CCOMBE, CCOMF, CCOML, CCOMLE, CCOMNB, CCOMNBE, CCOMNL, CCOMNLE,
# CCOMNO, CCOMNS, CCOMNZ, CCOMO, CCOMS, CCOMT, CCOMZ
38 : CCMPSCC Eb,Gb (ev)
39 : CCMPSCC Ev,Gv (es) | CCMPSCC Ev,Gv (66 ),(es)
3 a: CCMPSCC Gv,Ev (ev)
3 b: CCMPSCC Gv,Ev (es) | CCMPSCC Gv,Ev (66 ),(es)
40 : CMOVO Gv,Ev (es) | CMOVO Gv,Ev (66 ),(es) | CFCMOVO Ev,Ev (es) | CFCMOVO Ev,Ev (66 ),(es) | SETO Eb (F2),(ev)
41 : CMOVNO Gv,Ev (es) | CMOVNO Gv,Ev (66 ),(es) | CFCMOVNO Ev,Ev (es) | CFCMOVNO Ev,Ev (66 ),(es) | SETNO Eb (F2),(ev)
42 : CMOVB Gv,Ev (es) | CMOVB Gv,Ev (66 ),(es) | CFCMOVB Ev,Ev (es) | CFCMOVB Ev,Ev (66 ),(es) | SETB Eb (F2),(ev)
43 : CMOVNB Gv,Ev (es) | CMOVNB Gv,Ev (66 ),(es) | CFCMOVNB Ev,Ev (es) | CFCMOVNB Ev,Ev (66 ),(es) | SETNB Eb (F2),(ev)
44 : CMOVZ Gv,Ev (es) | CMOVZ Gv,Ev (66 ),(es) | CFCMOVZ Ev,Ev (es) | CFCMOVZ Ev,Ev (66 ),(es) | SETZ Eb (F2),(ev)
45 : CMOVNZ Gv,Ev (es) | CMOVNZ Gv,Ev (66 ),(es) | CFCMOVNZ Ev,Ev (es) | CFCMOVNZ Ev,Ev (66 ),(es) | SETNZ Eb (F2),(ev)
46 : CMOVBE Gv,Ev (es) | CMOVBE Gv,Ev (66 ),(es) | CFCMOVBE Ev,Ev (es) | CFCMOVBE Ev,Ev (66 ),(es) | SETBE Eb (F2),(ev)
47 : CMOVNBE Gv,Ev (es) | CMOVNBE Gv,Ev (66 ),(es) | CFCMOVNBE Ev,Ev (es) | CFCMOVNBE Ev,Ev (66 ),(es) | SETNBE Eb (F2),(ev)
48 : CMOVS Gv,Ev (es) | CMOVS Gv,Ev (66 ),(es) | CFCMOVS Ev,Ev (es) | CFCMOVS Ev,Ev (66 ),(es) | SETS Eb (F2),(ev)
49 : CMOVNS Gv,Ev (es) | CMOVNS Gv,Ev (66 ),(es) | CFCMOVNS Ev,Ev (es) | CFCMOVNS Ev,Ev (66 ),(es) | SETNS Eb (F2),(ev)
4 a: CMOVP Gv,Ev (es) | CMOVP Gv,Ev (66 ),(es) | CFCMOVP Ev,Ev (es) | CFCMOVP Ev,Ev (66 ),(es) | SETP Eb (F2),(ev)
4 b: CMOVNP Gv,Ev (es) | CMOVNP Gv,Ev (66 ),(es) | CFCMOVNP Ev,Ev (es) | CFCMOVNP Ev,Ev (66 ),(es) | SETNP Eb (F2),(ev)
4 c: CMOVL Gv,Ev (es) | CMOVL Gv,Ev (66 ),(es) | CFCMOVL Ev,Ev (es) | CFCMOVL Ev,Ev (66 ),(es) | SETL Eb (F2),(ev)
4 d: CMOVNL Gv,Ev (es) | CMOVNL Gv,Ev (66 ),(es) | CFCMOVNL Ev,Ev (es) | CFCMOVNL Ev,Ev (66 ),(es) | SETNL Eb (F2),(ev)
4 e: CMOVLE Gv,Ev (es) | CMOVLE Gv,Ev (66 ),(es) | CFCMOVLE Ev,Ev (es) | CFCMOVLE Ev,Ev (66 ),(es) | SETLE Eb (F2),(ev)
4 f: CMOVNLE Gv,Ev (es) | CMOVNLE Gv,Ev (66 ),(es) | CFCMOVNLE Ev,Ev (es) | CFCMOVNLE Ev,Ev (66 ),(es) | SETNLE Eb (F2),(ev)
60 : MOVBE Gv,Ev (es) | MOVBE Gv,Ev (66 ),(es)
61 : MOVBE Ev,Gv (es) | MOVBE Ev,Gv (66 ),(es)
65 : WRUSSD Md,Gd (66 ),(ev) | WRUSSQ Mq,Gq (66 ),(ev)
66 : ADCX Gy,Ey (66 ),(ev) | ADOX Gy,Ey (F3),(ev) | WRSSD Md,Gd (ev) | WRSSQ Mq,Gq (66 ),(ev)
69 : IMUL Gv,Ev,Iz (es) | IMUL Gv,Ev,Iz (66 ),(es)
6 b: IMUL Gv,Ev,Ib (es) | IMUL Gv,Ev,Ib (66 ),(es)
80 : Grp1 Eb,Ib (1 A),(ev)
81 : Grp1 Ev,Iz (1 A),(es)
83 : Grp1 Ev,Ib (1 A),(es)
# CTESTSCC instructions are: CTESTB, CTESTBE, CTESTF, CTESTL, CTESTLE, CTESTNB, CTESTNBE, CTESTNL,
# CTESTNLE, CTESTNO, CTESTNS, CTESTNZ, CTESTO, CTESTS, CTESTT, CTESTZ
84 : CTESTSCC Eb,Gb (ev)
85 : CTESTSCC Ev,Gv (es) | CTESTSCC Ev,Gv (66 ),(es)
88 : POPCNT Gv,Ev (es) | POPCNT Gv,Ev (66 ),(es)
8 f: POP2 Bq,Rq (000 ),(11 B),(ev)
a5: SHLD Ev,Gv,CL (es) | SHLD Ev,Gv,CL (66 ),(es)
ad: SHRD Ev,Gv,CL (es) | SHRD Ev,Gv,CL (66 ),(es)
af: IMUL Gv,Ev (es) | IMUL Gv,Ev (66 ),(es)
c0: Grp2 Eb,Ib (1 A),(ev)
c1: Grp2 Ev,Ib (1 A),(es)
d0: Grp2 Eb,1 (1 A),(ev)
d1: Grp2 Ev,1 (1 A),(es)
d2: Grp2 Eb,CL (1 A),(ev)
d3: Grp2 Ev,CL (1 A),(es)
f0: CRC32 Gy,Eb (es) | INVEPT Gq,Mdq (F3),(ev)
f1: CRC32 Gy,Ey (es) | CRC32 Gy,Ey (66 ),(es) | INVVPID Gy,Mdq (F3),(ev)
f2: INVPCID Gy,Mdq (F3),(ev)
f4: TZCNT Gv,Ev (es) | TZCNT Gv,Ev (66 ),(es)
f5: LZCNT Gv,Ev (es) | LZCNT Gv,Ev (66 ),(es)
f6: Grp3_1 Eb (1 A),(ev)
f7: Grp3_2 Ev (1 A),(es)
f8: MOVDIR64B Gv,Mdqq (66 ),(ev) | ENQCMD Gv,Mdqq (F2),(ev) | ENQCMDS Gv,Mdqq (F3),(ev) | URDMSR Rq,Gq (F2),(11 B),(ev) | UWRMSR Gq,Rq (F3),(11 B),(ev)
f9: MOVDIRI My,Gy (ev)
fe: Grp4 (1 A),(ev)
ff: Grp5 (1 A),(es) | PUSH2 Bq,Rq (110 ),(11 B),(ev)
EndTable
Table: EVEX map 5
Referrer:
AVXcode: 5
10 : vmovsh Vx,Hx,Wx (F3),(ev) | vmovsh Vx,Wx (F3),(ev)
11 : vmovsh Wx,Hx,Vx (F3),(ev) | vmovsh Wx,Vx (F3),(ev)
1 d: vcvtps2phx Vx,Wx (66 ),(ev) | vcvtss2sh Vx,Hx,Wx (ev)
2 a: vcvtsi2sh Vx,Hx,Wx (F3),(ev)
2 c: vcvttsh2si Vx,Wx (F3),(ev)
2 d: vcvtsh2si Vx,Wx (F3),(ev)
2 e: vucomish Vx,Wx (ev)
2 f: vcomish Vx,Wx (ev)
51 : vsqrtph Vx,Wx (ev) | vsqrtsh Vx,Hx,Wx (F3),(ev)
58 : vaddph Vx,Hx,Wx (ev) | vaddsh Vx,Hx,Wx (F3),(ev)
59 : vmulph Vx,Hx,Wx (ev) | vmulsh Vx,Hx,Wx (F3),(ev)
5 a: vcvtpd2ph Vx,Wx (66 ),(ev) | vcvtph2pd Vx,Wx (ev) | vcvtsd2sh Vx,Hx,Wx (F2),(ev) | vcvtsh2sd Vx,Hx,Wx (F3),(ev)
5 b: vcvtdq2ph Vx,Wx (ev) | vcvtph2dq Vx,Wx (66 ),(ev) | vcvtqq2ph Vx,Wx (ev) | vcvttph2dq Vx,Wx (F3),(ev)
5 c: vsubph Vx,Hx,Wx (ev) | vsubsh Vx,Hx,Wx (F3),(ev)
5 d: vminph Vx,Hx,Wx (ev) | vminsh Vx,Hx,Wx (F3),(ev)
5 e: vdivph Vx,Hx,Wx (ev) | vdivsh Vx,Hx,Wx (F3),(ev)
5 f: vmaxph Vx,Hx,Wx (ev) | vmaxsh Vx,Hx,Wx (F3),(ev)
6 e: vmovw Vx,Wx (66 ),(ev)
78 : vcvttph2udq Vx,Wx (ev) | vcvttph2uqq Vx,Wx (66 ),(ev) | vcvttsh2usi Vx,Wx (F3),(ev)
79 : vcvtph2udq Vx,Wx (ev) | vcvtph2uqq Vx,Wx (66 ),(ev) | vcvtsh2usi Vx,Wx (F3),(ev)
7 a: vcvttph2qq Vx,Wx (66 ),(ev) | vcvtudq2ph Vx,Wx (F2),(ev) | vcvtuqq2ph Vx,Wx (F2),(ev)
7 b: vcvtph2qq Vx,Wx (66 ),(ev) | vcvtusi2sh Vx,Hx,Wx (F3),(ev)
7 c: vcvttph2uw Vx,Wx (ev) | vcvttph2w Vx,Wx (66 ),(ev)
7 d: vcvtph2uw Vx,Wx (ev) | vcvtph2w Vx,Wx (66 ),(ev) | vcvtuw2ph Vx,Wx (F2),(ev) | vcvtw2ph Vx,Wx (F3),(ev)
7 e: vmovw Wx,Vx (66 ),(ev)
EndTable
Table: EVEX map 6
Referrer:
AVXcode: 6
13 : vcvtph2psx Vx,Wx (66 ),(ev) | vcvtsh2ss Vx,Hx,Wx (ev)
2 c: vscalefph Vx,Hx,Wx (66 ),(ev)
2 d: vscalefsh Vx,Hx,Wx (66 ),(ev)
42 : vgetexpph Vx,Wx (66 ),(ev)
43 : vgetexpsh Vx,Hx,Wx (66 ),(ev)
4 c: vrcpph Vx,Wx (66 ),(ev)
4 d: vrcpsh Vx,Hx,Wx (66 ),(ev)
4 e: vrsqrtph Vx,Wx (66 ),(ev)
4 f: vrsqrtsh Vx,Hx,Wx (66 ),(ev)
56 : vfcmaddcph Vx,Hx,Wx (F2),(ev) | vfmaddcph Vx,Hx,Wx (F3),(ev)
57 : vfcmaddcsh Vx,Hx,Wx (F2),(ev) | vfmaddcsh Vx,Hx,Wx (F3),(ev)
96 : vfmaddsub132ph Vx,Hx,Wx (66 ),(ev)
97 : vfmsubadd132ph Vx,Hx,Wx (66 ),(ev)
98 : vfmadd132ph Vx,Hx,Wx (66 ),(ev)
99 : vfmadd132sh Vx,Hx,Wx (66 ),(ev)
9 a: vfmsub132ph Vx,Hx,Wx (66 ),(ev)
9 b: vfmsub132sh Vx,Hx,Wx (66 ),(ev)
9 c: vfnmadd132ph Vx,Hx,Wx (66 ),(ev)
9 d: vfnmadd132sh Vx,Hx,Wx (66 ),(ev)
9 e: vfnmsub132ph Vx,Hx,Wx (66 ),(ev)
9 f: vfnmsub132sh Vx,Hx,Wx (66 ),(ev)
a6: vfmaddsub213ph Vx,Hx,Wx (66 ),(ev)
a7: vfmsubadd213ph Vx,Hx,Wx (66 ),(ev)
a8: vfmadd213ph Vx,Hx,Wx (66 ),(ev)
a9: vfmadd213sh Vx,Hx,Wx (66 ),(ev)
aa: vfmsub213ph Vx,Hx,Wx (66 ),(ev)
ab: vfmsub213sh Vx,Hx,Wx (66 ),(ev)
ac: vfnmadd213ph Vx,Hx,Wx (66 ),(ev)
ad: vfnmadd213sh Vx,Hx,Wx (66 ),(ev)
ae: vfnmsub213ph Vx,Hx,Wx (66 ),(ev)
af: vfnmsub213sh Vx,Hx,Wx (66 ),(ev)
b6: vfmaddsub231ph Vx,Hx,Wx (66 ),(ev)
b7: vfmsubadd231ph Vx,Hx,Wx (66 ),(ev)
b8: vfmadd231ph Vx,Hx,Wx (66 ),(ev)
b9: vfmadd231sh Vx,Hx,Wx (66 ),(ev)
ba: vfmsub231ph Vx,Hx,Wx (66 ),(ev)
bb: vfmsub231sh Vx,Hx,Wx (66 ),(ev)
bc: vfnmadd231ph Vx,Hx,Wx (66 ),(ev)
bd: vfnmadd231sh Vx,Hx,Wx (66 ),(ev)
be: vfnmsub231ph Vx,Hx,Wx (66 ),(ev)
bf: vfnmsub231sh Vx,Hx,Wx (66 ),(ev)
d6: vfcmulcph Vx,Hx,Wx (F2),(ev) | vfmulcph Vx,Hx,Wx (F3),(ev)
d7: vfcmulcsh Vx,Hx,Wx (F2),(ev) | vfmulcsh Vx,Hx,Wx (F3),(ev)
EndTable
Table: VEX map 7
Referrer:
AVXcode: 7
f8: URDMSR Rq,Id (F2),(v1),(11 B) | UWRMSR Id,Rq (F3),(v1),(11 B)
EndTable
GrpTable: Grp1
0 : ADD
1 : OR
2 : ADC
3 : SBB
4 : AND
5 : SUB
6 : XOR
7 : CMP
EndTable
GrpTable: Grp1A
0 : POP
EndTable
GrpTable: Grp2
0 : ROL
1 : ROR
2 : RCL
3 : RCR
4 : SHL/SAL
5 : SHR
6 :
7 : SAR
EndTable
GrpTable: Grp3_1
0 : TEST Eb,Ib
1 : TEST Eb,Ib
2 : NOT Eb
3 : NEG Eb
4 : MUL AL,Eb
5 : IMUL AL,Eb
6 : DIV AL,Eb
7 : IDIV AL,Eb
EndTable
GrpTable: Grp3_2
0 : TEST Ev,Iz
1 : TEST Ev,Iz
2 : NOT Ev
3 : NEG Ev
4 : MUL rAX,Ev
5 : IMUL rAX,Ev
6 : DIV rAX,Ev
7 : IDIV rAX,Ev
EndTable
GrpTable: Grp4
0 : INC Eb
1 : DEC Eb
EndTable
GrpTable: Grp5
0 : INC Ev
1 : DEC Ev
# Note: "forced64" is Intel CPU behavior (see comment about CALL insn).
2 : CALLN Ev (f64)
3 : CALLF Ep
4 : JMPN Ev (f64)
5 : JMPF Mp
6 : PUSH Ev (d64)
7 :
EndTable
GrpTable: Grp6
0 : SLDT Rv/Mw
1 : STR Rv/Mw
2 : LLDT Ew
3 : LTR Ew
4 : VERR Ew
5 : VERW Ew
6 : LKGS Ew (F2)
EndTable
GrpTable: Grp7
0 : SGDT Ms | VMCALL (001 ),(11 B) | VMLAUNCH (010 ),(11 B) | VMRESUME (011 ),(11 B) | VMXOFF (100 ),(11 B) | PCONFIG (101 ),(11 B) | ENCLV (000 ),(11 B) | WRMSRNS (110 ),(11 B) | RDMSRLIST (F2),(110 ),(11 B) | WRMSRLIST (F3),(110 ),(11 B) | PBNDKB (111 ),(11 B)
1 : SIDT Ms | MONITOR (000 ),(11 B) | MWAIT (001 ),(11 B) | CLAC (010 ),(11 B) | STAC (011 ),(11 B) | ENCLS (111 ),(11 B) | ERETU (F3),(010 ),(11 B) | ERETS (F2),(010 ),(11 B)
2 : LGDT Ms | XGETBV (000 ),(11 B) | XSETBV (001 ),(11 B) | VMFUNC (100 ),(11 B) | XEND (101 )(11 B) | XTEST (110 )(11 B) | ENCLU (111 ),(11 B)
3 : LIDT Ms
4 : SMSW Mw/Rv
5 : rdpkru (110 ),(11 B) | wrpkru (111 ),(11 B) | SAVEPREVSSP (F3),(010 ),(11 B) | RSTORSSP Mq (F3) | SETSSBSY (F3),(000 ),(11 B) | CLUI (F3),(110 ),(11 B) | SERIALIZE (000 ),(11 B) | STUI (F3),(111 ),(11 B) | TESTUI (F3)(101 )(11 B) | UIRET (F3),(100 ),(11 B) | XRESLDTRK (F2),(000 ),(11 B) | XSUSLDTRK (F2),(001 ),(11 B)
6 : LMSW Ew
7 : INVLPG Mb | SWAPGS (o64),(000 ),(11 B) | RDTSCP (001 ),(11 B)
EndTable
GrpTable: Grp8
4 : BT
5 : BTS
6 : BTR
7 : BTC
EndTable
GrpTable: Grp9
1 : CMPXCHG8B/16 B Mq/Mdq
3 : xrstors
4 : xsavec
5 : xsaves
6 : VMPTRLD Mq | VMCLEAR Mq (66 ) | VMXON Mq (F3) | RDRAND Rv (11 B) | SENDUIPI Gq (F3)
7 : VMPTRST Mq | VMPTRST Mq (F3) | RDSEED Rv (11 B)
EndTable
GrpTable: Grp10
# all are UD1
0 : UD1
1 : UD1
2 : UD1
3 : UD1
4 : UD1
5 : UD1
6 : UD1
7 : UD1
EndTable
# Grp11A and Grp11B are expressed as Grp11 in Intel SDM
GrpTable: Grp11A
0 : MOV Eb,Ib
7 : XABORT Ib (000 ),(11 B)
EndTable
GrpTable: Grp11B
0 : MOV Eb,Iz
7 : XBEGIN Jz (000 ),(11 B)
EndTable
GrpTable: Grp12
2 : psrlw Nq,Ib (11 B) | vpsrlw Hx,Ux,Ib (66 ),(11 B),(v1)
4 : psraw Nq,Ib (11 B) | vpsraw Hx,Ux,Ib (66 ),(11 B),(v1)
6 : psllw Nq,Ib (11 B) | vpsllw Hx,Ux,Ib (66 ),(11 B),(v1)
EndTable
GrpTable: Grp13
0 : vprord/q Hx,Wx,Ib (66 ),(ev)
1 : vprold/q Hx,Wx,Ib (66 ),(ev)
2 : psrld Nq,Ib (11 B) | vpsrld Hx,Ux,Ib (66 ),(11 B),(v1)
4 : psrad Nq,Ib (11 B) | vpsrad Hx,Ux,Ib (66 ),(11 B),(v1) | vpsrad/q Hx,Ux,Ib (66 ),(evo)
6 : pslld Nq,Ib (11 B) | vpslld Hx,Ux,Ib (66 ),(11 B),(v1)
EndTable
GrpTable: Grp14
2 : psrlq Nq,Ib (11 B) | vpsrlq Hx,Ux,Ib (66 ),(11 B),(v1)
3 : vpsrldq Hx,Ux,Ib (66 ),(11 B),(v1)
6 : psllq Nq,Ib (11 B) | vpsllq Hx,Ux,Ib (66 ),(11 B),(v1)
7 : vpslldq Hx,Ux,Ib (66 ),(11 B),(v1)
EndTable
GrpTable: Grp15
0 : fxsave | RDFSBASE Ry (F3),(11 B)
1 : fxstor | RDGSBASE Ry (F3),(11 B)
2 : vldmxcsr Md (v1) | WRFSBASE Ry (F3),(11 B)
3 : vstmxcsr Md (v1) | WRGSBASE Ry (F3),(11 B)
4 : XSAVE | ptwrite Ey (F3),(11 B)
5 : XRSTOR | lfence (11 B) | INCSSPD/Q Ry (F3),(11 B)
6 : XSAVEOPT | clwb (66 ) | mfence (11 B) | TPAUSE Rd (66 ),(11 B) | UMONITOR Rv (F3),(11 B) | UMWAIT Rd (F2),(11 B) | CLRSSBSY Mq (F3)
7 : clflush | clflushopt (66 ) | sfence (11 B)
EndTable
GrpTable: Grp16
0 : prefetch NTA
1 : prefetch T0
2 : prefetch T1
3 : prefetch T2
6 : prefetch IT1
7 : prefetch IT0
EndTable
GrpTable: Grp17
1 : BLSR By,Ey (v)
2 : BLSMSK By,Ey (v)
3 : BLSI By,Ey (v)
EndTable
GrpTable: Grp18
1 : vgatherpf0dps/d Wx (66 ),(ev)
2 : vgatherpf1dps/d Wx (66 ),(ev)
5 : vscatterpf0dps/d Wx (66 ),(ev)
6 : vscatterpf1dps/d Wx (66 ),(ev)
EndTable
GrpTable: Grp19
1 : vgatherpf0qps/d Wx (66 ),(ev)
2 : vgatherpf1qps/d Wx (66 ),(ev)
5 : vscatterpf0qps/d Wx (66 ),(ev)
6 : vscatterpf1qps/d Wx (66 ),(ev)
EndTable
GrpTable: Grp20
0 : cldemote Mb
EndTable
GrpTable: Grp21
1 : RDSSPD/Q Ry (F3),(11 B)
7 : ENDBR64 (F3),(010 ),(11 B) | ENDBR32 (F3),(011 ),(11 B)
EndTable
# AMD's Prefetch Group
GrpTable: GrpP
0 : PREFETCH
1 : PREFETCHW
EndTable
GrpTable: GrpPDLK
0 : MONTMUL
1 : XSHA1
2 : XSHA2
EndTable
GrpTable: GrpRNG
0 : xstore-rng
1 : xcrypt-ecb
2 : xcrypt-cbc
4 : xcrypt-cfb
5 : xcrypt-ofb
EndTable
Messung V0.5 in Prozent C=95 H=90 G=92
¤ Dauer der Verarbeitung: 0.17 Sekunden
(vorverarbeitet am 2026-06-07)
¤
*© Formatika GbR, Deutschland