MLIR 23.0.0git
mlir::amdgpu Namespace Reference

Namespaces

namespace  impl

Classes

struct  AmdgpuEmulateAtomicsPassOptions
struct  Chipset
 Represents the amdgpu gfx chipset version, e.g., gfx90a, gfx942, gfx1103. More...

Functions

void populateCommonGPUTypeAndAttributeConversions (TypeConverter &typeConverter)
 Remap common GPU memory spaces (Workgroup, Private, etc) to LLVM address spaces.
ParseResult parseMNKDimensionList (OpAsmParser &parser, IntegerAttr &m, IntegerAttr &n, IntegerAttr &k)
 Parser for the custom<MNKDimensionList> custom assembly format used by WMMAOp.
ParseResult parseMNKDimensionList (OpAsmParser &parser, Operation *, IntegerAttr &m, IntegerAttr &n, IntegerAttr &k)
void printMNKDimensionList (OpAsmPrinter &printer, IntegerAttr m, IntegerAttr n, IntegerAttr k)
 Printer for the custom<MNKDimensionList> custom assembly format used by WMMAOp.
void printMNKDimensionList (OpAsmPrinter &printer, Operation *, IntegerAttr m, IntegerAttr n, IntegerAttr k)
int32_t getGlobalPrefetchLLVMEncoding (amdgpu::LoadTemporalHint hint, amdgpu::Scope scope, bool isSpeculative)
void registerMemoryAccessOpInterfacesExternalModels (DialectRegistry &registry)
std::unique_ptr<::mlir::PasscreateAmdgpuEmulateAtomicsPass ()
std::unique_ptr<::mlir::PasscreateAmdgpuEmulateAtomicsPass (AmdgpuEmulateAtomicsPassOptions options)
std::unique_ptr<::mlir::PasscreateAmdgpuMaskedloadToLoadPass ()
std::unique_ptr<::mlir::PasscreateAmdgpuResolveStridedMetadataPass ()
void registerAmdgpuEmulateAtomicsPass ()
void registerAmdgpuEmulateAtomicsPassPass ()
void registerAmdgpuMaskedloadToLoadPass ()
void registerAmdgpuMaskedloadToLoadPassPass ()
void registerAmdgpuResolveStridedMetadataPass ()
void registerAmdgpuResolveStridedMetadataPassPass ()
void registerAMDGPUPasses ()
void populateAmdgpuEmulateAtomicsPatterns (ConversionTarget &target, RewritePatternSet &patterns, Chipset chipset, PatternBenefit benefit=1)
void populateAmdgpuResolveStridedMetadataPatterns (RewritePatternSet &patterns, PatternBenefit benefit=1)
void populateAmdgpuMaskedloadToLoadPatterns (RewritePatternSet &patterns, PatternBenefit benefit=1)
bool hasOcpFp8 (const Chipset &chipset)
bool isGlobalMemorySpace (Attribute memorySpace, bool allowFlat)
bool isWorkgroupMemorySpace (Attribute memorySpace)
bool isFatRawBufferMemorySpace (Attribute memorySpace)

Function Documentation

◆ createAmdgpuEmulateAtomicsPass() [1/2]

std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuEmulateAtomicsPass ( )

Definition at line 99 of file EmulateAtomics.cpp.

◆ createAmdgpuEmulateAtomicsPass() [2/2]

std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuEmulateAtomicsPass ( AmdgpuEmulateAtomicsPassOptions options)

Definition at line 103 of file EmulateAtomics.cpp.

◆ createAmdgpuMaskedloadToLoadPass()

std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuMaskedloadToLoadPass ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 179 of file MaskedloadToLoad.cpp.

◆ createAmdgpuResolveStridedMetadataPass()

std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuResolveStridedMetadataPass ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 255 of file ResolveStridedMetadata.cpp.

◆ getGlobalPrefetchLLVMEncoding()

int32_t mlir::amdgpu::getGlobalPrefetchLLVMEncoding ( amdgpu::LoadTemporalHint hint,
amdgpu::Scope scope,
bool isSpeculative )
inline

Definition at line 18 of file AMDGPUEnums.h.

◆ hasOcpFp8()

bool mlir::amdgpu::hasOcpFp8 ( const Chipset & chipset)
inline

◆ isFatRawBufferMemorySpace()

bool mlir::amdgpu::isFatRawBufferMemorySpace ( Attribute memorySpace)
inline

Definition at line 49 of file MemorySpaceUtils.h.

◆ isGlobalMemorySpace()

bool mlir::amdgpu::isGlobalMemorySpace ( Attribute memorySpace,
bool allowFlat )
inline

Definition at line 23 of file MemorySpaceUtils.h.

Referenced by verifyBase(), and verifyRawBufferOp().

◆ isWorkgroupMemorySpace()

bool mlir::amdgpu::isWorkgroupMemorySpace ( Attribute memorySpace)
inline

Definition at line 36 of file MemorySpaceUtils.h.

Referenced by verifyBase(), verifyDescriptorOp(), and verifyDsBarrierOpCommon().

◆ parseMNKDimensionList() [1/2]

ParseResult mlir::amdgpu::parseMNKDimensionList ( OpAsmParser & parser,
IntegerAttr & m,
IntegerAttr & n,
IntegerAttr & k )

Parser for the custom<MNKDimensionList> custom assembly format used by WMMAOp.

Definition at line 355 of file AMDGPUOps.cpp.

References mlir::AsmParser::emitError(), mlir::AsmParser::getBuilder(), mlir::AsmParser::getCurrentLocation(), mlir::Builder::getI32IntegerAttr(), mlir::AsmParser::parseDimensionList(), and success().

Referenced by parseMNKDimensionList().

◆ parseMNKDimensionList() [2/2]

ParseResult mlir::amdgpu::parseMNKDimensionList ( OpAsmParser & parser,
Operation * ,
IntegerAttr & m,
IntegerAttr & n,
IntegerAttr & k )
inline

Definition at line 38 of file AMDGPUDialect.h.

References parseMNKDimensionList().

◆ populateAmdgpuEmulateAtomicsPatterns()

void mlir::amdgpu::populateAmdgpuEmulateAtomicsPatterns ( ConversionTarget & target,
RewritePatternSet & patterns,
Chipset chipset,
PatternBenefit benefit = 1 )

◆ populateAmdgpuMaskedloadToLoadPatterns()

void mlir::amdgpu::populateAmdgpuMaskedloadToLoadPatterns ( RewritePatternSet & patterns,
PatternBenefit benefit = 1 )

◆ populateAmdgpuResolveStridedMetadataPatterns()

void mlir::amdgpu::populateAmdgpuResolveStridedMetadataPatterns ( RewritePatternSet & patterns,
PatternBenefit benefit = 1 )

◆ populateCommonGPUTypeAndAttributeConversions()

void mlir::amdgpu::populateCommonGPUTypeAndAttributeConversions ( TypeConverter & typeConverter)

Remap common GPU memory spaces (Workgroup, Private, etc) to LLVM address spaces.

Definition at line 4538 of file AMDGPUToROCDL.cpp.

References mlir::populateGpuMemorySpaceAttributeConversions().

◆ printMNKDimensionList() [1/2]

void mlir::amdgpu::printMNKDimensionList ( OpAsmPrinter & printer,
IntegerAttr m,
IntegerAttr n,
IntegerAttr k )
inline

Printer for the custom<MNKDimensionList> custom assembly format used by WMMAOp.

Definition at line 46 of file AMDGPUDialect.h.

References mlir::AsmPrinter::printDimensionList().

Referenced by printMNKDimensionList().

◆ printMNKDimensionList() [2/2]

void mlir::amdgpu::printMNKDimensionList ( OpAsmPrinter & printer,
Operation * ,
IntegerAttr m,
IntegerAttr n,
IntegerAttr k )
inline

Definition at line 50 of file AMDGPUDialect.h.

References printMNKDimensionList().

◆ registerAmdgpuEmulateAtomicsPass()

void mlir::amdgpu::registerAmdgpuEmulateAtomicsPass ( )
inline

Definition at line 272 of file Passes.h.

◆ registerAmdgpuEmulateAtomicsPassPass()

void mlir::amdgpu::registerAmdgpuEmulateAtomicsPassPass ( )
inline

Definition at line 279 of file Passes.h.

◆ registerAmdgpuMaskedloadToLoadPass()

void mlir::amdgpu::registerAmdgpuMaskedloadToLoadPass ( )
inline

Definition at line 293 of file Passes.h.

◆ registerAmdgpuMaskedloadToLoadPassPass()

void mlir::amdgpu::registerAmdgpuMaskedloadToLoadPassPass ( )
inline

Definition at line 300 of file Passes.h.

◆ registerAMDGPUPasses()

void mlir::amdgpu::registerAMDGPUPasses ( )
inline

Definition at line 335 of file Passes.h.

Referenced by mlir::registerAllPasses().

◆ registerAmdgpuResolveStridedMetadataPass()

void mlir::amdgpu::registerAmdgpuResolveStridedMetadataPass ( )
inline

Definition at line 314 of file Passes.h.

◆ registerAmdgpuResolveStridedMetadataPassPass()

void mlir::amdgpu::registerAmdgpuResolveStridedMetadataPassPass ( )
inline

Definition at line 321 of file Passes.h.

◆ registerMemoryAccessOpInterfacesExternalModels()

void mlir::amdgpu::registerMemoryAccessOpInterfacesExternalModels ( DialectRegistry & registry)