Lines Matching defs:subview
613 /// operations are typically inserted as `view` and `subview` ops are
1010 assert(succeeded(unusedDims) && "unable to find unused dims of subview");
1055 if (auto subview = dyn_cast_or_null<SubViewOp>(definingOp)) {
1056 llvm::SmallBitVector unusedDims = subview.getDroppedDims();
1058 unsigned sourceRank = subview.getSourceType().getRank();
1069 assert(subview.isDynamicSize(sourceIndex) &&
1070 "expected dynamic subview size");
1071 return subview.getDynamicSize(sourceIndex);
1077 "Expected dynamic subview size");
1878 // completed automatically, like we have for subview and extract_slice.
1944 // reinterpret_cast(subview(x)) -> reinterpret_cast(x) if subview offsets
2692 setNameFn(getResult(), "subview");
2695 /// A subview result type can be fully inferred from the source type and the
2968 llvm_unreachable("unexpected subview verification result");
2980 << baseType << " and subview memref type " << subViewType;
3128 /// Helper method to check if a `subview` operation is trivially a no-op. This
3130 /// shape is same as the size of the subview. In such cases, the subview can
3166 /// Pattern to rewrite a subview op with MemRefCast arguments.
3167 /// This essentially pushes memref.cast past its consuming subview when
3173 /// %1 = memref.subview %0[0, 0][3, 4][1, 1] :
3178 /// %0 = memref.subview %V: memref<16x16xf32> to memref<3x4xf32, #[[map0]]>
3225 /// Canonicalize subview ops that are no-ops. When the source shape is not
3246 /// Return the canonical type of the result of a subview.
3310 // Fold subview(subview(x)), where both subviews have the same size and the
3311 // second subview's offsets are all zero. (I.e., the second subview is a