14#ifndef MLIR_DIALECT_GPU_TRANSFORMS_ROCDL_PASSES_H_
15#define MLIR_DIALECT_GPU_TRANSFORMS_ROCDL_PASSES_H_
24#include "mlir/Dialect/GPU/Transforms/ROCDL/Passes.h.inc"
44#define GEN_PASS_REGISTRATION
45#include "mlir/Dialect/GPU/Transforms/ROCDL/Passes.h.inc"
This class represents the benefit of a pattern match in a unitless scheme that ranges from 0 (very li...
Describes the AMDGPU target a lowering is producing code for: the triple's subarch (which identifies ...
Include the generated interface declarations.
void populateGpuPromoteShuffleToAMDGPUPatterns(RewritePatternSet &patterns, std::optional< ROCDL::TargetInfo > target)
Tries to promote gpu.shuffles to specialized AMDGPU intrinsics.
void populateGpuLowerClusteredSubgroupReduceToDPPPatterns(RewritePatternSet &patterns, unsigned subgroupSize, const ROCDL::TargetInfo &target, PatternBenefit benefit=1)
Disjoint counterpart of populateGpuLowerSubgroupReduceToDPPPatterns that only matches gpu....
void populateGpuLowerSubgroupReduceToDPPPatterns(RewritePatternSet &patterns, unsigned subgroupSize, const ROCDL::TargetInfo &target, PatternBenefit benefit=1)
Collect a set of patterns to lower gpu.subgroup_reduce into amdgpu.dpp ops over scalar types.