File tree Expand file tree Collapse file tree 1 file changed +13
-5
lines changed
mlir/lib/Dialect/Vector/Transforms Expand file tree Collapse file tree 1 file changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -645,15 +645,23 @@ static bool isLinearizable(Operation *op) {
645
645
// itself cannot be linearized (will create new shape_casts to linearize
646
646
// ad infinitum).
647
647
.Case <vector::ShapeCastOp>([&](auto ) { return false ; })
648
- // vector.extract_strided_slice, vector.extract, and vector.insert
649
- // operations are linearized to a rank-1 vector.shuffle by the current
650
- // patterns. vector.shuffle only supports fixed size vectors, so it is
651
- // impossible to use this approach to linearize these ops if they operate
652
- // on scalable vectors.
648
+ // The operations
649
+ // - vector.extract_strided_slice
650
+ // - vector.extract
651
+ // - vector.insert_strided_slice
652
+ // - vector.insert
653
+ // are linearized to a rank-1 vector.shuffle by the current patterns.
654
+ // vector.shuffle only supports fixed size vectors, so it is impossible to
655
+ // use this approach to linearize these ops if they operate on scalable
656
+ // vectors.
653
657
.Case <vector::ExtractStridedSliceOp>(
654
658
[&](vector::ExtractStridedSliceOp extractOp) {
655
659
return !extractOp.getType ().isScalable ();
656
660
})
661
+ .Case <vector::InsertStridedSliceOp>(
662
+ [&](vector::InsertStridedSliceOp insertOp) {
663
+ return !insertOp.getType ().isScalable ();
664
+ })
657
665
.Case <vector::InsertOp>([&](vector::InsertOp insertOp) {
658
666
return !insertOp.getType ().isScalable ();
659
667
})
You can’t perform that action at this time.
0 commit comments