Displaying 2 results from an estimated 2 matches for "rolx".
Did you mean:
role
2018 Jul 02
2
Rotates, once again
...funnel shifts.
I looked over some of the ISAs I have docs at hand for:
- x86 (32b/64b variants) has SHRD/SHLD, so both right and left variants.
Count is modulo (mod 32 for 32b instruction variants, mod 64 for 64b
instruction variants). As of BMI2, we also get RORX (non-flag-setting
ROR) but no ROLX.
- ARM AArch64 has EXTR, which is a right funnel shift, but shift
distances must be literal constants. EXTR with both source registers
equal disassembles as ROR and is often special-cased in implementations.
(EXTR with source 1 != source 2 often has an extra cycle of latency).
There is RORV wh...
2018 Jul 02
2
Rotates, once again
1. I'm not sure what you mean by "full vector" here - using the same
shift distance for all lanes (as opposed to per-lane distances), or
doing a treat-the-vector-as-bag-of-bits shift that doesn't have any
internal lane boundaries? If the latter, that doesn't really help you
much with implementing a per-lane rotate.
I think the most useful generalization of a vector