vector.reduce.axes
← vector dialect
Reduce the explicit source axes of a vector while preserving the remaining axes in their original order. The init operand and result have the same type: scalar when every source axis is reduced, or a vector whose shape is the source shape with the reduced axes removed. Optional fastmath flags carry the same floating-point permissions as scalar arithmetic.
Operation contract
| Property |
Value |
| Semantic phase |
executable |
| Traits |
Pure |
Signature
| Kind |
Name |
Type |
Cardinality |
Description |
| Operand |
input |
vector |
required |
— |
| Operand |
init |
any |
required |
— |
| Result |
result |
any |
required |
— |
| Attribute |
kind |
enum CombiningKind |
required |
— |
| Attribute |
fastmath |
flags FastMathFlags |
optional |
— |
| Attribute |
axes |
i64_array |
required |
— |
Verification constraints
SameType(init, result)
SameElementType(input, init, result)
Examples
%cols = vector.reduce.axes<addf> %src, %init axes [0] : vector<4x8xf32>, vector<8xf32>
%sum = vector.reduce.axes<addf> %src, %zero axes [0, 1] : vector<4x8xf32>, f32