[Libre-soc-dev] sv.mv x: the instruction from hell
lkcl
luke.leighton at gmail.com
Wed Jun 8 17:46:53 BST 2022
On Wed, Jun 8, 2022 at 5:38 PM Jacob Lifshay <programmerjake at gmail.com> wrote:
>
> On Sun, Jun 5, 2022, 06:24 lkcl <luke.leighton at gmail.com> wrote:
>>
>>
>> https://libre-soc.org/openpower/sv/shape_table_format/
>
>
> I read through the changes, one thing we will need is for there to be a version of indexed remap where the source register is remapped, not the dest. This is because that's how dynamic swizzle works on basically every other vector architecture -- it allows duplicating elements, unlike dest register remap.
yes, that's how i designed it. the [new] svindex instruction has a
5-bit mask which says whether the Indexing is to be applied to RA, RB,
RC, RT or RS.
therefore all that needs to be done is to set svindex mask=RT rather
than svindex mask=RA. as a bitmask you can also do svindex mask=RT,RA
however a different mode of operation is needed if you want
*different* Index Maps to be applied to different Vectors: that
requires two separate svindex instructions, giving different Maps.
this is the full page https://libre-soc.org/openpower/sv/remap/
btw i'm putting REMAP on the "Advanced" Compliancy Level
https://libre-soc.org/openpower/sv/compliancy_levels/
l.
More information about the Libre-soc-dev
mailing list