Lines Matching defs:tile
11 // Note: In the context of this pass 'tile' always refers to an SME tile.
44 // Decomposition of vector operations larger than an SME tile
57 /// An SMESubTile represents a single SME-sized sub-tile from decomposing a
58 /// larger vector type. The (`row`, `col`) are the position of the tile in the
59 /// original vector type. For example for an [8]x[8] tile with four [4]x[4]
74 // The SME tile type.
99 /// indices for each tile would need to be adjusted as follows:
123 /// Extracts a mask for an SME sub-tile from the mask of a larger vector type.
131 // coordinates where the mask ends. So we subtract where this tile starts,
132 // from the mask operands to get the parameters for this sub-tile.
140 /// Constructs an iterator that returns each SME tile (with coordinates)
174 /// tiles by decomposing them into tile-sized operations.
203 /// decomposing them into tile-sized operations.
283 /// decomposing them into tile-sized operations.
331 /// decomposing them into tile-sized operations.
383 /// Legalize a multi-tile transfer_write as a single store loop. This is done as
384 /// part of type decomposition as at this level we know each tile write is
399 /// %upper_slice = vector.extract %upper_tile[%slice_idx] |- Store upper tile
408 /// : vector<[8]xi16> from vector<[8]x[8]xi16> | tile
452 // Get SME tile and slice types.
458 // Create loop over all tile slices.
466 // For each sub-tile of the multi-tile `vectorType`.
471 // The coordinates of the tile within `vectorType`.
496 Value tile = inputSMETiles[index];
498 rewriter.create<vector::ExtractOp>(loc, tile, tileSliceIndex);
808 /// Values larger than a single tile are supported via decomposition.
862 // of slices from the source type into the SME tile. Without checking
864 // rows of the tile after 1*vscale rows.
865 Value tile = undefTile;
874 tile = rewriter.create<vector::InsertOp>(loc, vector, tile, d);
877 // 2. Transpose the tile position.
882 // 3. Compute mask for tile store.
900 // 4. Emit a transposed tile write.
907 loc, tile, destTensorOrMemref, ValueRange{destRow, destCol},
954 // - Multi-tile writes are lowered as a store loop (if possible)