2 Comments
User's avatar
camel-cdr's avatar

With Zvbb, you could also use a vrotl for SEW<64.

Unrolled LMUL=1 vrgather could also work quite well.

Another idea would be something like `vcreate(vop(vsnrl(a,0),vnsrl(b,8)),voo(vnsrl(a,8), vnsrl(b, 0)))`

This would pair up all even elements in a with odd elements in b, and the other way around.

Expand full comment
FPRox's avatar

The vector rotation is definitely a nice tric (and with a single instruction on top of that), unfortunately the K230 does not implement it :-(

Expand full comment