instrs: Fixup register decoding for PEXTR*
This commit is contained in:
13
instrs.txt
13
instrs.txt
@@ -824,8 +824,10 @@ NP.0f38f9/m MR MEM GP - - MOVDIRI
|
||||
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 MRI GP8 XMM IMM8 - SSE_PEXTRB
|
||||
66.0f3a15 MRI GP16 XMM IMM8 - SSE_PEXTRW
|
||||
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
|
||||
@@ -1216,9 +1218,10 @@ 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 MRI GP8 XMM IMM8 - VPEXTRB ENC_NOSZ
|
||||
# TODO: also WIG for PEXTRW?
|
||||
VEX.66.WIG.L0.0f3a15 MRI GP16 XMM IMM8 - VPEXTRW ENC_NOSZ
|
||||
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
|
||||
|
||||
@@ -334,10 +334,10 @@ main(int argc, char** argv)
|
||||
TEST32("\xc4\xe1\xf2\x2a\xc0", "vcvtsi2ss xmm0, xmm1, eax");
|
||||
TEST64("\xc4\xe1\xf2\x2a\xc0", "vcvtsi2ss xmm0, xmm1, rax");
|
||||
|
||||
TEST("\xc4\xe3\x79\x14\xc0\x00", "vpextrb al, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\xf9\x14\xc0\x00", "vpextrb al, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\x79\x15\xc0\x00", "vpextrw ax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\xf9\x15\xc0\x00", "vpextrw ax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\x79\x14\xc0\x00", "vpextrb eax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\xf9\x14\xc0\x00", "vpextrb eax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\x79\x15\xc0\x00", "vpextrw eax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\xf9\x15\xc0\x00", "vpextrw eax, xmm0, 0x0");
|
||||
TEST32("\xc4\xe1\x79\xc5\xc0\x00", "vpextrw eax, xmm0, 0x0");
|
||||
TEST64("\xc4\xe1\x79\xc5\xc0\x00", "vpextrw rax, xmm0, 0x0");
|
||||
TEST("\xc4\xe3\x79\x16\xc0\x00", "vpextrd eax, xmm0, 0x0");
|
||||
|
||||
Reference in New Issue
Block a user