# Mnemonic Explicit Operands Implicit Encoding Flags, Prefixes, Set, Category, Class, RW map, Additional ops #------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ # 0x00 - 0x0F ROUNDPS Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x08 /r ib] s:SSE4, t:SSE, w:W|R|R, e:2 ROUNDPD Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x09 /r ib] s:SSE4, t:SSE, w:W|R|R, e:2 ROUNDSS Vss,Wss,Ib nil [ 0x66 0x0F 0x3A 0x0A /r ib] s:SSE4, t:SSE, w:W|R|R, e:3 ROUNDSD Vsd,Wsd,Ib nil [ 0x66 0x0F 0x3A 0x0B /r ib] s:SSE4, t:SSE, w:W|R|R, e:3 BLENDPS Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x0C /r ib] s:SSE4, t:SSE, w:RW|R|R, e:4 BLENDPD Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x0D /r ib] s:SSE4, t:SSE, w:RW|R|R, e:4 PBLENDW Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x0E /r ib] s:SSE4, t:SSE, w:RW|R|R, e:4 PALIGNR Pq,Qq,Ib nil [ NP 0x0F 0x3A 0x0F /r ib] s:SSSE3, t:MMX, w:RW|R|R PALIGNR Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x0F /r ib] s:SSSE3, t:SSE, w:RW|R|R, e:4 # 0x10 - 0x1F # TODO: for PEXTRx, a smaller size is accessed, in fact. PEXTRB Mb,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x14 /r:mem ib] s:SSE4, t:SSE, w:W|R|R, e:5 PEXTRB Rd,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x14 /r:reg ib] s:SSE4, t:SSE, w:W|R|R, e:5 PEXTRW Mw,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x15 /r:mem ib] s:SSE4, t:SSE, w:W|R|R, e:5 PEXTRW Rd,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x15 /r:reg ib] s:SSE4, t:SSE, w:W|R|R, e:5 PEXTRD Ey,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x16 /r ib] s:SSE4, t:SSE, w:W|R|R, e:5 PEXTRQ Ey,Vdq,Ib nil [ rexw 0x66 0x0F 0x3A 0x16 /r ib] s:SSE4, t:SSE, w:W|R|R, e:5 EXTRACTPS Ed,Vdq,Ib nil [ 0x66 0x0F 0x3A 0x17 /r ib] s:SSE4, t:SSE, w:W|R|R, e:5 # 0x20 - 0x2F PINSRB Vdq,Mb,Ib nil [ 0x66 0x0F 0x3A 0x20 /r:mem ib] s:SSE4, t:SSE, w:RW|R|R, e:5 PINSRB Vdq,Ry,Ib nil [ 0x66 0x0F 0x3A 0x20 /r:reg ib] s:SSE4, t:SSE, w:RW|R|R, e:5 INSERTPS Vdq,Md,Ib nil [ 0x66 0x0F 0x3A 0x21 /r:mem ib] s:SSE4, t:SSE, w:RW|R|R, e:5 INSERTPS Vdq,Udq,Ib nil [ 0x66 0x0F 0x3A 0x21 /r:reg ib] s:SSE4, t:SSE, w:RW|R|R, e:5 PINSRD Vdq,Ed,Ib nil [ 0x66 0x0F 0x3A 0x22 /r ib] s:SSE4, t:SSE, w:RW|R|R, e:5 PINSRQ Vdq,Eq,Ib nil [ rexw 0x66 0x0F 0x3A 0x22 /r ib] s:SSE4, t:SSE, w:RW|R|R, e:5 # 0x30 - 0x3F # 0x40 - 0x4F DPPS Vx,Wx,Ib nil [ 0x66 0x0F 0x3A 0x40 /r ib] s:SSE4, t:SSE, w:RW|R|R, e:2 DPPD Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0x41 /r ib] s:SSE4, t:SSE, w:RW|R|R, e:2 MPSADBW Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0x42 /r ib] s:SSE4, t:SSE, w:RW|R|R, e:4 PCLMULQDQ Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0x44 /r ib] s:PCLMULQDQ, t:PCLMULQDQ, w:RW|R|R, e:4 # 0x50 - 0x5F # 0x60 - 0x6F PCMPESTRM Vdq,Wdq,Ib yAX,yDX,XMM0,Fv [ 0x66 0x0F 0x3A 0x60 /r ib] s:SSE42, t:SSE, w:R|R|R|R|R|W|W, f:PCMPSTR, e:4 PCMPESTRI Vdq,Wdq,Ib yAX,yDX,yCX,Fv [ 0x66 0x0F 0x3A 0x61 /r ib] s:SSE42, t:SSE, w:R|R|R|R|R|W|W, f:PCMPSTR, e:4 PCMPISTRM Vdq,Wdq,Ib XMM0,Fv [ 0x66 0x0F 0x3A 0x62 /r ib] s:SSE42, t:SSE, w:R|R|R|W|W, f:PCMPSTR, e:4 PCMPISTRI Vdq,Wdq,Ib yCX,Fv [ 0x66 0x0F 0x3A 0x63 /r ib] s:SSE42, t:SSE, w:R|R|R|W|W, f:PCMPSTR, e:4 # 0x70 - 0x7F # 0x80 - 0x8F # 0x90 - 0x9F # 0xA0 - 0xAF # 0xB0 - 0xBF # 0xC0 - 0xCF SHA1RNDS4 Vdq,Wdq,Ib nil [ NP 0x0F 0x3A 0xCC /r ib] s:SHA, t:SHA, w:RW|R|R, e:4 GF2P8AFFINEQB Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0xCE /r ib] s:GFNI, t:GFNI, w:RW|R|R, e:4 GF2P8AFFINEINVQB Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0xCF /r ib] s:GFNI, t:GFNI, w:RW|R|R, e:4 # 0xD0 - 0xDF AESKEYGENASSIST Vdq,Wdq,Ib nil [ 0x66 0x0F 0x3A 0xDF /r ib] s:AES, t:AES, w:W|R|R, e:4 # 0xE0 - 0xEF # 0xF0 - 0xFF HRESET Ib EAX [ 0xF3 0x0F 0x3A 0xF0 /0xC0 ib] s:HRESET, t:HRESET, w:N|R, m:KERNEL|NOV86|NOTSX