@@ -435,9 +435,8 @@ def Vector_ShuffleOp
435435 from two input vectors, returning a vector with the same element type as
436436 the input and a length that is the same as the shuffle mask. The two input
437437 vectors must have the same element type, same rank, and trailing dimension
438- sizes and shuffles their values in the
439- leading dimension (which may differ in size) according to the given mask.
440- The legality rules are:
438+ sizes and shuffles their values in the leading dimension (which may differ
439+ in size) according to the given mask. The legality rules are:
441440 * the two operands must have the same element type as the result
442441 - Either, the two operands and the result must have the same
443442 rank and trailing dimension sizes, viz. given two k-D operands
@@ -448,8 +447,9 @@ def Vector_ShuffleOp
448447 * the mask length equals the leading dimension size of the result
449448 * numbering the input vector indices left to right across the operands, all
450449 mask values must be within range, viz. given two k-D operands v1 and v2
451- above, all mask values are in the range [0,s_1+t_1). -1 is used to
452- represent a poison mask value.
450+ above, all mask values are in the range [0,s_1+t_1). The value `-1`
451+ represents a poison mask value, which specifies that the selected element
452+ is poison.
453453
454454 Note, scalable vectors are not supported.
455455
@@ -706,6 +706,8 @@ def Vector_ExtractOp :
706706 %4 = vector.extract %0[%a, %b, %c]: f32 from vector<4x8x16xf32>
707707 %5 = vector.extract %0[2, %b]: vector<16xf32> from vector<4x8x16xf32>
708708 ```
709+
710+ TODO: Implement support for poison indices.
709711 }];
710712
711713 let arguments = (ins
@@ -896,6 +898,8 @@ def Vector_InsertOp :
896898 %11 = vector.insert %9, %10[%a, %b, %c] : vector<f32> into vector<4x8x16xf32>
897899 %12 = vector.insert %4, %10[2, %b] : vector<16xf32> into vector<4x8x16xf32>
898900 ```
901+
902+ TODO: Implement support for poison indices.
899903 }];
900904
901905 let arguments = (ins
@@ -986,6 +990,8 @@ def Vector_ScalableInsertOp :
986990 ```mlir
987991 %2 = vector.scalable.insert %0, %1[5] : vector<4xf32> into vector<[16]xf32>
988992 ```
993+
994+ TODO: Implement support for poison indices.
989995 }];
990996
991997 let assemblyFormat = [{
@@ -1037,6 +1043,8 @@ def Vector_ScalableExtractOp :
10371043 ```mlir
10381044 %1 = vector.scalable.extract %0[5] : vector<4xf32> from vector<[16]xf32>
10391045 ```
1046+
1047+ TODO: Implement support for poison indices.
10401048 }];
10411049
10421050 let assemblyFormat = [{
@@ -1081,6 +1089,8 @@ def Vector_InsertStridedSliceOp :
10811089 {offsets = [0, 0, 2], strides = [1, 1]}:
10821090 vector<2x4xf32> into vector<16x4x8xf32>
10831091 ```
1092+
1093+ TODO: Implement support for poison indices.
10841094 }];
10851095
10861096 let assemblyFormat = [{
@@ -1226,6 +1236,8 @@ def Vector_ExtractStridedSliceOp :
12261236 %1 = vector.extract_strided_slice %0[0:2:1][2:4:1]
12271237 vector<4x8x16xf32> to vector<2x4x16xf32>
12281238 ```
1239+
1240+ TODO: Implement support for poison indices.
12291241 }];
12301242 let builders = [
12311243 OpBuilder<(ins "Value":$source, "ArrayRef<int64_t>":$offsets,
0 commit comments