On 11/16/2009 06:37 PM, Joern Rennecke wrote:
Variable permutations could be very useful for doing vector operations on
unaligned inputs. To some degrees shifts can be used, but if they only have
C semantics you'll get corner cases with word-sized shifts when the
input is actually aligned.
I'm assuming at this point that generic code will (continue to) use the
MISALIGNED_INDIRECT_REF operation to load-and-realign such inputs. The
ppc port does in fact use its variable permutation insn to implement
this instruction. This special case is fairly important for targets
that don't implement the fully general variable permute.
(Curiously, the spu port fails to implement movmisalign<mode>.)
r~