MLIR
21.0.0git
|
A simple analysis that detects allocation operations. More...
#include "mlir/Dialect/Bufferization/Transforms/BufferUtils.h"
Public Types | |
using | AllocEntry = std::tuple< Value, Operation * > |
Represents a tuple of allocValue and deallocOperation. More... | |
using | AllocEntryList = SmallVector< AllocEntry, 8 > |
Represents a list containing all alloc entries. More... | |
Public Member Functions | |
BufferPlacementAllocs (Operation *op) | |
Initializes the internal list by discovering all supported allocation nodes. More... | |
AllocEntryList::const_iterator | begin () const |
Returns the begin iterator to iterate over all allocations. More... | |
AllocEntryList::const_iterator | end () const |
Returns the end iterator that can be used in combination with begin. More... | |
AllocEntryList::iterator | begin () |
Returns the begin iterator to iterate over all allocations. More... | |
AllocEntryList::iterator | end () |
Returns the end iterator that can be used in combination with begin. More... | |
void | registerAlloc (const AllocEntry &entry) |
Registers a new allocation entry. More... | |
Static Public Member Functions | |
static Operation * | getStartOperation (Value allocValue, Block *placementBlock, const Liveness &liveness) |
Get the start operation to place the given alloc value within the specified placement block. More... | |
A simple analysis that detects allocation operations.
Definition at line 35 of file BufferUtils.h.
using mlir::bufferization::BufferPlacementAllocs::AllocEntry = std::tuple<Value, Operation *> |
Represents a tuple of allocValue and deallocOperation.
Definition at line 38 of file BufferUtils.h.
Represents a list containing all alloc entries.
Definition at line 41 of file BufferUtils.h.
BufferPlacementAllocs::BufferPlacementAllocs | ( | Operation * | op | ) |
Initializes the internal list by discovering all supported allocation nodes.
Definition at line 58 of file BufferUtils.cpp.
|
inline |
Returns the begin iterator to iterate over all allocations.
Definition at line 60 of file BufferUtils.h.
|
inline |
Returns the begin iterator to iterate over all allocations.
Definition at line 54 of file BufferUtils.h.
|
inline |
Returns the end iterator that can be used in combination with begin.
Definition at line 63 of file BufferUtils.h.
|
inline |
Returns the end iterator that can be used in combination with begin.
Definition at line 57 of file BufferUtils.h.
|
static |
Get the start operation to place the given alloc value within the specified placement block.
Get the start operation to place the given alloc value withing the.
Definition at line 36 of file BufferUtils.cpp.
References mlir::Block::findAncestorOpInBlock(), mlir::Operation::getBlock(), mlir::Liveness::getLiveness(), mlir::LivenessBlockInfo::getStartOperation(), and mlir::Block::getTerminator().
|
inline |
Registers a new allocation entry.
Definition at line 66 of file BufferUtils.h.