MLIR 22.0.0git
NVGPUDialect.cpp File Reference
#include "mlir/Dialect/NVGPU/IR/NVGPUDialect.h"
#include "mlir/Dialect/GPU/IR/GPUDialect.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/BuiltinTypes.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/IR/DialectImplementation.h"
#include "mlir/IR/TypeUtilities.h"
#include "mlir/IR/Verifier.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/TypeSwitch.h"
#include "mlir/Dialect/NVGPU/IR/NVGPUDialect.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUTypeDefs.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUAttrDefs.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUOps.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUEnums.cpp.inc"

Go to the source code of this file.

Macros

#define GET_TYPEDEF_LIST
#define GET_ATTRDEF_LIST
#define GET_OP_LIST
#define GET_ATTRDEF_CLASSES
#define GET_OP_CLASSES
#define GET_TYPEDEF_CLASSES

Functions

static LogicalResult verifyMmaSyncOp (Operation *op, TypedValue< VectorType > matrixA, TypedValue< VectorType > matrixB, TypedValue< VectorType > matrixC, const std::array< int64_t, 3 > &mmaShape, bool tf32Enabled, bool sparse=false)
 Performs verification for MmaSyncOp and MmaSparseSyncOp.
static unsigned getSwizzleBytes (TensorMapSwizzleKind kind)
std::optional< InFlightDiagnosticverifyTmaDescriptorWithMemref (Operation *op, TensorMapDescriptorType descType, std::optional< MemRefType > memrefType=std::nullopt)
LogicalResult isAllowedWGMMADataType (Type typeD, Type typeA, Type typeB)
LogicalResult isAllowedSizeM (int sizeM)
LogicalResult isAllowedSizeN (int sizeN, Type typeA)

Macro Definition Documentation

◆ GET_ATTRDEF_CLASSES

#define GET_ATTRDEF_CLASSES

Definition at line 690 of file NVGPUDialect.cpp.

◆ GET_ATTRDEF_LIST

#define GET_ATTRDEF_LIST

◆ GET_OP_CLASSES

#define GET_OP_CLASSES

Definition at line 695 of file NVGPUDialect.cpp.

◆ GET_OP_LIST

#define GET_OP_LIST

◆ GET_TYPEDEF_CLASSES

#define GET_TYPEDEF_CLASSES

Definition at line 698 of file NVGPUDialect.cpp.

◆ GET_TYPEDEF_LIST

#define GET_TYPEDEF_LIST

Function Documentation

◆ getSwizzleBytes()

unsigned getSwizzleBytes ( TensorMapSwizzleKind kind)
static

Definition at line 346 of file NVGPUDialect.cpp.

Referenced by verifyTmaDescriptorWithMemref().

◆ isAllowedSizeM()

LogicalResult isAllowedSizeM ( int sizeM)

Definition at line 549 of file NVGPUDialect.cpp.

References kWgmmaSizeM, and success().

◆ isAllowedSizeN()

LogicalResult isAllowedSizeN ( int sizeN,
Type typeA )

◆ isAllowedWGMMADataType()

LogicalResult isAllowedWGMMADataType ( Type typeD,
Type typeA,
Type typeB )

◆ verifyMmaSyncOp()

LogicalResult verifyMmaSyncOp ( Operation * op,
TypedValue< VectorType > matrixA,
TypedValue< VectorType > matrixB,
TypedValue< VectorType > matrixC,
const std::array< int64_t, 3 > & mmaShape,
bool tf32Enabled,
bool sparse = false )
static

◆ verifyTmaDescriptorWithMemref()

std::optional< InFlightDiagnostic > verifyTmaDescriptorWithMemref ( Operation * op,
TensorMapDescriptorType descType,
std::optional< MemRefType > memrefType = std::nullopt )