You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
bddisasm/isagenerator/instructions/table_0F_38.dat

149 lines
14 KiB

#
# Copyright (c) 2020 Bitdefender
# SPDX-License-Identifier: Apache-2.0
#
# 0x00 - 0x0F
PSHUFB ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x00 /r ; s:SSSE3, t:MMX, w:RW|R
PSHUFB ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x00 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHADDW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x01 /r ; s:SSSE3, t:MMX, w:RW|R
PHADDW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x01 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHADDD ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x02 /r ; s:SSSE3, t:MMX, w:RW|R
PHADDD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x02 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHADDSW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x03 /r ; s:SSSE3, t:MMX, w:RW|R
PHADDSW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x03 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PMADDUBSW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x04 /r ; s:SSSE3, t:MMX, w:RW|R
PMADDUBSW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x04 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHSUBW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x05 /r ; s:SSSE3, t:MMX, w:RW|R
PHSUBW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x05 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHSUBD ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x06 /r ; s:SSSE3, t:MMX, w:RW|R
PHSUBD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x06 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PHSUBSW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x07 /r ; s:SSSE3, t:MMX, w:RW|R
PHSUBSW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x07 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PSIGNB ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x08 /r ; s:SSSE3, t:MMX, w:RW|R
PSIGNB ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x08 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PSIGNW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x09 /r ; s:SSSE3, t:MMX, w:RW|R
PSIGNW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x09 /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PSIGND ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x0A /r ; s:SSSE3, t:MMX, w:RW|R
PSIGND ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x0A /r ; s:SSSE3, t:SSE, w:RW|R, e:4
PMULHRSW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x0B /r ; s:SSSE3, t:MMX, w:RW|R
PMULHRSW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x0B /r ; s:SSSE3, t:SSE, w:RW|R, e:4
# 0x10 - 0x1F
PBLENDVB ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x10 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4
BLENDVPS ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x14 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4
BLENDVPD ; Vdq,Wdq ; XMM0 ; 0x66 0x0F 0x38 0x15 /r ; s:SSE4, t:SSE, w:RW|R|R, e:4
PTEST ; Vdq,Wdq ; Fv ; 0x66 0x0F 0x38 0x17 /r ; s:SSE4, t:SSE, w:R|R|W, f:CF=m|PF=0|AF=0|ZF=m|SF=0|OF=0, e:4
PABSB ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x1C /r ; s:SSSE3, t:MMX, w:W|R
PABSB ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x1C /r ; s:SSSE3, t:SSE, w:W|R, e:4
PABSW ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x1D /r ; s:SSSE3, t:MMX, w:W|R
PABSW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x1D /r ; s:SSSE3, t:SSE, w:W|R, e:4
PABSD ; Pq,Qq ; n/a ; NP 0x0F 0x38 0x1E /r ; s:SSSE3, t:MMX, w:W|R
PABSD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x1E /r ; s:SSSE3, t:SSE, w:W|R, e:4
# 0x20 - 0x2F
PMOVSXBW ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x20 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVSXBD ; Vdq,Wd ; n/a ; 0x66 0x0F 0x38 0x21 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVSXBQ ; Vdq,Ww ; n/a ; 0x66 0x0F 0x38 0x22 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVSXWD ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x23 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVSXWQ ; Vdq,Wd ; n/a ; 0x66 0x0F 0x38 0x24 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVSXDQ ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x25 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMULDQ ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x28 /r ; s:SSE4, t:SSE, w:RW|R, e:4
PCMPEQQ ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x29 /r ; s:SSE4, t:SSE, w:RW|R, e:4
MOVNTDQA ; Vx,Mx ; n/a ; 0x66 0x0F 0x38 0x2A /r:mem ; s:SSE4, t:SSE, w:W|R, e:1
PACKUSDW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x2B /r ; s:SSE4, t:SSE, w:RW|R, e:4
# 0x30 - 0x3F
PMOVZXBW ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x30 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVZXBD ; Vdq,Wd ; n/a ; 0x66 0x0F 0x38 0x31 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVZXBQ ; Vdq,Ww ; n/a ; 0x66 0x0F 0x38 0x32 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVZXWD ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x33 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVZXWQ ; Vdq,Wd ; n/a ; 0x66 0x0F 0x38 0x34 /r ; s:SSE4, t:SSE, w:W|R, e:5
PMOVZXDQ ; Vdq,Wq ; n/a ; 0x66 0x0F 0x38 0x35 /r ; s:SSE4, t:SSE, w:W|R, e:5
PCMPGTQ ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x37 /r ; s:SSE42, t:SSE, w:RW|R, e:4
PMINSB ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x38 /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMINSD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x39 /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMINUW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3A /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMINUD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3B /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMAXSB ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3C /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMAXSD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3D /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMAXUW ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3E /r ; s:SSE4, t:SSE, w:RW|R, e:4
PMAXUD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x3F /r ; s:SSE4, t:SSE, w:RW|R, e:4
# 0x40 - 0x4F
PMULLD ; Vx,Wx ; n/a ; 0x66 0x0F 0x38 0x40 /r ; s:SSE4, t:SSE, w:RW|R, e:4
PHMINPOSUW ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0x41 /r ; s:SSE4, t:SSE, w:W|R, e:4
# 0x50 - 0x5F
# 0x60 - 0x6F
# 0x70 - 0x7F
# 0x80 - 0x8F
INVEPT ; Gy,Mdq ; Fv ; 0x66 0x0F 0x38 0x80 /r:mem ; s:VTX, t:VTX, w:R|R|W, f:VMX, a:F64|SERIAL, m:VMXROOT
INVVPID ; Gy,Mdq ; Fv ; 0x66 0x0F 0x38 0x81 /r:mem ; s:VTX, t:VTX, w:R|R|W, f:VMX, a:F64|SERIAL, m:VMXROOT
INVPCID ; Gy,Mdq ; n/a ; 0x66 0x0F 0x38 0x82 /r:mem ; s:INVPCID, t:MISC, w:R|R, a:F64, m:KERNEL|NOV86
# 0x90 - 0x9F
# 0xA0 - 0xAF
# 0xB0 - 0xBF
# 0xC0 - 0xCF
SHA1NEXTE ; Vdq,Wdq ; n/a ; NP 0x0F 0x38 0xC8 /r ; s:SHA, t:SHA, w:RW|R, e:4
SHA1MSG1 ; Vdq,Wdq ; n/a ; NP 0x0F 0x38 0xC9 /r ; s:SHA, t:SHA, w:RW|R, e:4
SHA1MSG2 ; Vdq,Wdq ; n/a ; NP 0x0F 0x38 0xCA /r ; s:SHA, t:SHA, w:RW|R, e:4
SHA256RNDS2 ; Vdq,Wdq ; XMM0 ; NP 0x0F 0x38 0xCB /r ; s:SHA, t:SHA, w:RW|R|R, e:4
SHA256MSG1 ; Vdq,Wdq ; n/a ; NP 0x0F 0x38 0xCC /r ; s:SHA, t:SHA, w:RW|R, e:4
SHA256MSG2 ; Vdq,Wdq ; n/a ; NP 0x0F 0x38 0xCD /r ; s:SHA, t:SHA, w:RW|R, e:4
GF2P8MULB ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xCF /r ; s:GFNI, t:GFNI, w:RW|R, e:4
# 0xD0 - 0xDF
AESENCWIDE128KL ; M384 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /0:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL
AESDECWIDE128KL ; M384 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /1:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL
AESENCWIDE256KL ; M512 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /2:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL
AESDECWIDE256KL ; M512 ; XMM0-7,Fv ; 0xF3 0x0F 0x38 0xD8 /3:mem ; s:KL, t:WIDE_KL, w:R|RW|W, f:AESKL
AESIMC ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xDB /r ; s:AES, t:AES, w:W|R, e:4
AESENC ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xDC /r ; s:AES, t:AES, w:RW|R, e:4
AESENC128KL ; Vdq,M384 ; Fv ; 0xF3 0x0F 0x38 0xDC /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL
LOADIWKEY ; Vdq,Udq ; EAX,XMM0,Fv ; 0xF3 0x0F 0x38 0xDC /r:reg ; s:KL, t:KL, w:R|R|R|R|W, f:AESKL, m:KERNEL
AESENCLAST ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xDD /r ; s:AES, t:AES, w:RW|R, e:4
AESDEC128KL ; Vdq,M384 ; Fv ; 0xF3 0x0F 0x38 0xDD /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL
AESDEC ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xDE /r ; s:AES, t:AES, w:RW|R, e:4
AESENC256KL ; Vdq,M512 ; Fv ; 0xF3 0x0F 0x38 0xDE /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL
AESDECLAST ; Vdq,Wdq ; n/a ; 0x66 0x0F 0x38 0xDF /r ; s:AES, t:AES, w:RW|R, e:4
AESDEC256KL ; Vdq,M512 ; Fv ; 0xF3 0x0F 0x38 0xDF /r:mem ; s:KL, t:AESKL, w:RW|R|W, f:AESKL
# 0xE0 - 0xEF
# 0xF0 - 0xFF
MOVBE ; Gv,Mv ; n/a ; 0x0F 0x38 0xF0 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R
MOVBE ; Gv,Mv ; n/a ; 0x66 0x0F 0x38 0xF0 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:S66
CRC32 ; Gy,Eb ; n/a ; 0xF2 0x0F 0x38 0xF0 /r ; s:SSE42, t:SSE, w:RW|R
CRC32 ; Gy,Eb ; n/a ; 0x66 0xF2 0x0F 0x38 0xF0 /r ; s:SSE42, t:SSE, w:RW|R, a:S66
MOVBE ; Mv,Gv ; n/a ; 0x0F 0x38 0xF1 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R
MOVBE ; Mv,Gv ; n/a ; 0x66 0x0F 0x38 0xF1 /r:mem ; s:MOVBE, t:DATAXFER, w:W|R, a:S66
CRC32 ; Gy,Ev ; n/a ; 0xF2 0x0F 0x38 0xF1 /r ; s:SSE42, t:SSE, w:RW|R
CRC32 ; Gy,Ev ; n/a ; 0x66 0xF2 0x0F 0x38 0xF1 /r ; s:SSE42, t:SSE, w:RW|R, a:S66
WRUSSD ; My,Gy ; n/a ; 0x66 0x0F 0x38 0xF5 /r:mem ; s:CET_SS, t:CET, c:WRUSS, a:SHS, w:W|R, m:KERNEL
WRUSSQ ; My,Gy ; n/a ; rexw 0x66 0x0F 0x38 0xF5 /r:mem ; s:CET_SS, t:CET, c:WRUSS, a:SHS, w:W|R, m:KERNEL
WRSSD ; My,Gy ; n/a ; NP 0x0F 0x38 0xF6 /r:mem ; s:CET_SS, t:CET, c:WRSS, a:SHS, w:W|R
WRSSQ ; My,Gy ; n/a ; rexw NP 0x0F 0x38 0xF6 /r:mem ; s:CET_SS, t:CET, c:WRSS, a:SHS, w:W|R
ADCX ; Gy,Ey ; Fv ; 0x66 0x0F 0x38 0xF6 /r ; s:ADX, t:ARITH, w:RW|R|RW, f:CF=m
ADOX ; Gy,Ey ; Fv ; 0xF3 0x0F 0x38 0xF6 /r ; s:ADX, t:ARITH, w:RW|R|RW, f:OF=m
MOVDIR64B ; rMoq,Moq ; n/a ; 0x66 0x0F 0x38 0xF8 /r:mem ; s:MOVDIR64B, t:MOVDIR64B, w:W|R
ENQCMD ; rM?,Moq ; Fv ; 0xF2 0x0F 0x38 0xF8 /r:mem ; s:ENQCMD, t:ENQCMD, w:W|R|W, f:ENQCMD
ENQCMDS ; rM?,Moq ; Fv ; 0xF3 0x0F 0x38 0xF8 /r:mem ; s:ENQCMD, t:ENQCMD, w:W|R|W, f:ENQCMD
MOVDIRI ; My,Gy ; n/a ; NP 0x0F 0x38 0xF9 /r:mem ; s:MOVDIRI, t:MOVDIRI, w:W|R
ENCODEKEY128 ; Gd,Rd ; XMM0,XMM0-2,XMM4-6,Fv ; 0xF3 0x0F 0x38 0xFA /r:reg ; s:KL, t:AESKL, w:W|R|R|W|W|W, f:ZERO
ENCODEKEY256 ; Gd,Rd ; XMM0-1,XMM2-6,Fv ; 0xF3 0x0F 0x38 0xFB /r:reg ; s:KL, t:AESKL, w:W|R|RW|W|W, f:ZERO
AADD ; My,Gy ; n/a ; NP 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R
AAND ; My,Gy ; n/a ; 0x66 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R
AOR ; My,Gy ; n/a ; 0xF2 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R
AXOR ; My,Gy ; n/a ; 0xF3 0x0F 0x38 0xFC /r:mem ; s:RAOINT, t:RAOINT, w:RW|R