|
MLIR 22.0.0git
|
#include "mlir/Dialect/Affine/IR/AffineOps.h"#include "mlir/Dialect/Affine/ViewLikeInterfaceUtils.h"#include "mlir/Dialect/Arith/Utils/Utils.h"#include "mlir/Dialect/GPU/IR/GPUDialect.h"#include "mlir/Dialect/MemRef/IR/MemRef.h"#include "mlir/Dialect/MemRef/Transforms/Passes.h"#include "mlir/Dialect/MemRef/Transforms/Transforms.h"#include "mlir/Dialect/MemRef/Utils/MemRefUtils.h"#include "mlir/Dialect/NVGPU/IR/NVGPUDialect.h"#include "mlir/Dialect/Vector/IR/VectorOps.h"#include "mlir/IR/AffineMap.h"#include "mlir/Transforms/GreedyPatternRewriteDriver.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallBitVector.h"#include "llvm/ADT/TypeSwitch.h"#include "llvm/Support/Debug.h"#include "mlir/Dialect/MemRef/Transforms/Passes.h.inc"Go to the source code of this file.
Classes | |
| class | mlir::memref::impl::FoldMemRefAliasOpsPassBase< DerivedT > |
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::memref |
| namespace | mlir::memref::impl |
Macros | |
| #define | DEBUG_TYPE "fold-memref-alias-ops" |
| #define | DBGS() |
| #define | GEN_PASS_DEF_FOLDMEMREFALIASOPSPASS |
Functions | |
| std::unique_ptr<::mlir::Pass > | mlir::memref::impl::createFoldMemRefAliasOpsPass () |
| std::unique_ptr<::mlir::Pass > | mlir::memref::createFoldMemRefAliasOpsPass () |
| template<typename LoadOrStoreOpTy> | |
| static Value | getMemRefOperand (LoadOrStoreOpTy op) |
| Helpers to access the memref operand for each op. | |
| static Value | getMemRefOperand (vector::TransferReadOp op) |
| static Value | getMemRefOperand (nvgpu::LdMatrixOp op) |
| static Value | getMemRefOperand (vector::LoadOp op) |
| static Value | getMemRefOperand (vector::StoreOp op) |
| static Value | getMemRefOperand (vector::MaskedLoadOp op) |
| static Value | getMemRefOperand (vector::MaskedStoreOp op) |
| static Value | getMemRefOperand (vector::TransferWriteOp op) |
| static Value | getMemRefOperand (gpu::SubgroupMmaLoadMatrixOp op) |
| static Value | getMemRefOperand (gpu::SubgroupMmaStoreMatrixOp op) |
| static SmallVector< Value > | calculateExpandedAccessIndices (AffineMap affineMap, const SmallVector< Value > &indices, Location loc, PatternRewriter &rewriter) |
| template<typename XferOp> | |
| static LogicalResult | preconditionsFoldSubViewOpImpl (RewriterBase &rewriter, XferOp xferOp, memref::SubViewOp subviewOp) |
| static LogicalResult | preconditionsFoldSubViewOp (RewriterBase &rewriter, Operation *op, memref::SubViewOp subviewOp) |
| static LogicalResult | preconditionsFoldSubViewOp (RewriterBase &rewriter, vector::TransferReadOp readOp, memref::SubViewOp subviewOp) |
| static LogicalResult | preconditionsFoldSubViewOp (RewriterBase &rewriter, vector::TransferWriteOp writeOp, memref::SubViewOp subviewOp) |
| #define DBGS | ( | ) |
Definition at line 32 of file FoldMemRefAliasOps.cpp.
| #define DEBUG_TYPE "fold-memref-alias-ops" |
Definition at line 31 of file FoldMemRefAliasOps.cpp.
| #define GEN_PASS_DEF_FOLDMEMREFALIASOPSPASS |
Definition at line 36 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 202 of file FoldMemRefAliasOps.cpp.
References mlir::AffineMap::getNumResults(), mlir::AffineMap::getSubMap(), mlir::getValueOrCreateConstantIndexOp(), indices, and mlir::affine::makeComposedFoldedAffineApply().
|
static |
Definition at line 73 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 77 of file FoldMemRefAliasOps.cpp.
|
static |
Helpers to access the memref operand for each op.
Definition at line 49 of file FoldMemRefAliasOps.cpp.
Referenced by mlir::memref::impl::FoldMemRefAliasOpsPassBase< DerivedT >::getDescription().
|
static |
Definition at line 57 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 61 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 65 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 67 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 63 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 53 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 69 of file FoldMemRefAliasOps.cpp.
|
static |
Definition at line 233 of file FoldMemRefAliasOps.cpp.
References success().
|
static |
Definition at line 239 of file FoldMemRefAliasOps.cpp.
References preconditionsFoldSubViewOpImpl().
|
static |
Definition at line 245 of file FoldMemRefAliasOps.cpp.
References preconditionsFoldSubViewOpImpl().
|
static |
Definition at line 219 of file FoldMemRefAliasOps.cpp.
References mlir::RewriterBase::notifyMatchFailure(), and success().
Referenced by preconditionsFoldSubViewOp(), and preconditionsFoldSubViewOp().