MLIR  19.0.0git
Functions
mlir::bufferization::detail Namespace Reference

Functions

AliasingOpOperandList defaultGetAliasingOpOperands (Value value, const AnalysisState &state)
 This is the default implementation of BufferizableOpInterface::getAliasingOpOperands. More...
 
FailureOr< BaseMemRefTypedefaultGetBufferType (Value value, const BufferizationOptions &options, SmallVector< Value > &invocationStack)
 This is the default implementation of BufferizableOpInterface::getBufferType. More...
 
bool defaultResultBufferizesToMemoryWrite (OpResult opResult, const AnalysisState &state)
 This is the default implementation of BufferizableOpInterface::resultBufferizesToMemoryWrite. More...
 
bool defaultIsRepetitiveRegion (BufferizableOpInterface bufferizableOp, unsigned index)
 This is the default implementation of BufferizableOpInterface::isRepetitiveRegion. More...
 
AliasingOpOperandList unknownGetAliasingOpOperands (Value value)
 This is the default implementation of getAliasingOpOperands in case the defining op does not implement the BufferizableOpInterface. More...
 
AliasingValueList unknownGetAliasingValues (OpOperand &opOperand)
 This is the default implementation of getAliasingValues in case the owner op does not implement the BufferizableOpInterface. More...
 
bool defaultHasTensorSemantics (Operation *op)
 This is the default implementation of BufferizableOpInterface::hasTensorSemantics. More...
 
SmallVector< OpOperand * > getCallerOpOperands (BlockArgument bbArg)
 Return a list of operands that are forwarded to the given block argument. More...
 

Function Documentation

◆ defaultGetAliasingOpOperands()

AliasingOpOperandList mlir::bufferization::detail::defaultGetAliasingOpOperands ( Value  value,
const AnalysisState state 
)

This is the default implementation of BufferizableOpInterface::getAliasingOpOperands.

Should not be called from other places.

Definition at line 902 of file BufferizableOpInterface.cpp.

◆ defaultGetBufferType()

FailureOr< BaseMemRefType > mlir::bufferization::detail::defaultGetBufferType ( Value  value,
const BufferizationOptions options,
SmallVector< Value > &  invocationStack 
)

This is the default implementation of BufferizableOpInterface::getBufferType.

Should not be called from other places.

Definition at line 917 of file BufferizableOpInterface.cpp.

References mlir::bufferization::getMemRefType(), mlir::Value::getType(), and options.

◆ defaultHasTensorSemantics()

bool mlir::bufferization::detail::defaultHasTensorSemantics ( Operation op)

This is the default implementation of BufferizableOpInterface::hasTensorSemantics.

Definition at line 995 of file BufferizableOpInterface.cpp.

◆ defaultIsRepetitiveRegion()

bool mlir::bufferization::detail::defaultIsRepetitiveRegion ( BufferizableOpInterface  bufferizableOp,
unsigned  index 
)

This is the default implementation of BufferizableOpInterface::isRepetitiveRegion.

Should not be called from other places.

Definition at line 949 of file BufferizableOpInterface.cpp.

◆ defaultResultBufferizesToMemoryWrite()

bool mlir::bufferization::detail::defaultResultBufferizesToMemoryWrite ( OpResult  opResult,
const AnalysisState state 
)

This is the default implementation of BufferizableOpInterface::resultBufferizesToMemoryWrite.

Should not be called from other places.

Definition at line 835 of file BufferizableOpInterface.cpp.

◆ getCallerOpOperands()

SmallVector< OpOperand * > mlir::bufferization::detail::getCallerOpOperands ( BlockArgument  bbArg)

Return a list of operands that are forwarded to the given block argument.

I.e., find all predecessors of the block argument's owner and gather the operands that are equivalent to the block argument.

Definition at line 14 of file UnstructuredControlFlow.cpp.

References mlir::BlockArgument::getArgNumber(), mlir::OperandRange::getBeginOperandIndex(), mlir::SuccessorOperands::getForwardedOperands(), mlir::BlockArgument::getOwner(), mlir::SuccessorOperands::getProducedOperandCount(), and mlir::IRObjectWithUseList< OperandType >::getUsers().

◆ unknownGetAliasingOpOperands()

AliasingOpOperandList mlir::bufferization::detail::unknownGetAliasingOpOperands ( Value  value)

This is the default implementation of getAliasingOpOperands in case the defining op does not implement the BufferizableOpInterface.

Definition at line 960 of file BufferizableOpInterface.cpp.

References mlir::bufferization::AliasList< T >::addAlias(), mlir::Value::getDefiningOp(), mlir::Operation::getOpOperands(), and mlir::bufferization::Unknown.

◆ unknownGetAliasingValues()

AliasingValueList mlir::bufferization::detail::unknownGetAliasingValues ( OpOperand opOperand)

This is the default implementation of getAliasingValues in case the owner op does not implement the BufferizableOpInterface.

Definition at line 978 of file BufferizableOpInterface.cpp.

References mlir::bufferization::AliasList< T >::addAlias(), mlir::Operation::getOpResults(), mlir::detail::IROperandBase::getOwner(), mlir::Operation::getRegions(), and mlir::bufferization::Unknown.

Referenced by mlir::bufferization::AnalysisState::getAliasingValues().