mirror of
https://github.com/xenia-project/xenia.git
synced 2026-07-11 01:24:34 +02:00
Moving disasm to new tables.
Also adding useful CPU docs.
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,610 @@
|
||||
2006/09/01 Revision 1.2
|
||||
-----------------------------------------------------------------
|
||||
|
||||
|
||||
This is a description of the VMX128-type opcodes found on
|
||||
the xbox360 processor. I figured this out by looking at
|
||||
various disassmblies, so there might some errors and
|
||||
missing instructions. Some instructions have unknown
|
||||
semantics for me.
|
||||
|
||||
See comments or corrections to sb#biallas.net
|
||||
|
||||
|
||||
=================================================================
|
||||
Conventions:
|
||||
VD128, VS128: 5 lower bits of a VMX128 vector register
|
||||
number
|
||||
VDh: upper 2 bits of VD128
|
||||
(so register number is (VDh << 5 | VD128))
|
||||
|
||||
VA128: same as VD128
|
||||
A: bit 6 of VA128
|
||||
a: bit 5 of VA128
|
||||
(so register number is (A<<6 | a<<5 | VA128))
|
||||
|
||||
VB128: same as VD128
|
||||
VBh: same as VDh
|
||||
|
||||
VC128: 3 bits of a VMX128 vector register number
|
||||
(you can only use vr0-vr7 here)
|
||||
|
||||
RA, RB: general purpose register number
|
||||
|
||||
UIMM: unsigned immediate value
|
||||
SIMM: signed immediate value
|
||||
|
||||
PERMh: upper 3 bits of a permutation
|
||||
PERMl: lower 5 bits of a permutation
|
||||
|
||||
x, y, z: unknown immediate values
|
||||
|
||||
=================================================================
|
||||
lvewx128 Load Vector128 Element Word Indexed
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |0 0 0 1 0 0 0|VDh|1 1|
|
||||
|
||||
lvewx128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvlx128 Load Vector128 Left Indexed
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |1 0 0 0 0 0 0|VDh|1 1|
|
||||
|
||||
lvlx128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvrx128 Load Vector128 Right Indexed
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |1 0 0 0 1 0 0|VDh|1 1|
|
||||
|
||||
lvrx128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvlxl128 Load Vector128 Left Indexed LRU
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |1 1 0 0 0 0 0|VDh|1 1|
|
||||
|
||||
lvlxl128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvrxl128 Load Vector128 Right Indexed LRU
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |1 1 0 0 1 0 0|VDh|1 1|
|
||||
|
||||
lvrxl128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvsl128 Load Vector128 for Shift Left
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |0 0 0 0 0 0 0|VDh|1 1|
|
||||
|
||||
lvsl128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvsr128 Load Vector128 for Shift Right
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |0 0 0 0 1 0 0|VDh|1 1|
|
||||
|
||||
lvsr128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvx128 Load Vector128 Indexed
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |0 0 0 1 1 0 0|VDh|1 1|
|
||||
|
||||
lvx128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
lvxl128 Load Vector128 Indexed LRU
|
||||
|0 0 0 1 0 0| VD128 | RA | RB |0 1 0 1 1 0 0|VDh|1 1|
|
||||
|
||||
lvxl128 vr(VD128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stewx128 Store Vector128 Element Word Indexed
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |0 1 1 0 0 0 0|VDh|1 1|
|
||||
|
||||
stvewx128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvlx128 Store Vector128 Left Indexed
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |1 0 1 0 0 0 0|VDh|1 1|
|
||||
|
||||
stvlx128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvlxl128 Store Vector128 Left Indexed LRU
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |1 1 1 0 0 0 0|VDh|1 1|
|
||||
|
||||
lvlxl128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvrx128 Store Vector128 Right Indexed
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |1 0 1 0 1 0 0|VDh|1 1|
|
||||
|
||||
stvrx128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvrxl128 Store Vector128 Right Indexed LRU
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |1 1 1 0 1 0 0|VDh|1 1|
|
||||
|
||||
stvrxl128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvx128 Store Vector128 Indexed
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |0 0 1 1 1 0 0|VDh|1 1|
|
||||
|
||||
stvx128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
stvxl128 Store Vector128 Indexed LRU
|
||||
|0 0 0 1 0 0| VS128 | RA | RB |0 1 1 1 1 0 0|VDh|1 1|
|
||||
|
||||
stvxl128 vr(VS128), r(RA), r(RB)
|
||||
|
||||
|
||||
=================================================================
|
||||
vaddfp128 Vector128 Add Floating Point
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 0 0 0|a|1|VDh|VBh|
|
||||
|
||||
vaddfp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vand128 Vector128 Logical AND
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 0 0|a|1|VDh|VBh|
|
||||
|
||||
vand128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vandc128 Vector128 Logical AND
|
||||
with Complement
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 1 0|a|1|VDh|VBh|
|
||||
|
||||
vandc128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcfpsxws128 Vector128 Convert From Floating-Point to
|
||||
Signed Fixed-Point Word Saturate
|
||||
|0 0 0 1 1 0| VD128 | SIMM | VB128 |0 1 0 0 0 1 1|VDh|VBh|
|
||||
|
||||
vcfpsxws128 vr(VD128), vr(VB128), SIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vcfpuxws128 Vector128 Convert From Floating-Point to
|
||||
Unsigned Fixed-Point Word Saturate
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |0 1 0 0 1 1 1|VDh|VBh|
|
||||
|
||||
vcfpuxws128 vr(VD128), vr(VB128), UIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vcmpbfp128 Vector128 Compare Bounds
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 1 1|R|a|0|VDh|VBh|
|
||||
|
||||
vcmpbfp128 vr(VD128), vr(VA128), vr(VB128) (R == 0)
|
||||
vcmpbfp128. vr(VD128), vr(VA128), vr(VB128) (R == 1)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcmpeqfp128 Vector128 Compare Equal-to
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 0 0|R|a|0|VDh|VBh|
|
||||
|
||||
vcmpeqfp128 vr(VD128), vr(VA128), vr(VB128) (R == 0)
|
||||
vcmpeqfp128. vr(VD128), vr(VA128), vr(VB128) (R == 1)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcmpequw128 Vector128 Compare Equal-to
|
||||
Unsigned Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 0 0|R|a|0|VDh|VBh|
|
||||
|
||||
vcmpequw128 vr(VD128), vr(VA128), vr(VB128) (R == 0)
|
||||
vcmpequw128. vr(VD128), vr(VA128), vr(VB128) (R == 1)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcmpgefp128 Vector128 Compare Greater-Than-
|
||||
or-Equal-to Floating Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 0 1|R|a|0|VDh|VBh|
|
||||
|
||||
vcmpgefp128 vr(VD128), vr(VA128), vr(VB128) (R == 0)
|
||||
vcmpgefp128. vr(VD128), vr(VA128), vr(VB128) (R == 1)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcmpgtfp128 Vector128 Compare Greater-Than
|
||||
Floating-Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 1 0|R|a|0|VDh|VBh|
|
||||
|
||||
vcmpgtfp128 vr(VD128), vr(VA128), vr(VB128) (R == 0)
|
||||
vcmpgtfp128. vr(VD128), vr(VA128), vr(VB128) (R == 1)
|
||||
|
||||
|
||||
=================================================================
|
||||
vcsxwfp128 Vector128 Convert From Signed Fixed-Point
|
||||
Word to Floating-Point
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |0 1 0 1 0 1 1|VDh|VBh|
|
||||
|
||||
vcsxwfp128 vr(VD128), vr(VB128), SIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vcuxwfp128 Vector128 Convert From Unsigned Fixed-Point
|
||||
Word to Floating-Point
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |0 1 0 1 1 1 1|VDh|VBh|
|
||||
|
||||
vcuxwfp128 vr(VD128), vr(VB128), UIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vexptefp128 Vector128 2 Raised to the Exponent
|
||||
Estimate Floating Point
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |1 1 0 1 0 1 1|VDh|VBh|
|
||||
|
||||
vexptefp128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vlogefp128 Vector128 Log2 Estimate
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |1 1 0 1 1 1 1|VDh|VBh|
|
||||
|
||||
vlogefp128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmaddcfp128 Vector128 Multiply Add
|
||||
Floating Point
|
||||
|0 0 0 1 0 1| VDS128 | VA128 | VB128 |A|0 1 0 0|a|1|VDh|VBh|
|
||||
|
||||
vmaddcfp128 vr(VDS128), vr(VA128), vr(VSD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmaddfp128 Vector128 Multiply Add
|
||||
Floating Point
|
||||
|0 0 0 1 0 1| VDS128 | VA128 | VB128 |A|0 0 1 1|a|1|VDh|VBh|
|
||||
|
||||
vmaddfp128 vr(VDS128), vr(VA128), vr(VB128), vr(VDS128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmaxfp128 Vector128 Maximum
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 0 1 0|a|0|VDh|VBh|
|
||||
|
||||
vmaxfp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vminfp128 Vector128 Minimum
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 0 1 1|a|0|VDh|VBh|
|
||||
|
||||
vminfp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmrghw128 Vector128 Merge High Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 1 0 0|a|0|VDh|VBh|
|
||||
|
||||
vmrghw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmrglw128 Vector128 Merge Low Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 1 0 1|a|0|VDh|VBh|
|
||||
|
||||
vmrglw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmsum3fp128 Vector128 Multiply Sum 3-way
|
||||
Floating Point
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 1 1 0|a|1|VDh|VBh|
|
||||
|
||||
vmsub3fp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmsum4fp128 Vector128 Multiply Sum 4-way
|
||||
Floating-Point
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 1 1 1|a|1|VDh|VBh|
|
||||
|
||||
vmsub4fp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vmulfp128 Vector128 Multiply
|
||||
Floating-Point
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 0 1 0|a|1|VDh|VBh|
|
||||
|
||||
vmulfp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vnmsubfp128 Vector128 Negative Multiply-Subtract
|
||||
Floating Point
|
||||
|0 0 0 1 0 1| VDS128 | VA128 | VB128 |A|0 1 0 1|a|1|VDh|VBh|
|
||||
|
||||
vnmsubfp128 vr(VDS128), vr(VA128), vr(VB128), vr(VDS128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vnor128 Vector128 Logical NOR
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 1 0|a|1|VDh|VBh|
|
||||
|
||||
vnor128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vor128 Vector128 Logical OR
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 1 1|a|1|VDh|VBh|
|
||||
|
||||
vor128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vperm128 Vector128 Permutation
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0| VC |a|0|VDh|VBh|
|
||||
|
||||
vperm128 vr(VD128), vr(VA128), vr(VB128), vr(VC)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpermwi128 Vector128 Permutate Word Immediate
|
||||
|0 0 0 1 1 0| VD128 | PERMl | VB128 |0|1|PERMh|0|1|VDh|VBh|
|
||||
|
||||
vpermwi128 vr(VD128), vr(VB128), (PERMh << 5 | PERMl)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkd3d128 Vector128 Pack D3Dtype, Rotate Left
|
||||
Immediate and Mask Insert
|
||||
|0 0 0 1 1 0| VD128 | x | y | VB128 |1 1 0| z |0 1|VDh|VBh|
|
||||
|
||||
vpkd3d128 vr(VD128), vr(VB128), x, y, z
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkshss128 Vector128 Pack Signed Half Word
|
||||
Signed Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 0 0|a|0|VDh|VBh|
|
||||
|
||||
vpkshss128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkshus128 Vector128 Pack Signed Half Word
|
||||
Unsigned Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 0 1|a|0|VDh|VBh|
|
||||
|
||||
vpkshus128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkswss128 Vector128 Pack Signed Word
|
||||
Signed Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 1 0|a|0|VDh|VBh|
|
||||
|
||||
vpkswss128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkswus128 Vector128 Pack Signed Word
|
||||
Unsigned Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 0 1 1|a|0|VDh|VBh|
|
||||
|
||||
vpkswus128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkuhum128 Vector128 Pack Unsigned Half Word
|
||||
Unsigned Modulo
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 0 0|a|0|VDh|VBh|
|
||||
|
||||
vpkuhum128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkuhus128 Vector128 Pack Unsigned Half Word
|
||||
Unsigned Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 0 1|a|0|VDh|VBh|
|
||||
|
||||
vpkuhus128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkuwum128 Vector128 Pack Unsigned Word
|
||||
Unsigned Modulo
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 1 0|a|0|VDh|VBh|
|
||||
|
||||
vpkuwum128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vpkuwus128 Vector128 Pack Unsigned Word
|
||||
Unsigned Saturate
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 1 1|a|0|VDh|VBh|
|
||||
|
||||
vpkuwus128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrefp128 Vector128 Reciprocal Estimate
|
||||
Floating Point
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |1 1 0 0 0 1 1|VDh|VBh|
|
||||
|
||||
vrefp128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrfim128 Vector128 Round to Floating-Point
|
||||
Integer toward -oo
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 0 0 1 1|VDh|VBh|
|
||||
|
||||
vrfim128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrfin128 Vector128 Round to Floating-Point
|
||||
Integer toward Nearest
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 0 1 1 1|VDh|VBh|
|
||||
|
||||
vrfin128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrfip128 Vector128 Round to Floating-Point
|
||||
Integer toward +oo
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 1 0 1 1|VDh|VBh|
|
||||
|
||||
vrfip128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrfiz128 Vector128 Round to Floating-Point
|
||||
Integer toward Zero
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 1 1 1 1|VDh|VBh|
|
||||
|
||||
vrfiz128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrlimi128 Vector128 Rotate Left Immediate
|
||||
and Mask Insert
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |1 1 1| z |0 1|VDh|VBh|
|
||||
|
||||
vrlimi128 vr(VD128), vr(VB128), UIMM, z
|
||||
|
||||
|
||||
=================================================================
|
||||
vrlw128 Vector128 Rotate Left Word
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 0 0 1|a|1|VDh|VBh|
|
||||
|
||||
vrlw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vrsqrtefp128 Vector128 Reciprocal Square Root
|
||||
Estimate Floating Point
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |1 1 0 0 1 1 1|VDh|VBh|
|
||||
|
||||
vrsqrtefp128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vsel128 Vector128 Select
|
||||
|0 0 0 1 0 1| VDS128 | VA128 | VB128 |A|1 1 0 1|a|1|VDh|VBh|
|
||||
|
||||
vsel128 vr(VDS128), vr(VA128), vr(VB128), vr(VDS128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vsldoi128 Vector128 Shift Left Double
|
||||
by Octet Immediate
|
||||
|0 0 0 1 0 0| VD128 | VA128 | VB128 |A| SHB |a|1|VDh|VBh|
|
||||
|
||||
vsldoi128 vr(VD128), vr(VA128), vr(VB128), SHB
|
||||
|
||||
|
||||
=================================================================
|
||||
vslo128 Vector128 Shift Left Octet
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 1 0|a|1|VDh|VBh|
|
||||
|
||||
vslo128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vslw128 Vector128 Shift Left Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 0 1 1|a|1|VDh|VBh|
|
||||
|
||||
vslw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vspltisw128 Vector128 Splat Immediate
|
||||
Signed Word
|
||||
|0 0 0 1 1 0| VD128 | SIMM | VB128 |1 1 1 0 1 1 1|VDh|VBh|
|
||||
|
||||
vspltisw128 vr(VD128), vr(VB128), SIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vspltw128 Vector128 Splat Word
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |1 1 1 0 0 1 1|VDh|VBh|
|
||||
|
||||
vspltw128 vr(VD128), vr(VB128), UIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vsraw128 Vector128 Shift Right
|
||||
Arithmetic Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 1 0 1|a|1|VDh|VBh|
|
||||
|
||||
vsraw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vsro128 Vector128 Shift Right Octet
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|1 1 1 1|a|1|VDh|VBh|
|
||||
|
||||
vsro128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vsrw128 Vector128 Shift Right Word
|
||||
|0 0 0 1 1 0| VD128 | VA128 | VB128 |A|0 1 1 1|a|1|VDh|VBh|
|
||||
|
||||
vsrw128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vsubfp128 Vector128 Subtract Floating Point
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|0 0 0 1|a|1|VDh|VBh|
|
||||
|
||||
vsubfp128 vr(VD128), vr(VA128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vupkd3d128 Vector128 Unpack D3Dtype
|
||||
|0 0 0 1 1 0| VD128 | UIMM | VB128 |1 1 1 1 1 1 1|VDh|VBh|
|
||||
|
||||
vupkd3d128 vr(VD128), vr(VB128), UIMM
|
||||
|
||||
|
||||
=================================================================
|
||||
vupkhsb128 Vector128 Unpack
|
||||
High Signed Byte
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 1 0 0 0|VDh|VBh|
|
||||
|
||||
vupkhsb128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vupklsb128 Vector128 Unpack
|
||||
Low Signed Byte
|
||||
|0 0 0 1 1 0| VD128 |0 0 0 0 0| VB128 |0 1 1 1 1 0 0|VDh|VBh|
|
||||
|
||||
vupkhsb128 vr(VD128), vr(VB128)
|
||||
|
||||
|
||||
=================================================================
|
||||
vxor128 Vector128 Logical XOR
|
||||
|0 0 0 1 0 1| VD128 | VA128 | VB128 |A|1 1 0 0|a|1|VDh|VBh|
|
||||
|
||||
vxor128 vr(VD128), vr(VA128), vr(VB128)
|
||||
Reference in New Issue
Block a user