8#ifndef MLIR_CONVERSION_GPUTONVVM_GPUTONVVMPASS_H_
9#define MLIR_CONVERSION_GPUTONVVM_GPUTONVVMPASS_H_
18class ConversionTarget;
27#define GEN_PASS_DECL_CONVERTGPUOPSTONVVMOPS
28#include "mlir/Conversion/Passes.h.inc"
41 RewritePatternSet &patterns,
42 PatternBenefit benefit = 1);
47 const LLVMTypeConverter &converter, RewritePatternSet &patterns,
48 PatternBenefit benefit = 1);
52 RewritePatternSet &patterns,
53 PatternBenefit benefit = 1);
Conversion from types to the LLVM IR dialect.
The abstract base pass class.
MMAMatrix represents a matrix held by a subgroup for matrix-matrix multiply accumulate operations.
Include the generated interface declarations.
Type convertMMAToLLVMType(gpu::MMAMatrixType type)
Return the LLVMStructureType corresponding to the MMAMatrixType type.
void configureGpuToNVVMTypeConverter(LLVMTypeConverter &converter)
Configure the LLVM type convert to convert types and address spaces from the GPU dialect to NVVM.
void configureGpuToNVVMConversionLegality(ConversionTarget &target)
Configure target to convert from the GPU dialect to NVVM.
void populateGpuSubgroupReduceOpLoweringPattern(const LLVMTypeConverter &converter, RewritePatternSet &patterns, PatternBenefit benefit=1)
Populate GpuSubgroupReduce pattern to NVVM.
void populateGpuToNVVMConversionPatterns(const LLVMTypeConverter &converter, RewritePatternSet &patterns, PatternBenefit benefit=1)
Collect a set of patterns to convert from the GPU dialect to NVVM.
void populateGpuWMMAToNVVMConversionPatterns(const LLVMTypeConverter &converter, RewritePatternSet &patterns, PatternBenefit benefit=1)
Collect a set of patterns to convert WMMA ops from GPU dialect to NVVM.