10: pblendvb Vdq,Wdq (66)
11:
12:
- 13:
+ 13: vcvtph2ps Vx,Wx,Ib (66),(v)
14: blendvps Vdq,Wdq (66)
15: blendvpd Vdq,Wdq (66)
- 16:
- 17: ptest Vdq,Wdq (66),(VEX)
- 18: vbroadcastss /r (66),(oVEX)
- 19: vbroadcastsd /r (66),(oVEX),(o256)
- 1a: vbroadcastf128 /r (66),(oVEX),(o256)
+ 16: vpermps Vqq,Hqq,Wqq (66),(v)
+ 17: vptest Vx,Wx (66)
+ 18: vbroadcastss Vx,Wd (66),(v)
+ 19: vbroadcastsd Vqq,Wq (66),(v)
+ 1a: vbroadcastf128 Vqq,Mdq (66),(v)
1b:
- 1c: pabsb Pq,Qq | pabsb Vdq,Wdq (66),(VEX),(o128)
- 1d: pabsw Pq,Qq | pabsw Vdq,Wdq (66),(VEX),(o128)
- 1e: pabsd Pq,Qq | pabsd Vdq,Wdq (66),(VEX),(o128)
+ 1c: pabsb Pq,Qq | vpabsb Vx,Wx (66),(v1)
+ 1d: pabsw Pq,Qq | vpabsw Vx,Wx (66),(v1)
+ 1e: pabsd Pq,Qq | vpabsd Vx,Wx (66),(v1)
1f:
# 0x0f 0x38 0x20-0x2f
- 20: pmovsxbw Vdq,Udq/Mq (66),(VEX),(o128)
- 21: pmovsxbd Vdq,Udq/Md (66),(VEX),(o128)
- 22: pmovsxbq Vdq,Udq/Mw (66),(VEX),(o128)
- 23: pmovsxwd Vdq,Udq/Mq (66),(VEX),(o128)
- 24: pmovsxwq Vdq,Udq/Md (66),(VEX),(o128)
- 25: pmovsxdq Vdq,Udq/Mq (66),(VEX),(o128)
+ 20: vpmovsxbw Vx,Ux/Mq (66),(v1)
+ 21: vpmovsxbd Vx,Ux/Md (66),(v1)
+ 22: vpmovsxbq Vx,Ux/Mw (66),(v1)
+ 23: vpmovsxwd Vx,Ux/Mq (66),(v1)
+ 24: vpmovsxwq Vx,Ux/Md (66),(v1)
+ 25: vpmovsxdq Vx,Ux/Mq (66),(v1)
26:
27:
- 28: pmuldq Vdq,Wdq (66),(VEX),(o128)
- 29: pcmpeqq Vdq,Wdq (66),(VEX),(o128)
- 2a: movntdqa Vdq,Mdq (66),(VEX),(o128)
- 2b: packusdw Vdq,Wdq (66),(VEX),(o128)
- 2c: vmaskmovps(ld) /r (66),(oVEX)
- 2d: vmaskmovpd(ld) /r (66),(oVEX)
- 2e: vmaskmovps(st) /r (66),(oVEX)
- 2f: vmaskmovpd(st) /r (66),(oVEX)
+ 28: vpmuldq Vx,Hx,Wx (66),(v1)
+ 29: vpcmpeqq Vx,Hx,Wx (66),(v1)
+ 2a: vmovntdqa Vx,Mx (66),(v1)
+ 2b: vpackusdw Vx,Hx,Wx (66),(v1)
+ 2c: vmaskmovps Vx,Hx,Mx (66),(v)
+ 2d: vmaskmovpd Vx,Hx,Mx (66),(v)
+ 2e: vmaskmovps Mx,Hx,Vx (66),(v)
+ 2f: vmaskmovpd Mx,Hx,Vx (66),(v)
# 0x0f 0x38 0x30-0x3f
- 30: pmovzxbw Vdq,Udq/Mq (66),(VEX),(o128)
- 31: pmovzxbd Vdq,Udq/Md (66),(VEX),(o128)
- 32: pmovzxbq Vdq,Udq/Mw (66),(VEX),(o128)
- 33: pmovzxwd Vdq,Udq/Mq (66),(VEX),(o128)
- 34: pmovzxwq Vdq,Udq/Md (66),(VEX),(o128)
- 35: pmovzxdq Vdq,Udq/Mq (66),(VEX),(o128)
- 36:
- 37: pcmpgtq Vdq,Wdq (66),(VEX),(o128)
- 38: pminsb Vdq,Wdq (66),(VEX),(o128)
- 39: pminsd Vdq,Wdq (66),(VEX),(o128)
- 3a: pminuw Vdq,Wdq (66),(VEX),(o128)
- 3b: pminud Vdq,Wdq (66),(VEX),(o128)
- 3c: pmaxsb Vdq,Wdq (66),(VEX),(o128)
- 3d: pmaxsd Vdq,Wdq (66),(VEX),(o128)
- 3e: pmaxuw Vdq,Wdq (66),(VEX),(o128)
- 3f: pmaxud Vdq,Wdq (66),(VEX),(o128)
+ 30: vpmovzxbw Vx,Ux/Mq (66),(v1)
+ 31: vpmovzxbd Vx,Ux/Md (66),(v1)
+ 32: vpmovzxbq Vx,Ux/Mw (66),(v1)
+ 33: vpmovzxwd Vx,Ux/Mq (66),(v1)
+ 34: vpmovzxwq Vx,Ux/Md (66),(v1)
+ 35: vpmovzxdq Vx,Ux/Mq (66),(v1)
+ 36: vpermd Vqq,Hqq,Wqq (66),(v)
+ 37: vpcmpgtq Vx,Hx,Wx (66),(v1)
+ 38: vpminsb Vx,Hx,Wx (66),(v1)
+ 39: vpminsd Vx,Hx,Wx (66),(v1)
+ 3a: vpminuw Vx,Hx,Wx (66),(v1)
+ 3b: vpminud Vx,Hx,Wx (66),(v1)
+ 3c: vpmaxsb Vx,Hx,Wx (66),(v1)
+ 3d: vpmaxsd Vx,Hx,Wx (66),(v1)
+ 3e: vpmaxuw Vx,Hx,Wx (66),(v1)
+ 3f: vpmaxud Vx,Hx,Wx (66),(v1)
# 0x0f 0x38 0x40-0x8f
- 40: pmulld Vdq,Wdq (66),(VEX),(o128)
- 41: phminposuw Vdq,Wdq (66),(VEX),(o128)
- 80: INVEPT Gd/q,Mdq (66)
- 81: INVPID Gd/q,Mdq (66)
+ 40: vpmulld Vx,Hx,Wx (66),(v1)
+ 41: vphminposuw Vdq,Wdq (66),(v1)
+ 42:
+ 43:
+ 44:
+ 45: vpsrlvd/q Vx,Hx,Wx (66),(v)
+ 46: vpsravd Vx,Hx,Wx (66),(v)
+ 47: vpsllvd/q Vx,Hx,Wx (66),(v)
+ # Skip 0x48-0x57
+ 58: vpbroadcastd Vx,Wx (66),(v)
+ 59: vpbroadcastq Vx,Wx (66),(v)
+ 5a: vbroadcasti128 Vqq,Mdq (66),(v)
+ # Skip 0x5b-0x77
+ 78: vpbroadcastb Vx,Wx (66),(v)
+ 79: vpbroadcastw Vx,Wx (66),(v)
+ # Skip 0x7a-0x7f
+ 80: INVEPT Gy,Mdq (66)
+ 81: INVPID Gy,Mdq (66)
+ 82: INVPCID Gy,Mdq (66)
+ 8c: vpmaskmovd/q Vx,Hx,Mx (66),(v)
+ 8e: vpmaskmovd/q Mx,Vx,Hx (66),(v)
# 0x0f 0x38 0x90-0xbf (FMA)
- 96: vfmaddsub132pd/ps /r (66),(VEX)
- 97: vfmsubadd132pd/ps /r (66),(VEX)
- 98: vfmadd132pd/ps /r (66),(VEX)
- 99: vfmadd132sd/ss /r (66),(VEX),(o128)
- 9a: vfmsub132pd/ps /r (66),(VEX)
- 9b: vfmsub132sd/ss /r (66),(VEX),(o128)
- 9c: vfnmadd132pd/ps /r (66),(VEX)
- 9d: vfnmadd132sd/ss /r (66),(VEX),(o128)
- 9e: vfnmsub132pd/ps /r (66),(VEX)
- 9f: vfnmsub132sd/ss /r (66),(VEX),(o128)
- a6: vfmaddsub213pd/ps /r (66),(VEX)
- a7: vfmsubadd213pd/ps /r (66),(VEX)
- a8: vfmadd213pd/ps /r (66),(VEX)
- a9: vfmadd213sd/ss /r (66),(VEX),(o128)
- aa: vfmsub213pd/ps /r (66),(VEX)
- ab: vfmsub213sd/ss /r (66),(VEX),(o128)
- ac: vfnmadd213pd/ps /r (66),(VEX)
- ad: vfnmadd213sd/ss /r (66),(VEX),(o128)
- ae: vfnmsub213pd/ps /r (66),(VEX)
- af: vfnmsub213sd/ss /r (66),(VEX),(o128)
- b6: vfmaddsub231pd/ps /r (66),(VEX)
- b7: vfmsubadd231pd/ps /r (66),(VEX)
- b8: vfmadd231pd/ps /r (66),(VEX)
- b9: vfmadd231sd/ss /r (66),(VEX),(o128)
- ba: vfmsub231pd/ps /r (66),(VEX)
- bb: vfmsub231sd/ss /r (66),(VEX),(o128)
- bc: vfnmadd231pd/ps /r (66),(VEX)
- bd: vfnmadd231sd/ss /r (66),(VEX),(o128)
- be: vfnmsub231pd/ps /r (66),(VEX)
- bf: vfnmsub231sd/ss /r (66),(VEX),(o128)
+ 90: vgatherdd/q Vx,Hx,Wx (66),(v)
+ 91: vgatherqd/q Vx,Hx,Wx (66),(v)
+ 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)
+ 9a: vfmsub132ps/d Vx,Hx,Wx (66),(v)
+ 9b: vfmsub132ss/d Vx,Hx,Wx (66),(v),(v1)
+ 9c: vfnmadd132ps/d Vx,Hx,Wx (66),(v)
+ 9d: vfnmadd132ss/d Vx,Hx,Wx (66),(v),(v1)
+ 9e: vfnmsub132ps/d Vx,Hx,Wx (66),(v)
+ 9f: vfnmsub132ss/d Vx,Hx,Wx (66),(v),(v1)
+ 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)
+ ab: vfmsub213ss/d Vx,Hx,Wx (66),(v),(v1)
+ 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)
+ 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)
# 0x0f 0x38 0xc0-0xff
- db: aesimc Vdq,Wdq (66),(VEX),(o128)
- dc: aesenc Vdq,Wdq (66),(VEX),(o128)
- dd: aesenclast Vdq,Wdq (66),(VEX),(o128)
- de: aesdec Vdq,Wdq (66),(VEX),(o128)
- df: aesdeclast Vdq,Wdq (66),(VEX),(o128)
- f0: MOVBE Gv,Mv | CRC32 Gd,Eb (F2)
- f1: MOVBE Mv,Gv | CRC32 Gd,Ev (F2)
+ db: VAESIMC Vdq,Wdq (66),(v1)
+ dc: VAESENC Vdq,Hdq,Wdq (66),(v1)
+ dd: VAESENCLAST Vdq,Hdq,Wdq (66),(v1)
+ de: VAESDEC Vdq,Hdq,Wdq (66),(v1)
+ df: VAESDECLAST Vdq,Hdq,Wdq (66),(v1)
+ f0: MOVBE Gy,My | MOVBE Gw,Mw (66) | CRC32 Gd,Eb (F2)
+ f1: MOVBE My,Gy | MOVBE Mw,Gw (66) | CRC32 Gd,Ey (F2)
-- f3: ANDN Gy,By,Ey (v)
-- f4: Grp17 (1A)
+++ f2: ANDN Gy,By,Ey (v)
+++ f3: Grp17 (1A)
+ f5: BZHI Gy,Ey,By (v) | PEXT Gy,By,Ey (F3),(v) | PDEP Gy,By,Ey (F2),(v)
+ f6: MULX By,Gy,rDX,Ey (F2),(v)
+ f7: BEXTR Gy,Ey,By (v) | SHLX Gy,Ey,By (66),(v) | SARX Gy,Ey,By (F3),(v) | SHRX Gy,Ey,By (F2),(v)
EndTable
Table: 3-byte opcode 2 (0x0f 0x3a)