llvm::TileInfo

A helper struct to create IR loop nests for tiling in IR of the following form: for ColumnLoop.Index = 0..NumColumns for RowLoop.Index = 0..NumRows for KLoop.Index = 0..NumInner

Synopsis

Declared in <llvm/Transforms/Utils/MatrixUtils.h>

struct TileInfo;

Types

NameDescription
MatrixLoop Properties of a single loop used when generating the tiled loop nest.

Member Functions

NameDescription
TileInfo [constructor]
CreateTiledLoops Creates an IR loop nests for tiling of the form below. Returns the block for the inner loop body and sets {Column,Row,Inner}LoopHeader/Latch fields.

Data Members

NameDescription
ColumnLoop The loop iterating on the columns.
KLoop The loop iterating on k (inner dimension).
NumColumns Number of columns of the matrix.
NumInner Number of columns of the first matrix of a multiply / number of rows of the second matrix of a multiply.
NumRows Number of rows of the matrix.
RowLoop The loop iterating on the rows.
TileSize Number of rows/columns in a tile.