@@ -40,7 +40,7 @@ def Vector_ContractionOp :
4040 DeclareOpInterfaceMethods<MaskableOpInterface>,
4141 DeclareOpInterfaceMethods<VectorUnrollOpInterface, ["getShapeForUnroll"]>
4242 ]>,
43- Arguments<(ins AnyVector :$lhs, AnyVector :$rhs, AnyType:$acc,
43+ Arguments<(ins AnyVectorOfNonZeroRank :$lhs, AnyVectorOfNonZeroRank :$rhs, AnyType:$acc,
4444 ArrayAttr:$indexing_maps,
4545 Vector_IteratorTypeArrayAttr:$iterator_types,
4646 DefaultValuedAttr<Vector_CombiningKindAttr,
@@ -285,7 +285,7 @@ def Vector_MultiDimReductionOp :
285285 DeclareOpInterfaceMethods<VectorUnrollOpInterface,
286286 ["getShapeForUnroll"]>]>,
287287 Arguments<(ins Vector_CombiningKindAttr:$kind,
288- AnyVector :$source,
288+ AnyVectorOfNonZeroRank :$source,
289289 AnyType:$acc,
290290 DenseI64ArrayAttr:$reduction_dims)>,
291291 Results<(outs AnyType:$dest)> {
@@ -428,7 +428,7 @@ def Vector_ShuffleOp
428428 InferTypeOpAdaptor]>,
429429 Arguments<(ins AnyFixedVectorOfAnyRank:$v1, AnyFixedVectorOfAnyRank:$v2,
430430 DenseI64ArrayAttr:$mask)>,
431- Results<(outs AnyVector :$vector)> {
431+ Results<(outs AnyVectorOfNonZeroRank :$vector)> {
432432 let summary = "shuffle operation";
433433 let description = [{
434434 The shuffle operation constructs a permutation (or duplication) of elements
@@ -533,7 +533,7 @@ def Vector_InterleaveOp :
533533 }];
534534
535535 let arguments = (ins AnyVectorOfAnyRank:$lhs, AnyVectorOfAnyRank:$rhs);
536- let results = (outs AnyVector :$result);
536+ let results = (outs AnyVectorOfNonZeroRank :$result);
537537
538538 let assemblyFormat = [{
539539 $lhs `,` $rhs attr-dict `:` type($lhs) `->` type($result)
@@ -612,8 +612,8 @@ def Vector_DeinterleaveOp :
612612 ```
613613 }];
614614
615- let arguments = (ins AnyVector :$source);
616- let results = (outs AnyVector :$res1, AnyVector :$res2);
615+ let arguments = (ins AnyVectorOfNonZeroRank :$source);
616+ let results = (outs AnyVectorOfNonZeroRank :$res1, AnyVectorOfNonZeroRank :$res2);
617617
618618 let assemblyFormat = [{
619619 $source attr-dict `:` type($source) `->` type($res1)
@@ -1050,9 +1050,9 @@ def Vector_InsertStridedSliceOp :
10501050 PredOpTrait<"operand #0 and result have same element type",
10511051 TCresVTEtIsSameAsOpBase<0, 0>>,
10521052 AllTypesMatch<["dest", "res"]>]>,
1053- Arguments<(ins AnyVector :$source, AnyVector :$dest, I64ArrayAttr:$offsets,
1053+ Arguments<(ins AnyVectorOfNonZeroRank :$source, AnyVectorOfNonZeroRank :$dest, I64ArrayAttr:$offsets,
10541054 I64ArrayAttr:$strides)>,
1055- Results<(outs AnyVector :$res)> {
1055+ Results<(outs AnyVectorOfNonZeroRank :$res)> {
10561056 let summary = "strided_slice operation";
10571057 let description = [{
10581058 Takes a k-D source vector, an n-D destination vector (n >= k), n-sized
@@ -1109,10 +1109,10 @@ def Vector_OuterProductOp :
11091109 PredOpTrait<"rhs operand and result have same element type",
11101110 TCresVTEtIsSameAsOpBase<0, 1>>,
11111111 DeclareOpInterfaceMethods<MaskableOpInterface>]>,
1112- Arguments<(ins AnyVector :$lhs, AnyType:$rhs,
1113- Optional<AnyVector >:$acc,
1112+ Arguments<(ins AnyVectorOfNonZeroRank :$lhs, AnyType:$rhs,
1113+ Optional<AnyVectorOfNonZeroRank >:$acc,
11141114 DefaultValuedAttr<Vector_CombiningKindAttr, "CombiningKind::ADD">:$kind)>,
1115- Results<(outs AnyVector )> {
1115+ Results<(outs AnyVectorOfNonZeroRank )> {
11161116 let summary = "vector outerproduct with optional fused add";
11171117 let description = [{
11181118 Takes 2 1-D vectors and returns the 2-D vector containing the outer-product,
@@ -1192,9 +1192,9 @@ def Vector_ExtractStridedSliceOp :
11921192 Vector_Op<"extract_strided_slice", [Pure,
11931193 PredOpTrait<"operand and result have same element type",
11941194 TCresVTEtIsSameAsOpBase<0, 0>>]>,
1195- Arguments<(ins AnyVector :$vector, I64ArrayAttr:$offsets,
1195+ Arguments<(ins AnyVectorOfNonZeroRank :$vector, I64ArrayAttr:$offsets,
11961196 I64ArrayAttr:$sizes, I64ArrayAttr:$strides)>,
1197- Results<(outs AnyVector )> {
1197+ Results<(outs AnyVectorOfNonZeroRank )> {
11981198 let summary = "extract_strided_slice operation";
11991199 let description = [{
12001200 Takes an n-D vector, k-D `offsets` integer array attribute, a k-sized
@@ -1256,7 +1256,7 @@ def Vector_TransferReadOp :
12561256 Variadic<Index>:$indices,
12571257 AffineMapAttr:$permutation_map,
12581258 AnyType:$padding,
1259- Optional<VectorOf <[I1]>>:$mask,
1259+ Optional<VectorOfNonZeroRankOf <[I1]>>:$mask,
12601260 BoolArrayAttr:$in_bounds)>,
12611261 Results<(outs AnyVectorOfAnyRank:$vector)> {
12621262
@@ -1504,7 +1504,7 @@ def Vector_TransferWriteOp :
15041504 AnyShaped:$source,
15051505 Variadic<Index>:$indices,
15061506 AffineMapAttr:$permutation_map,
1507- Optional<VectorOf <[I1]>>:$mask,
1507+ Optional<VectorOfNonZeroRankOf <[I1]>>:$mask,
15081508 BoolArrayAttr:$in_bounds)>,
15091509 Results<(outs Optional<AnyRankedTensor>:$result)> {
15101510
@@ -1827,9 +1827,9 @@ def Vector_MaskedLoadOp :
18271827 Vector_Op<"maskedload">,
18281828 Arguments<(ins Arg<AnyMemRef, "", [MemRead]>:$base,
18291829 Variadic<Index>:$indices,
1830- VectorOf <[I1]>:$mask,
1831- AnyVector :$pass_thru)>,
1832- Results<(outs AnyVector :$result)> {
1830+ VectorOfNonZeroRankOf <[I1]>:$mask,
1831+ AnyVectorOfNonZeroRank :$pass_thru)>,
1832+ Results<(outs AnyVectorOfNonZeroRank :$result)> {
18331833
18341834 let summary = "loads elements from memory into a vector as defined by a mask vector";
18351835
@@ -1890,8 +1890,8 @@ def Vector_MaskedStoreOp :
18901890 Vector_Op<"maskedstore">,
18911891 Arguments<(ins Arg<AnyMemRef, "", [MemWrite]>:$base,
18921892 Variadic<Index>:$indices,
1893- VectorOf <[I1]>:$mask,
1894- AnyVector :$valueToStore)> {
1893+ VectorOfNonZeroRankOf <[I1]>:$mask,
1894+ AnyVectorOfNonZeroRank :$valueToStore)> {
18951895
18961896 let summary = "stores elements from a vector into memory as defined by a mask vector";
18971897
@@ -1953,10 +1953,10 @@ def Vector_GatherOp :
19531953 ]>,
19541954 Arguments<(ins Arg<AnyShaped, "", [MemRead]>:$base,
19551955 Variadic<Index>:$indices,
1956- VectorOf <[AnyInteger, Index]>:$index_vec,
1957- VectorOf <[I1]>:$mask,
1958- AnyVector :$pass_thru)>,
1959- Results<(outs AnyVector :$result)> {
1956+ VectorOfNonZeroRankOf <[AnyInteger, Index]>:$index_vec,
1957+ VectorOfNonZeroRankOf <[I1]>:$mask,
1958+ AnyVectorOfNonZeroRank :$pass_thru)>,
1959+ Results<(outs AnyVectorOfNonZeroRank :$result)> {
19601960
19611961 let summary = [{
19621962 gathers elements from memory or ranked tensor into a vector as defined by an
@@ -2084,9 +2084,9 @@ def Vector_ExpandLoadOp :
20842084 Vector_Op<"expandload">,
20852085 Arguments<(ins Arg<AnyMemRef, "", [MemRead]>:$base,
20862086 Variadic<Index>:$indices,
2087- VectorOf <[I1]>:$mask,
2088- AnyVector :$pass_thru)>,
2089- Results<(outs AnyVector :$result)> {
2087+ VectorOfNonZeroRankOf <[I1]>:$mask,
2088+ AnyVectorOfNonZeroRank :$pass_thru)>,
2089+ Results<(outs AnyVectorOfNonZeroRank :$result)> {
20902090
20912091 let summary = "reads elements from memory and spreads them into a vector as defined by a mask";
20922092
@@ -2151,8 +2151,8 @@ def Vector_CompressStoreOp :
21512151 Vector_Op<"compressstore">,
21522152 Arguments<(ins Arg<AnyMemRef, "", [MemWrite]>:$base,
21532153 Variadic<Index>:$indices,
2154- VectorOf <[I1]>:$mask,
2155- AnyVector :$valueToStore)> {
2154+ VectorOfNonZeroRankOf <[I1]>:$mask,
2155+ AnyVectorOfNonZeroRank :$valueToStore)> {
21562156
21572157 let summary = "writes elements selectively from a vector as defined by a mask";
21582158
@@ -2510,7 +2510,7 @@ def Vector_MaskOp : Vector_Op<"mask", [
25102510 }];
25112511
25122512 // TODO: Support multiple passthru values.
2513- let arguments = (ins VectorOf <[I1]>:$mask,
2513+ let arguments = (ins VectorOfNonZeroRankOf <[I1]>:$mask,
25142514 Optional<AnyType>:$passthru);
25152515 let results = (outs Variadic<AnyType>:$results);
25162516 let regions = (region SizedRegion<1>:$maskRegion);
@@ -2893,11 +2893,11 @@ def Vector_ScanOp :
28932893 AllTypesMatch<["source", "dest"]>,
28942894 AllTypesMatch<["initial_value", "accumulated_value"]> ]>,
28952895 Arguments<(ins Vector_CombiningKindAttr:$kind,
2896- AnyVector :$source,
2896+ AnyVectorOfNonZeroRank :$source,
28972897 AnyVectorOfAnyRank:$initial_value,
28982898 I64Attr:$reduction_dim,
28992899 BoolAttr:$inclusive)>,
2900- Results<(outs AnyVector :$dest,
2900+ Results<(outs AnyVectorOfNonZeroRank :$dest,
29012901 AnyVectorOfAnyRank:$accumulated_value)> {
29022902 let summary = "Scan operation";
29032903 let description = [{
0 commit comments