|
MLIR 23.0.0git
|
#include "mlir/Dialect/AMDGPU/IR/AMDGPUDialect.h"#include "mlir/Dialect/Arith/IR/Arith.h"#include "mlir/Dialect/GPU/IR/GPUDialect.h"#include "mlir/Dialect/LLVMIR/ROCDLDialect.h"#include "mlir/Dialect/MemRef/IR/MemRef.h"#include "mlir/Dialect/MemRef/Utils/MemRefUtils.h"#include "mlir/Dialect/Utils/IndexingUtils.h"#include "mlir/Dialect/Vector/IR/VectorOps.h"#include "mlir/IR/Builders.h"#include "mlir/IR/BuiltinTypes.h"#include "mlir/IR/Diagnostics.h"#include "mlir/IR/Matchers.h"#include "mlir/IR/OpImplementation.h"#include "mlir/IR/PatternMatch.h"#include "mlir/IR/TypeUtilities.h"#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/SmallVector.h"#include <algorithm>#include <cstdint>#include <limits>#include <optional>#include "mlir/Dialect/AMDGPU/IR/AMDGPU.cpp.inc"Go to the source code of this file.
Macros | |
| #define | GET_OP_CLASSES |
Functions | |
| static FailureOr< MemRefType > | getFatRawBufferTypeLike (MemRefType source, bool resetOffset) |
| Convert the type source to one with the same sizes and strides - and offset, unless stripOffset is true, in which case the offset is reset to 0, if the offset should be reset but the layout of source isn't either the identity layout or a strided layout, this function fails. | |
| static bool | hasGlobalMemorySpace (Attribute memorySpace) |
| static bool | hasWorkgroupMemorySpace (Attribute memorySpace) |
| static bool | hasFatRawBufferMemorySpace (Attribute memorySpace) |
| template<typename T> | |
| static LogicalResult | verifyRawBufferOp (T &op) |
| static std::optional< uint32_t > | getConstantUint32 (Value v) |
| template<typename OpType> | |
| static bool | staticallyOutOfBounds (OpType op) |
| static LogicalResult | eraseRedundantLDSBarrierOps (LDSBarrierOp op, PatternRewriter &rewriter) |
| Remove amdgpu.lds_barrier after amdgpu.lds_barrier. | |
| template<typename BaseOp> | |
| static LogicalResult | verifyBase (BaseOp op) |
| template<typename DescriptorOp> | |
| static LogicalResult | verifyDescriptorOp (DescriptorOp op) |
| template<typename DescriptorOp, typename FoldAdaptor> | |
| static OpFoldResult | foldDescriptorOp (DescriptorOp op, FoldAdaptor adaptor) |
| #define GET_OP_CLASSES |
Definition at line 1211 of file AMDGPUOps.cpp.
|
static |
Remove amdgpu.lds_barrier after amdgpu.lds_barrier.
Definition at line 748 of file AMDGPUOps.cpp.
References mlir::RewriterBase::eraseOp(), and success().
|
static |
Definition at line 1013 of file AMDGPUOps.cpp.
References mlir::dispatchIndexOpFoldResults(), and mlir::foldDynamicIndexList().
|
static |
Definition at line 214 of file AMDGPUOps.cpp.
References mlir::Value::getType(), mlir::Type::isInteger(), mlir::m_ConstantInt(), and mlir::matchPattern().
Referenced by staticallyOutOfBounds().
|
static |
Convert the type source to one with the same sizes and strides - and offset, unless stripOffset is true, in which case the offset is reset to 0, if the offset should be reset but the layout of source isn't either the identity layout or a strided layout, this function fails.
Definition at line 73 of file AMDGPUOps.cpp.
References mlir::computeSuffixProduct(), mlir::AffineMap::getMultiDimIdentityMap(), mlir::MemRefType::Builder::setLayout(), and mlir::MemRefType::Builder::setMemorySpace().
Definition at line 160 of file AMDGPUOps.cpp.
Definition at line 140 of file AMDGPUOps.cpp.
Referenced by verifyBase(), and verifyRawBufferOp().
Definition at line 150 of file AMDGPUOps.cpp.
Referenced by verifyBase(), and verifyDescriptorOp().
|
static |
Definition at line 224 of file AMDGPUOps.cpp.
References getConstantUint32(), and result.
|
static |
Definition at line 922 of file AMDGPUOps.cpp.
References mlir::Type::getIntOrFloatBitWidth(), hasGlobalMemorySpace(), hasWorkgroupMemorySpace(), and success().
|
static |
Definition at line 972 of file AMDGPUOps.cpp.
References hasWorkgroupMemorySpace(), and success().
|
static |
Definition at line 174 of file AMDGPUOps.cpp.
References hasGlobalMemorySpace(), and success().