MLIR 24.0.0git
EmulateAtomics.cpp File Reference

Go to the source code of this file.

Classes

class  mlir::amdgpu::impl::AmdgpuEmulateAtomicsPassBase< DerivedT >

Namespaces

namespace  mlir
 Include the generated interface declarations.
namespace  mlir::amdgpu
namespace  mlir::amdgpu::impl

Macros

#define GEN_PASS_DEF_AMDGPUEMULATEATOMICSPASS

Functions

std::unique_ptr<::mlir::Pass > mlir::amdgpu::impl::createAmdgpuEmulateAtomicsPass ()
std::unique_ptr<::mlir::Pass > mlir::amdgpu::impl::createAmdgpuEmulateAtomicsPass (AmdgpuEmulateAtomicsPassOptions options)
std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuEmulateAtomicsPass ()
std::unique_ptr<::mlir::Pass > mlir::amdgpu::createAmdgpuEmulateAtomicsPass (AmdgpuEmulateAtomicsPassOptions options)
static void patchOperandSegmentSizes (ArrayRef< NamedAttribute > attrs, SmallVectorImpl< NamedAttribute > &newAttrs, DataArgAction action)
template<typename OpTy>
static OpTy::Properties getPropertiesFromAttrs (OpBuilder &builder, Location loc, ArrayRef< NamedAttribute > attrs)
static Value flattenVecToBits (ConversionPatternRewriter &rewriter, Location loc, Value val)
static bool isFaddNativelySupported (const ROCDL::TargetInfo &target, RawBufferAtomicFaddOp op)
 Returns whether op can be lowered to a native buffer atomic fadd on target.

Macro Definition Documentation

◆ GEN_PASS_DEF_AMDGPUEMULATEATOMICSPASS

#define GEN_PASS_DEF_AMDGPUEMULATEATOMICSPASS

Definition at line 21 of file EmulateAtomics.cpp.

Function Documentation

◆ flattenVecToBits()

Value flattenVecToBits ( ConversionPatternRewriter & rewriter,
Location loc,
Value val )
static

Definition at line 108 of file EmulateAtomics.cpp.

References mlir::Value::getType().

◆ getPropertiesFromAttrs()

template<typename OpTy>
OpTy::Properties getPropertiesFromAttrs ( OpBuilder & builder,
Location loc,
ArrayRef< NamedAttribute > attrs )
static

Definition at line 92 of file EmulateAtomics.cpp.

◆ isFaddNativelySupported()

bool isFaddNativelySupported ( const ROCDL::TargetInfo & target,
RawBufferAtomicFaddOp op )
static

Returns whether op can be lowered to a native buffer atomic fadd on target.

Definition at line 198 of file EmulateAtomics.cpp.

References mlir::getElementTypeOrSelf(), and target.

Referenced by mlir::amdgpu::populateAmdgpuEmulateAtomicsPatterns().

◆ patchOperandSegmentSizes()

void patchOperandSegmentSizes ( ArrayRef< NamedAttribute > attrs,
SmallVectorImpl< NamedAttribute > & newAttrs,
DataArgAction action )
static

Definition at line 60 of file EmulateAtomics.cpp.