9#ifndef MLIR_DIALECT_MEMREF_IR_MEMREF_H_ 
   10#define MLIR_DIALECT_MEMREF_IR_MEMREF_H_ 
   33enum class AtomicRMWKind : uint64_t;
 
   34class AtomicRMWKindAttr;
 
   62std::optional<Operation *> 
findDealloc(Value allocValue);
 
   65OpFoldResult 
getMixedSize(OpBuilder &builder, Location loc, Value value,
 
   69SmallVector<OpFoldResult> 
getMixedSizes(OpBuilder &builder, Location loc,
 
   77                                           ArrayRef<int64_t> targetShape);
 
   85#include "mlir/Dialect/MemRef/IR/MemRefOpsDialect.h.inc" 
   92#include "mlir/Dialect/MemRef/IR/MemRefOps.h.inc" 
This class defines the main interface for locations in MLIR and acts as a non-nullable wrapper around...
 
This class helps build Operations.
 
Type getTensorTypeFromMemRefType(Type type)
Return an unranked/ranked tensor type for the given unranked/ranked memref type.
 
OpFoldResult getMixedSize(OpBuilder &builder, Location loc, Value value, int64_t dim)
Return the dimension of the given memref value.
 
std::optional< Operation * > findDealloc(Value allocValue)
Finds a single dealloc operation for the given allocated value.
 
LogicalResult foldMemRefCast(Operation *op, Value inner=nullptr)
This is a common utility used for patterns of the form "someop(memref.cast) -> someop".
 
SmallVector< OpFoldResult > getMixedSizes(OpBuilder &builder, Location loc, Value value)
Return the dimensions of the given memref value.
 
Value createCanonicalRankReducingSubViewOp(OpBuilder &b, Location loc, Value memref, ArrayRef< int64_t > targetShape)
Create a rank-reducing SubViewOp @[0 .
 
Include the generated interface declarations.
 
raw_ostream & operator<<(raw_ostream &os, const AliasResult &result)
 
SmallVector< Range, 8 > getOrCreateRanges(OffsetSizeAndStrideOpInterface op, OpBuilder &b, Location loc)
Return the list of Range (i.e.
 
Represents a range (offset, size, and stride) where each element of the triple may be dynamic or stat...