MLIR 22.0.0git
mlir::xegpu::uArch::MMAInstructionInterface Struct Referenceabstract

#include "mlir/Dialect/XeGPU/uArch/uArchBase.h"

Inheritance diagram for mlir::xegpu::uArch::MMAInstructionInterface:

Public Member Functions

virtual llvm::SmallVector< std::pair< uint32_t, uint32_t >, 16 > getSupportedShapes (Type dataType, MMAOpndKind matrixType)=0
virtual llvm::SmallVector< Type, 8 > getSupportedTypes (MLIRContext &context, MMAOpndKind matrixType)=0
virtual bool checkSupportedShapesAndTypes (std::pair< uint32_t, uint32_t > AShape, std::pair< uint32_t, uint32_t > BShape, std::pair< uint32_t, uint32_t > CShape, std::pair< uint32_t, uint32_t > DShape, Type AType, Type BType, Type CType, Type DType)=0
virtual bool checkSupportedTypes (Type AType, Type BType, Type CType, Type DType)=0
virtual bool validate (std::pair< uint32_t, uint32_t > AShape, std::pair< uint32_t, uint32_t > BShape, std::pair< uint32_t, uint32_t > CShape, std::pair< uint32_t, uint32_t > DShape, Type AType, Type BType, Type CType, Type DType)=0
virtual llvm::SmallVector< uint32_t, 8 > getSupportedM (Type type) const =0
virtual llvm::SmallVector< uint32_t, 8 > getSupportedK (Type type) const =0
virtual llvm::SmallVector< uint32_t, 8 > getSupportedN (Type type) const =0
virtual ~MMAInstructionInterface ()=default

Detailed Description

Definition at line 208 of file uArchBase.h.

Constructor & Destructor Documentation

◆ ~MMAInstructionInterface()

virtual mlir::xegpu::uArch::MMAInstructionInterface::~MMAInstructionInterface ( )
virtualdefault

Member Function Documentation

◆ checkSupportedShapesAndTypes()

virtual bool mlir::xegpu::uArch::MMAInstructionInterface::checkSupportedShapesAndTypes ( std::pair< uint32_t, uint32_t > AShape,
std::pair< uint32_t, uint32_t > BShape,
std::pair< uint32_t, uint32_t > CShape,
std::pair< uint32_t, uint32_t > DShape,
Type AType,
Type BType,
Type CType,
Type DType )
pure virtual

◆ checkSupportedTypes()

virtual bool mlir::xegpu::uArch::MMAInstructionInterface::checkSupportedTypes ( Type AType,
Type BType,
Type CType,
Type DType )
pure virtual

◆ getSupportedK()

virtual llvm::SmallVector< uint32_t, 8 > mlir::xegpu::uArch::MMAInstructionInterface::getSupportedK ( Type type) const
pure virtual

◆ getSupportedM()

virtual llvm::SmallVector< uint32_t, 8 > mlir::xegpu::uArch::MMAInstructionInterface::getSupportedM ( Type type) const
pure virtual

◆ getSupportedN()

virtual llvm::SmallVector< uint32_t, 8 > mlir::xegpu::uArch::MMAInstructionInterface::getSupportedN ( Type type) const
pure virtual

◆ getSupportedShapes()

virtual llvm::SmallVector< std::pair< uint32_t, uint32_t >, 16 > mlir::xegpu::uArch::MMAInstructionInterface::getSupportedShapes ( Type dataType,
MMAOpndKind matrixType )
pure virtual

◆ getSupportedTypes()

virtual llvm::SmallVector< Type, 8 > mlir::xegpu::uArch::MMAInstructionInterface::getSupportedTypes ( MLIRContext & context,
MMAOpndKind matrixType )
pure virtual

◆ validate()

virtual bool mlir::xegpu::uArch::MMAInstructionInterface::validate ( std::pair< uint32_t, uint32_t > AShape,
std::pair< uint32_t, uint32_t > BShape,
std::pair< uint32_t, uint32_t > CShape,
std::pair< uint32_t, uint32_t > DShape,
Type AType,
Type BType,
Type CType,
Type DType )
pure virtual

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