MLIR 22.0.0git
mlir::gpu::MMAMatrixStorageType Struct Reference

MMAMatrixType storage and uniquing. More...

#include "mlir/Dialect/GPU/IR/GPUDialect.h"

Inheritance diagram for mlir::gpu::MMAMatrixStorageType:

Public Types

using KeyTy = std::tuple<ArrayRef<int64_t>, Type, StringRef>
 The hash key for uniquing.

Public Member Functions

 MMAMatrixStorageType (unsigned numDims, const int64_t *dimShapes, Type elementType, StringRef operand)
bool operator== (const KeyTy &key) const
ArrayRef< int64_tgetShape () const
StringRef getOperand () const
Public Member Functions inherited from mlir::TypeStorage
const AbstractTypegetAbstractType ()
 Return the abstract type descriptor for this type.

Static Public Member Functions

static MMAMatrixStorageTypeconstruct (TypeStorageAllocator &allocator, const KeyTy &key)
 Construction.

Public Attributes

const int64_tdimShapes
 Reference to the shape of the MMA matrix.
unsigned numDims
 Number of dimensions in the MMA matrix.
Type elementType
 Element type of elements held in the MMA matrix.
StringRef operand
 MMA operand that this MMAMatrix holds.

Additional Inherited Members

Protected Member Functions inherited from mlir::TypeStorage
 TypeStorage ()
 This constructor is used by derived classes as part of the TypeUniquer.
Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage
 BaseStorage ()=default

Detailed Description

MMAMatrixType storage and uniquing.

Array is uniqued based on its shape and type.

Definition at line 56 of file GPUDialect.h.

Member Typedef Documentation

◆ KeyTy

using mlir::gpu::MMAMatrixStorageType::KeyTy = std::tuple<ArrayRef<int64_t>, Type, StringRef>

The hash key for uniquing.

Definition at line 63 of file GPUDialect.h.

Constructor & Destructor Documentation

◆ MMAMatrixStorageType()

mlir::gpu::MMAMatrixStorageType::MMAMatrixStorageType ( unsigned numDims,
const int64_t * dimShapes,
Type elementType,
StringRef operand )
inline

Definition at line 57 of file GPUDialect.h.

References dimShapes, elementType, numDims, and operand.

Referenced by construct().

Member Function Documentation

◆ construct()

MMAMatrixStorageType * mlir::gpu::MMAMatrixStorageType::construct ( TypeStorageAllocator & allocator,
const KeyTy & key )
inlinestatic

◆ getOperand()

StringRef mlir::gpu::MMAMatrixStorageType::getOperand ( ) const
inline

Definition at line 83 of file GPUDialect.h.

References operand.

◆ getShape()

ArrayRef< int64_t > mlir::gpu::MMAMatrixStorageType::getShape ( ) const
inline

Definition at line 79 of file GPUDialect.h.

References dimShapes, and numDims.

Referenced by operator==().

◆ operator==()

bool mlir::gpu::MMAMatrixStorageType::operator== ( const KeyTy & key) const
inline

Definition at line 64 of file GPUDialect.h.

References elementType, getShape(), and operand.

Member Data Documentation

◆ dimShapes

const int64_t* mlir::gpu::MMAMatrixStorageType::dimShapes

Reference to the shape of the MMA matrix.

Definition at line 86 of file GPUDialect.h.

Referenced by getShape(), and MMAMatrixStorageType().

◆ elementType

Type mlir::gpu::MMAMatrixStorageType::elementType

Element type of elements held in the MMA matrix.

Definition at line 92 of file GPUDialect.h.

Referenced by MMAMatrixStorageType(), and operator==().

◆ numDims

unsigned mlir::gpu::MMAMatrixStorageType::numDims

Number of dimensions in the MMA matrix.

Definition at line 89 of file GPUDialect.h.

Referenced by getShape(), and MMAMatrixStorageType().

◆ operand

StringRef mlir::gpu::MMAMatrixStorageType::operand

MMA operand that this MMAMatrix holds.

The general form of operation this type supports is given by the equation C += A*B. This field specifies which operand in the given equation is held by this type. The valid values are "AOp", "BOp" and "COp".

Definition at line 98 of file GPUDialect.h.

Referenced by construct(), getOperand(), MMAMatrixStorageType(), and operator==().


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