vector.shuffle
← vector dialect
Reorder a static rank-1 vector with a static lane map. Entry i of source_lanes selects the source lane for result lane i; duplicate source lanes are allowed, but the result type is the same as the source type.
Operation contract
| Property |
Value |
| Semantic phase |
executable |
| Traits |
Pure |
Signature
| Kind |
Name |
Type |
Cardinality |
Description |
| Operand |
source |
vector |
required |
— |
| Result |
result |
vector |
required |
— |
| Attribute |
source_lanes |
i64_array |
required |
Source lane index for each result lane. |
Verification constraints
HasAllStaticRankOneVector(source)
SameType(source, result)
Examples
%rev = vector.shuffle<[3, 2, 1, 0]> %v : vector<4xf32>
%dup = vector.shuffle<[0, 0, 2, 2]> %v : vector<4xf32>