X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=simple_v_extension%2Fspecification%2Fmv.x.rst;h=4ff6dba0f96b7b30b8cc9fdece70ba0c82a4e2b8;hb=79f8b9716a0bda97550375b3629e7bf7cf12db20;hp=5976f7586850637bda61332e3820dcb0f49b0455;hpb=126f482f463d01331c2b61ec2e0aca37b94bd82a;p=libreriscv.git diff --git a/simple_v_extension/specification/mv.x.rst b/simple_v_extension/specification/mv.x.rst index 5976f7586..4ff6dba0f 100644 --- a/simple_v_extension/specification/mv.x.rst +++ b/simple_v_extension/specification/mv.x.rst @@ -243,10 +243,9 @@ note how for [f]swizzle, rs3 == rs1 so it uses 5 funct3 values overall, which is appropriate, since swizzle is probably right after muladd in usage in graphics shaders. -Alternative +Alternative immed encoding - -+--------+----+-----------+----------+-------+-------+------+ ++--------+-----------+----------+-------+-------+------+ | int/fp | 31:28 | 27:20 | 19:15 | 14:12 | 11:7 | +========+===========+==========+=======+=======+======+ | int | DESTMASK | selector | rs | 000 | rd | @@ -258,6 +257,9 @@ Alternative | fp | DESTMASK | constsel | rs | 011 | rd | +--------+-----------+----------+-------+-------+------+ +Allows setting of arbitrary dest (xz, yw) without needing register-versions. Saves on instruction count. +Needs 4 funct3 to express. + Matrix 4x4 Vector mul =====================