Synopsis

Declared in <llvm/IR/MatrixBuilder.h>

class MatrixBuilder;

Member Functions

Name

Description

MatrixBuilder [constructor]

Construct from IRBuilderBase

CreateAdd

Add matrixes LHS and RHS. Support both integer and floating point matrixes.

CreateColumnMajorLoad

Create a column major, strided matrix load. EltTy ‐ Matrix element type DataPtr ‐ Start address of the matrix read Rows ‐ Number of rows in matrix (must be a constant) Columns ‐ Number of columns in matrix (must be a constant) Stride ‐ Space between columns

CreateColumnMajorStore

Create a column major, strided matrix store. Matrix ‐ Matrix to store Ptr ‐ Pointer to write back to Stride ‐ Space between columns

CreateColumnMajorToRowMajorTransform

Create a row‐major matrix from a column‐major matrix with the given logical dimensions by transposing it. Assumes the matrix transpose assumes column‐major matrix memory layout, which is true in the case of the DirectX and SPIRV backends, but not necessarily true in the case of the LowerMatrixIntrinsics pass.

CreateIndex

Compute the index to access the element at (RowIdx, ColumnIdx) from a matrix with NumRows or NumCols embedded in a vector depending on matrix major ordering.

CreateIndexAssumption

Create an assumption that Idx is less than NumElements.

CreateMatrixInsert

Insert a single element NewVal into Matrix at indices (RowIdx, ColumnIdx).

CreateMatrixMultiply

Create a llvm.matrix.multiply call, multiplying matrixes LHS and RHS.

CreateMatrixTranspose

Create a llvm.matrix.transpose call, transposing Matrix with Rows rows and Columns columns.

CreateRowMajorToColumnMajorTransform

Create a column‐major matrix from a row‐major matrix with the given logical dimensions by transposing it. Assumes the matrix transpose assumes column‐major matrix memory layout, which is true in the case of the DirectX and SPIRV backends, but not necessarily true in the case of the LowerMatrixIntrinsics pass.

CreateScalarDiv

Divide matrix LHS by scalar RHS. If the operands are integers, IsUnsigned indicates whether UDiv or SDiv should be used.

CreateScalarMultiply

Multiply matrix LHS with scalar RHS or scalar LHS with matrix RHS.

CreateSub

Subtract matrixes LHS and RHS. Support both integer and floating point matrixes.

Created with MrDocs