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_xop.dat

197 lines
9.7 KiB

#
# Copyright (c) 2020 Bitdefender
# SPDX-License-Identifier: Apache-2.0
#
# XOP.mmmmm = 8
# 0x00 - 0x0F
# 0x10 - 0x1F
# 0x20 - 0x2F
# 0x30 - 0x3F
# 0x40 - 0x4F
# 0x50 - 0x5F
# 0x60 - 0x6F
# 0x70 - 0x7F
# 0x80 - 0x8F
VPMACSSWW ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x85 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSSWD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x86 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSSDQL ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x87 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSSDD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x8E /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSSDQH ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x8F /r is4 ; s:XOP, t:XOP, w:W|R|R|R
# 0x90 - 0x9F
VPMACSWW ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x95 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSWD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x96 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSDQL ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x97 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSDD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x9E /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMACSDQH ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0x9F /r is4 ; s:XOP, t:XOP, w:W|R|R|R
# 0xA0 - 0xAF
VPCMOV ; Vx,Hx,Wx,Lx ; ; xop m:8 w:0 0xA2 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPCMOV ; Vx,Hx,Lx,Wx ; ; xop m:8 w:1 0xA2 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPPERM ; Vx,Hx,Wx,Lx ; ; xop m:8 w:0 0xA3 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPPERM ; Vx,Hx,Lx,Wx ; ; xop m:8 w:1 0xA3 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
VPMADCSSWD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0xA6 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
# 0xB0 - 0xBF
VPMADCSWD ; Vdq,Hdq,Wdq,Ldq ; ; xop m:8 0xB6 /r is4 ; s:XOP, t:XOP, w:W|R|R|R
# 0xC0 - 0xCF
VPROTB ; Vdq,Wdq,Ib ; ; xop m:8 0xC0 /r ib ; s:XOP, t:XOP, w:W|R|R
VPROTW ; Vdq,Wdq,Ib ; ; xop m:8 0xC1 /r ib ; s:XOP, t:XOP, w:W|R|R
VPROTD ; Vdq,Wdq,Ib ; ; xop m:8 0xC2 /r ib ; s:XOP, t:XOP, w:W|R|R
VPROTQ ; Vdq,Wdq,Ib ; ; xop m:8 0xC3 /r ib ; s:XOP, t:XOP, w:W|R|R
VPCOMB ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xCC /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMW ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xCD /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMD ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xCE /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMQ ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xCF /r ib ; s:XOP, t:XOP, w:W|R|R|R
# 0xD0 - 0xDF
# 0xE0 - 0xEF
VPCOMUB ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xEC /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMUW ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xED /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMUD ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xEE /r ib ; s:XOP, t:XOP, w:W|R|R|R
VPCOMUQ ; Vdq,Hdq,Wdq,Ib ; ; xop m:8 0xEF /r ib ; s:XOP, t:XOP, w:W|R|R|R
# 0xF0 - 0xFF
# XOP.mmmmm = 9
# 0x00 - 0x0F
BLCFILL ; By,Ey ; ; xop m:9 0x01 /1 ; s:TBM, t:BITBYTE, w:RW|R
BLSFILL ; By,Ey ; ; xop m:9 0x01 /2 ; s:TBM, t:BITBYTE, w:RW|R
BLCS ; By,Ey ; ; xop m:9 0x01 /3 ; s:TBM, t:BITBYTE, w:RW|R
TZMSK ; By,Ey ; ; xop m:9 0x01 /4 ; s:TBM, t:BITBYTE, w:RW|R
BLCIC ; By,Ey ; ; xop m:9 0x01 /5 ; s:TBM, t:BITBYTE, w:RW|R
BLSIC ; By,Ey ; ; xop m:9 0x01 /6 ; s:TBM, t:BITBYTE, w:RW|R
T1MSKC ; By,Ey ; ; xop m:9 0x01 /7 ; s:TBM, t:BITBYTE, w:RW|R
BLCMSK ; By,Ey ; ; xop m:9 0x02 /1 ; s:TBM, t:BITBYTE, w:RW|R
BLCI ; By,Ey ; ; xop m:9 0x02 /6 ; s:TBM, t:BITBYTE, w:RW|R
# 0x10 - 0x1F
LLWPCB ; Ry ; ; xop m:9 0x12 /0:reg ; s:LWP, t:LWP, w:R
SLWPCB ; Ry ; ; xop m:9 0x12 /1:reg ; s:LWP, t:LWP, w:R
# 0x20 - 0x2F
# 0x30 - 0x3F
# 0x40 - 0x4F
# 0x50 - 0x5F
# 0x60 - 0x6F
# 0x70 - 0x7F
# 0x80 - 0x8F
VFRCZPS ; Vx,Wx ; ; xop m:9 0x80 /r ; s:XOP, t:XOP, w:W|R
VFRCZPD ; Vx,Wx ; ; xop m:9 0x81 /r ; s:XOP, t:XOP, w:W|R
VFRCZSS ; Vdq,Wss ; ; xop m:9 0x82 /r ; s:XOP, t:XOP, w:W|R
VFRCZSD ; Vdq,Wsd ; ; xop m:9 0x83 /r ; s:XOP, t:XOP, w:W|R
VPSHAB ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x98 /r ; s:XOP, t:XOP, w:W|R|R
VPSHAB ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x98 /r ; s:XOP, t:XOP, w:W|R|R
VPSHAW ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x99 /r ; s:XOP, t:XOP, w:W|R|R
VPSHAW ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x99 /r ; s:XOP, t:XOP, w:W|R|R
VPSHAD ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x9A /r ; s:XOP, t:XOP, w:W|R|R
VPSHAD ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x9A /r ; s:XOP, t:XOP, w:W|R|R
VPSHAQ ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x9B /r ; s:XOP, t:XOP, w:W|R|R
VPSHAQ ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x9B /r ; s:XOP, t:XOP, w:W|R|R
# 0x90 - 0x9F
VPROTB ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x90 /r ; s:XOP, t:XOP, w:W|R|R
VPROTB ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x90 /r ; s:XOP, t:XOP, w:W|R|R
VPROTW ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x91 /r ; s:XOP, t:XOP, w:W|R|R
VPROTW ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x91 /r ; s:XOP, t:XOP, w:W|R|R
VPROTD ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x92 /r ; s:XOP, t:XOP, w:W|R|R
VPROTD ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x92 /r ; s:XOP, t:XOP, w:W|R|R
VPROTQ ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x93 /r ; s:XOP, t:XOP, w:W|R|R
VPROTQ ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x93 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLB ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x94 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLB ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x94 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLW ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x95 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLB ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x95 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLD ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x96 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLB ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x96 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLQ ; Vdq,Wdq,Hdq ; ; xop m:9 w:0 0x97 /r ; s:XOP, t:XOP, w:W|R|R
VPSHLQ ; Vdq,Hdq,Wdq ; ; xop m:9 w:1 0x97 /r ; s:XOP, t:XOP, w:W|R|R
# 0xA0 - 0xAF
# 0xB0 - 0xBF
# 0xC0 - 0xCF
VPHADDBW ; Vdq,Wdq ; ; xop m:9 0xC1 /r ; s:XOP, t:XOP, w:W|R
VPHADDBD ; Vdq,Wdq ; ; xop m:9 0xC2 /r ; s:XOP, t:XOP, w:W|R
VPHADDBQ ; Vdq,Wdq ; ; xop m:9 0xC3 /r ; s:XOP, t:XOP, w:W|R
VPHADDWD ; Vdq,Wdq ; ; xop m:9 0xC6 /r ; s:XOP, t:XOP, w:W|R
VPHADDWQ ; Vdq,Wdq ; ; xop m:9 0xC7 /r ; s:XOP, t:XOP, w:W|R
VPHADDDQ ; Vdq,Wdq ; ; xop m:9 0xCB /r ; s:XOP, t:XOP, w:W|R
# 0xD0 - 0xDF
VPHADDUBW ; Vdq,Wdq ; ; xop m:9 0xD1 /r ; s:XOP, t:XOP, w:W|R
VPHADDUBD ; Vdq,Wdq ; ; xop m:9 0xD2 /r ; s:XOP, t:XOP, w:W|R
VPHADDUBQ ; Vdq,Wdq ; ; xop m:9 0xD3 /r ; s:XOP, t:XOP, w:W|R
VPHADDUWD ; Vdq,Wdq ; ; xop m:9 0xD6 /r ; s:XOP, t:XOP, w:W|R
VPHADDUWQ ; Vdq,Wdq ; ; xop m:9 0xD7 /r ; s:XOP, t:XOP, w:W|R
VPHADDUDQ ; Vdq,Wdq ; ; xop m:9 0xDB /r ; s:XOP, t:XOP, w:W|R
# 0xE0 - 0xEF
VPHSUBBW ; Vdq,Wdq ; ; xop m:9 0xE1 /r ; s:XOP, t:XOP, w:W|R
VPHSUBWD ; Vdq,Wdq ; ; xop m:9 0xE2 /r ; s:XOP, t:XOP, w:W|R
VPHSUBDQ ; Vdq,Wdq ; ; xop m:9 0xE3 /r ; s:XOP, t:XOP, w:W|R
# 0xF0 - 0xFF
# XOP.mmmmm = 0xA
# 0x00 - 0x0F
# 0x10 - 0x1F
BEXTR ; Gy,Ey,Id ; ; xop m:A 0x10 /r id ; s:TBM, t:BITBYTE, w:RW|R|R
LWPINS ; By,Ed,Id ; ; xop m:A 0x12 /0 id ; s:LWP, t:LWP, w:RW|R|R
LWPVAL ; By,Ed,Id ; ; xop m:A 0x12 /1 id ; s:LWP, t:LWP, w:RW|R|R
# 0x20 - 0x2F
# 0x30 - 0x3F
# 0x40 - 0x4F
# 0x50 - 0x5F
# 0x60 - 0x6F
# 0x70 - 0x7F
# 0x80 - 0x8F
# 0x90 - 0x9F
# 0xA0 - 0xAF
# 0xB0 - 0xBF
# 0xC0 - 0xCF
# 0xD0 - 0xDF
# 0xE0 - 0xEF
# 0xF0 - 0xFF