x86 architecture L1OM opcodes
note: KNF L1OM used VXCSR and V0...V31 instead of MXCSR and ZMM0...ZMM31, and KNC K1OM aka MVEX replaced it
62h XBRW_oooo |
x0h |
x1h |
x2h |
x3h |
x4h |
x5h |
x6h |
x7h |
|
1???_xh |
BSFI Gv,Rv |
BSRI Gv,Rv |
BSFF Gv,Rv |
BSRF Gv,Rv |
BITINTERLEAVE11 Gv,Rv |
BITINTERLEAVE21 Gv,Rv |
INSERTFIELD Gv,Rv,Iw,Ib,Ib |
ROTATEFIELD Gv,Rv,Iw,Ib,Ib |
|
62h XBRW_oooo |
x8h |
x9h |
xAh |
xBh |
xCh |
xDh |
xEh |
xFh |
|
1???_xh |
COUNTBITS Gv,Rv |
QUADMASK16 Gv,Rv |
unused |
|
  |
VPREFETCHn M = disp8*N VPREFETCH1 /n bits 0/1/2 = {EX}/{NT}/{MISS} VPREFETCH2 /n bits 0/1 = {EX}/{NT} |
??00_Bh /n ??01_Bh /n VPREFETCH1 M VPREFETCH2 M |
|
1100_Dh VKAND mKw,rKw |
1100_Eh VKOR mKw,rKw |
1?0?_Fh /0 1?0?_Fh /1 DELAY Rv SPFLT Rv |
|
??10_Bh /0...3 CLEVICT1 M CLEVICT2 M LDVXCSR Md STVXCSR Md |
1?01_Ch VKMOV Rz,rKw |
1101_Dh VKANDN mKw,rKw |
1101_Eh VKORTEST mKw,rKw |
|
11?0_Ch VKMOV mKw,Gz |
1110_Dh VKANDNR mKw,rKw |
1110_Eh VKXOR mKw,rKw |
1110_Fh VKSWAPB mKw,rKw |
1111_Bh VKMOVLHB mKw,rKw |
1111_Ch VKMOV mKw,rKw |
1111_Dh VKNOT mKw,rKw |
1111_Eh VKXNOR mKw,rKw |
1111_Fh unused |
pre- fix |
D6 ... xxh |
x0h |
x1h |
x2h |
x3h |
x4h |
x5h |
x6h |
x7h |
|
n/a |
0xh |
|
|
|
|
DELAY vvvvv |
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
1xh |
VLOADD Vz {Kw}, Uld32(Mzt) |
|
VLOADUNPACKLD Vz {Kw}, U32(Mzt) |
VLOADUNPACKHD Vz {Kw}, U32(Mzt) |
VSTORED Mz {Kw}, Dst32(Vz) |
VSTOREBMSKD Mz {Kw}, D32.fld(Vz) |
VPACKSTORELD Mz {Kw}, D32(Vz) |
VPACKSTOREHD Mz {Kw}, D32(Vz) |
66h |
VLOADQ Vz {Kw}, Uld64(Mzt) |
|
VLOADUNPACKLQ Vz {Kw}, U64(Mzt) |
VLOADUNPACKHQ Vz {Kw}, U64(Mzt) |
VSTOREQ Mz {Kw}, Dst64(Vz) |
|
VPACKSTORELQ Mz {Kw}, D64(Vz) |
VPACKSTOREHQ Mz {Kw}, D64(Vz) |
n/a |
2xh |
VCMPccPS rKw {Kw},Hz, Sf32.ccf(Wzt) |
VCMPccPI rKw {Kw},Hz, Si32.cci(Wzt) |
VCMPccPU rKw {Kw},Hz, Si32.cci(Wzt) |
|
VCMPccPS rKw {Kw},Hz, Sf32.ccf(Wzt) |
VCMPccPI rKw {Kw},Hz, Si32.cci(Wzt) |
VCMPccPU rKw {Kw},Hz, Si32.cci(Wzt) |
|
66h |
VCMPccPD rKw {Kw},Hz, Sf64.ccf(Wzt) |
|
|
|
VCMPccPD rKw {Kw},Hz, Sf64.ccf(Wzt) |
|
|
|
n/a |
3xh |
VTESTPI rKw {Kw},Hz, Si32(Wzt) |
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
|
n/a |
4xh |
VADDPS Vz {Kw},Hz, Sf32(Wzt) |
VADDPI Vz {Kw},Hz, Si32(Wzt) |
|
VADDSETCPI Vz {Kw},vKw, Si32(Wzt) |
|
VADCPI Vz {Kw},vKw, Si32(Wzt) |
VADDSETSPS Vz {Kw.!0},Hz, Sf32(Wzt) |
VADDSETSPI Vz {Kw.!0},Hz, Si32(Wzt) |
66h |
VADDPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
|
|
|
n/a |
5xh |
VSUBPS Vz {Kw},Hz, Sf32(Wzt) |
VSUBPI Vz {Kw},Hz, Si32(Wzt) |
|
VSUBSETBPI Vz {Kw},vKw, Si32(Wzt) |
|
VSBBPI Vz {Kw},vKw, Si32(Wzt) |
|
|
66h |
VSUBPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
|
|
|
n/a |
6xh |
VMADD231PS Vz {Kw},Hz, Sf32(Wzt) |
VMADD231PI Vz {Kw},Hz, Si32(Wzt) |
VMADD213PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMADD132PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMADD233PS Vz {Kw},Hz, Sf32(Wzt) |
VMADD233PI Vz {Kw},Hz, Si32(Wzt) |
66h |
VMADD231PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMADD213PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMADD132PD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
n/a |
7xh |
VMADDN231PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMADDN213PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMADDN132PS Vz {Kw},Hz, Sf32(Wzt) |
|
|
|
66h |
VMADDN231PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMADDN213PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMADDN132PD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
n/a |
8xh |
VMULPS Vz {Kw},Hz, Sf32(Wzt) |
VMULHPI Vz {Kw},Hz, Si32(Wzt) |
VMULHPU Vz {Kw},Hz, Si32(Wzt) |
VMULLPI Vz {Kw},Hz, Si32(Wzt) |
|
|
VCLAMPZPS Vz {Kw},Hz, Sf32(Wzt) |
VCLAMPZPI Vz {Kw},Hz, Si32(Wzt) |
66h |
VMULPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
|
|
|
n/a |
9xh |
|
VCVTPS2PI Vz {Kw}, Sf32.rc.exp(Wzt) |
VCVTPS2PU Vz {Kw}, Sf32.rc.exp(Wzt) |
|
|
VCVTPI2PS Vz {Kw}, Si32.exp(Wzt) |
VCVTPU2PS Vz {Kw}, Si32.exp(Wzt) |
|
66h |
VCVT[LH]PD2PS Vz {Kw}, Sf64.rc.lh(Wzt) |
VCVT[LH]PD2PI Vz {Kw}, Sf64.rc.lh(Wzt) |
VCVT[LH]PD2PU Vz {Kw}, Sf64.rc.lh(Wzt) |
|
VCVT[LH]PS2PD Vz {Kw}, Sf32.lh(Wzt) |
VCVT[LH]PI2PD Vz {Kw}, Si32.lh(Wzt) |
VCVT[LH]PU2PD Vz {Kw}, Si32.lh(Wzt) |
|
n/a |
Axh |
VSLLPI Vz {Kw},Hz, Si32(Wzt) |
VSRAPI Vz {Kw},Hz, Si32(Wzt) |
VSRLPI Vz {Kw},Hz, Si32(Wzt) |
|
VANDNPI Vz {Kw},Hz, Si32(Wzt) |
VANDPI Vz {Kw},Hz, Si32(Wzt) |
VORPI Vz {Kw},Hz, Si32(Wzt) |
VXORPI Vz {Kw},Hz, Si32(Wzt) |
66h |
|
|
|
|
VANDNPQ Vz {Kw},Hz, Si64(Wzt) |
VANDPQ Vz {Kw},Hz, Si64(Wzt) |
VORPQ Vz {Kw},Hz, Si64(Wzt) |
VXORPQ Vz {Kw},Hz, Si64(Wzt) |
n/a |
Bxh |
VEXP2LUTPS Vz {Kw}, Si32(Wzt) |
VLOG2LUTPS Vz {Kw}, Sf32(Wzt) |
VRSQRTLUTPS Vz {Kw}, Sf32(Wzt) |
|
VGETEXPPS Vz {Kw}, Sf32(Wzt) |
|
|
|
66h |
|
|
|
|
|
|
|
|
|
n/a |
Cxh |
VRCPRESPS Vz {Kw}, Sf32(Wzt) |
|
VRCPREFINEPS Vz {Kw},Hz, Sf32(Wzt) |
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Dxh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Exh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Fxh |
VFIXUPPS Vz {Kw}, Sf32(Wzt),Iw |
VSHUF128X32 Vz {Kw}, none(Wzt),Ib,Ib |
VINSERT- FIELDPI Vz {Kw},Hz, Si32(Wzt),Iw |
VROTATE- FIELDPI Vz {Kw}, Si32(Wzt),Iw |
|
|
|
|
66h |
|
|
|
|
|
|
|
|
pre- fix |
D6 ... xxh |
x8h |
x9h |
xAh |
xBh |
xCh |
xDh |
xEh |
xFh |
|
n/a |
0xh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
1xh |
VGATHERD Vz {Kw.!0}, U32(Mdt.z) |
VGATHERPFD U32(Mdt.z) {Kw.!0} |
|
VGATHERPF2D U32(Mdt.z) {Kw.!0} |
VSCATTERD Md.z {Kw.!0}, D32(Vz) |
VSCATTERPFD D32(Md.z) {Kw.!0} |
|
VSCATTERPF2D D32(Md.z) {Kw.!0} |
66h |
|
|
|
|
|
|
|
|
n/a |
2xh |
VCMPBMSKEQPU rKw {Kw},Hz, Sf32.fld(Wzt) |
VCMPBMSKLTPU rKw {Kw},Hz, Sf32.fld(Wzt) |
VCMPBMSKLEPU rKw {Kw},Hz, Sf32.fld(Wzt) |
|
VCMPBMSKNEQPU rKw {Kw},Hz, Sf32.fld(Wzt) |
VCMPBMSKNLTPU rKw {Kw},Hz, Sf32.fld(Wzt) |
VCMPBMSKNLEPU rKw {Kw},Hz, Sf32.fld(Wzt) |
|
66h |
|
|
|
|
|
|
|
|
n/a |
3xh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
|
n/a |
4xh |
VADDNPS Vz {Kw},Hz, Sf32(Wzt) |
|
|
|
|
|
|
|
66h |
VADDNPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
|
|
|
n/a |
5xh |
VSUBRPS Vz {Kw},Hz, Sf32(Wzt) |
VSUBRPI Vz {Kw},Hz, Si32(Wzt) |
|
VSUBRSETBPI Vz {Kw},vKw, Si32(Wzt) |
|
VSBBRPI Vz {Kw},vKw, Si32(Wzt) |
|
|
66h |
VSUBRPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
|
|
|
|
n/a |
6xh |
VMSUB231PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMSUB213PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMSUB132PS Vz {Kw},Hz, Sf32(Wzt) |
|
|
|
66h |
VMSUB231PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMSUB213PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMSUB132PD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
n/a |
7xh |
VMSUBR231PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMSUBR213PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMSUBR132PS Vz {Kw},Hz, Sf32(Wzt) |
|
VMSUBR23C1PS Vz {Kw},Hz, Sf32(Wzt) |
|
66h |
VMSUBR231PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMSUBR213PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMSUBR132PD Vz {Kw},Hz, Sf64(Wzt) |
|
VMSUBR23C1PD Vz {Kw},Hz, Sf64(Wzt) |
|
|
n/a |
8xh |
VMAXPS Vz {Kw},Hz, Sf32(Wzt) |
VMAXPI Vz {Kw},Hz, Si32(Wzt) |
VMAXPU Vz {Kw},Hz, Si32(Wzt) |
|
VMINPS Vz {Kw},Hz, Sf32(Wzt) |
VMINPI Vz {Kw},Hz, Si32(Wzt) |
VMINPU Vz {Kw},Hz, Si32(Wzt) |
|
66h |
VMAXPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
VMINPD Vz {Kw},Hz, Sf64(Wzt) |
|
|
|
n/a |
9xh |
VROUNDPS Vz {Kw}, Sf32.rc.exp(Wzt) |
|
VCVTINSPS2U10 Vz {Kw}, Sf32.fu(Wzt) |
VCVTINSPS2F11 Vz {Kw}, Sf32.ff.rc(Wzt) |
|
VCVTPS2SRGB8 Vz {Kw}, Sf32(Wzt) |
VMAXABSPS Vz {Kw},Hz, Sf32(Wzt) |
|
66h |
|
|
|
|
|
|
|
|
n/a |
Axh |
VBINTINTER- LEAVE11PI Vz {Kw},Hz, Si32(Wzt) |
VBINTINTER- LEAVE21PI Vz {Kw},Hz, Si32(Wzt) |
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Bxh |
VSCALEPS Vz {Kw},Hz, Si32(Wzt) |
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
|
n/a |
Cxh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Dxh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Exh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
n/a |
Fxh |
|
|
|
|
|
|
|
|
66h |
|
|
|
|
|
|
|
|
© 1996-2024 by Christian Ludloff. All rights reserved. Use at your own risk.
|