Skip to content

vector.slice

← vector dialect

Extract a rank-preserving contiguous register subvector at explicit offsets. The offset list has one entry per source axis; each result axis extent describes how many lanes are kept from that source axis.

Operation contract

Property Value
Semantic phase —
Traits Pure
Target contracts register.permutation

Signature

Kind Name Type Cardinality Description
Operand source vector required —
Operand offsets index variadic —
Result result vector required —
Attribute static_offsets i64_array required Static offsets with INT64_MIN sentinels for dynamics.

Verification constraints

  • SameElementType(source, result)

Examples

%tail = vector.slice %v[%i] : vector<[%n]xf32> -> vector<4xf32>
%tile = vector.slice %v[0, 4] : vector<8x16xf32> -> vector<4x8xf32>