MLIR  16.0.0git
Public Attributes | List of all members
mlir::linalg::TiledLinalgOp Struct Reference

Perform standalone tiling of a single LinalgOp by tileSizes. More...

#include "mlir/Dialect/Linalg/Transforms/Transforms.h"

+ Collaboration diagram for mlir::linalg::TiledLinalgOp:

Public Attributes

LinalgOp op
SmallVector< Operation *, 8 > loops
SmallVector< Value, 4 > tensorResults

Detailed Description

Perform standalone tiling of a single LinalgOp by tileSizes.

and permute the loop nest according to interchangeVector The permutation is expressed as a list of integers that specify the new ordering of the loop nest. The length of interchangeVector must be equal to the length of tileSizes. An empty vector is interpreted as the identity permutation and the transformation returns early.

Return a struct containing the tiled loops in the specified order and the cloned op if successful, llvm::None otherwise.

E.g. the permutation (i,j,k) -> (j,k,i) is expressed by interchangeVector = [1,2,0]. All values in interchangeVector must be integers, in the range 0..tileSizes.size() without duplications (i.e. [1,1,2] is an invalid permutation).

Definition at line 158 of file Transforms.h.

Member Data Documentation

◆ loops

SmallVector<Operation *, 8> mlir::linalg::TiledLinalgOp::loops

Definition at line 160 of file Transforms.h.

Referenced by parseTileLikeOp().

◆ op

LinalgOp mlir::linalg::TiledLinalgOp::op

Definition at line 159 of file Transforms.h.

Referenced by parseTileLikeOp(), and tileLinalgOpImpl().

◆ tensorResults

SmallVector<Value, 4> mlir::linalg::TiledLinalgOp::tensorResults

Definition at line 161 of file Transforms.h.

Referenced by tileLinalgOpImpl().

The documentation for this struct was generated from the following file: