8 #ifndef MLIR_CONVERSION_GPUTONVVM_GPUTONVVMPASS_H_
9 #define MLIR_CONVERSION_GPUTONVVM_GPUTONVVMPASS_H_
16 class LLVMTypeConverter;
17 class ConversionTarget;
18 class RewritePatternSet;
26 #define GEN_PASS_DECL_CONVERTGPUOPSTONVVMOPS
27 #include "mlir/Conversion/Passes.h.inc"
36 RewritePatternSet &patterns);
41 const LLVMTypeConverter &converter, RewritePatternSet &patterns);
45 RewritePatternSet &patterns);
Include the generated interface declarations.
void populateGpuToNVVMConversionPatterns(const LLVMTypeConverter &converter, RewritePatternSet &patterns)
Collect a set of patterns to convert from the GPU dialect to NVVM.
LLVM::LLVMStructType convertMMAToLLVMType(gpu::MMAMatrixType type)
Return the LLVMStructureType corresponding to the MMAMatrixType type.
void configureGpuToNVVMConversionLegality(ConversionTarget &target)
Configure target to convert from the GPU dialect to NVVM.
void populateGpuWMMAToNVVMConversionPatterns(const LLVMTypeConverter &converter, RewritePatternSet &patterns)
Collect a set of patterns to convert WMMA ops from GPU dialect to NVVM.
void populateGpuSubgroupReduceOpLoweringPattern(const LLVMTypeConverter &converter, RewritePatternSet &patterns)
Populate GpuSubgroupReduce pattern to NVVM.