MLIR 22.0.0git
OwnershipBasedBufferDeallocation.cpp File Reference

Go to the source code of this file.

Classes

class  mlir::bufferization::impl::OwnershipBasedBufferDeallocationPassBase< DerivedT >

Namespaces

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

Macros

#define GEN_PASS_DEF_OWNERSHIPBASEDBUFFERDEALLOCATIONPASS

Functions

std::unique_ptr<::mlir::Passmlir::bufferization::impl::createOwnershipBasedBufferDeallocationPass ()
std::unique_ptr<::mlir::Passmlir::bufferization::impl::createOwnershipBasedBufferDeallocationPass (OwnershipBasedBufferDeallocationPassOptions options)
std::unique_ptr<::mlir::Passmlir::bufferization::createOwnershipBasedBufferDeallocationPass ()
std::unique_ptr<::mlir::Passmlir::bufferization::createOwnershipBasedBufferDeallocationPass (OwnershipBasedBufferDeallocationPassOptions options)
static Value buildBoolValue (OpBuilder &builder, Location loc, bool value)
static bool isMemref (Value v)
static bool hasNeitherAllocateNorFreeSideEffect (Operation *op)
 Return "true" if the given op is guaranteed to have neither "Allocate" nor "Free" side effects.
static bool hasBufferSemantics (Operation *op)
 Return "true" if the given op has buffer semantics.

Macro Definition Documentation

◆ GEN_PASS_DEF_OWNERSHIPBASEDBUFFERDEALLOCATIONPASS

#define GEN_PASS_DEF_OWNERSHIPBASEDBUFFERDEALLOCATIONPASS

Definition at line 33 of file OwnershipBasedBufferDeallocation.cpp.

Function Documentation

◆ buildBoolValue()

Value buildBoolValue ( OpBuilder & builder,
Location loc,
bool value )
static

Definition at line 45 of file OwnershipBasedBufferDeallocation.cpp.

References mlir::Builder::getBoolAttr().

◆ hasBufferSemantics()

bool hasBufferSemantics ( Operation * op)
static

Return "true" if the given op has buffer semantics.

I.e., it has buffer operands, buffer results and/or buffer region entry block arguments.

Definition at line 60 of file OwnershipBasedBufferDeallocation.cpp.

References mlir::Operation::getOperands(), mlir::Operation::getRegions(), mlir::Operation::getResults(), and isMemref().

◆ hasNeitherAllocateNorFreeSideEffect()

bool hasNeitherAllocateNorFreeSideEffect ( Operation * op)
static

Return "true" if the given op is guaranteed to have neither "Allocate" nor "Free" side effects.

Definition at line 53 of file OwnershipBasedBufferDeallocation.cpp.

References mlir::mightHaveEffect().

◆ isMemref()