MLIR  20.0.0git
Public Member Functions | Protected Member Functions | List of all members
mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp > Struct Template Reference

A template that provides a default implementation of getAliasingOpOperands for ops that support unstructured control flow within their regions. More...

#include "mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h"

+ Inheritance diagram for mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp >:

Public Member Functions

FailureOr< BaseMemRefTypegetBufferType (Operation *op, Value value, const BufferizationOptions &options, SmallVector< Value > &invocationStack) const
 

Protected Member Functions

AliasingOpOperandList getAliasingBranchOpOperands (Operation *op, BlockArgument bbArg, const AnalysisState &state) const
 Assuming that bbArg is a block argument of a block that belongs to the given op, return all OpOperands of users of this block that are aliasing with the given block argument. More...
 

Detailed Description

template<typename ConcreteModel, typename ConcreteOp>
struct mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp >

A template that provides a default implementation of getAliasingOpOperands for ops that support unstructured control flow within their regions.

Definition at line 32 of file UnstructuredControlFlow.h.

Member Function Documentation

◆ getAliasingBranchOpOperands()

template<typename ConcreteModel , typename ConcreteOp >
AliasingOpOperandList mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp >::getAliasingBranchOpOperands ( Operation op,
BlockArgument  bbArg,
const AnalysisState state 
) const
inlineprotected

Assuming that bbArg is a block argument of a block that belongs to the given op, return all OpOperands of users of this block that are aliasing with the given block argument.

Definition at line 120 of file UnstructuredControlFlow.h.

◆ getBufferType()

template<typename ConcreteModel , typename ConcreteOp >
FailureOr<BaseMemRefType> mlir::bufferization::OpWithUnstructuredControlFlowBufferizableOpInterfaceExternalModel< ConcreteModel, ConcreteOp >::getBufferType ( Operation op,
Value  value,
const BufferizationOptions options,
SmallVector< Value > &  invocationStack 
) const
inline

The documentation for this struct was generated from the following file: