Displaying 2 results from an estimated 2 matches for "shuffle_name".
2020 Jan 30
7
[RFC] Extending shufflevector for vscale vectors (SVE etc.)
...s isn't a comprehensive list of all shuffles we might want, but it's a reasonable starting point. The way the proposal is written, it should be easy to extend if we add more shuffles.
Proposed IR syntax:
%result = shufflevector <vscale x 4 x i32> %v1, <vscale x 4 x i32> %v2, SHUFFLE_NAME
SHUFFLE_NAME can be one of the following (with examples of the equivalent <4 x i32> shuffles):
splat - Splat element 0 of the first operand. (<0, 0, 0, 0>)
reverse - Reverse the elements of the first operand (<3, 2, 1, 0>)
concat - Concatenate the two operands (<0, 1, 2, 3, 4,...
2020 Feb 07
2
[RFC] Extending shufflevector for vscale vectors (SVE etc.)
..., and that isn't
> enough to express a scalable operation. For example, concatenating two
> fixed-length vectors currently looks like this:
> >
> > Proposed IR syntax:
> >
> > %result = shufflevector <vscale x 4 x i32> %v1, <vscale x 4 x i32> %v2,
> SHUFFLE_NAME
> >
> > Alternatives:
> >
> > Instead of extending shufflevector, we could introduce a dedicated
> intrinsic for each common shuffle. This is less readable, and makes it harder
> to leverage existing code that reasons about shuffles. But it would mean
> fewer chan...