MLIR: mlir::BlockOperand Class Reference (original) (raw)

A block operand represents an operand that holds a reference to a Block, e.g. More...

#include "[mlir/IR/BlockSupport.h](BlockSupport%5F8h%5Fsource.html)"

+ Inheritance diagram for mlir::BlockOperand:

[legend]

Public Member Functions
unsigned getOperandNumber ()
Return which operand this is in the BlockOperand list of the Operation. More...
- Public Member Functions inherited from mlir::IROperand< BlockOperand, Block * >
IROperand (Operation *owner)
IROperand (Operation *owner, Block * value)
IROperand (IROperand &&other)
We support a move constructor so IROperand's can be in vectors, but this shouldn't be used by general clients. More...
IROperand & operator= (IROperand &&other)
bool operator== (const IROperand< BlockOperand, Block * > &other) const
Two operands are equal if they have the same owner and the same operand number. More...
bool operator!= (const IROperand< BlockOperand, Block * > &other) const
Block * get () const
Return the current value being used by this operand. More...
void set (Block * newValue)
Set the current value being used by this operand. More...
bool is (Block * other) const
Returns true if this operand contains the given value. More...
void drop ()
Remove this use of the operand. More...
- Public Member Functions inherited from mlir::detail::IROperandBase
Operation * getOwner () const
Return the owner of this operand. More...
IROperandBase * getNextOperandUsingThisValue ()
Return the next operand on the use-list of the value we are referring to. More...
void initChainWithUse (IROperandBase **self)
Initialize the use-def chain by setting the back address to self and nextUse to nullptr. More...
void linkTo (IROperandBase *next)
Link the current node to next. More...
Static Public Member Functions
static IRObjectWithUseList< BlockOperand > * getUseList (Block *value)
Provide the use list that is attached to the given block. More...
Additional Inherited Members
- Protected Member Functions inherited from mlir::detail::IROperandBase
IROperandBase (Operation *owner)
IROperandBase (IROperandBase &&other)
IROperandBase & operator= (IROperandBase &&other)
IROperandBase (const IROperandBase &use)=delete
Operands are not copyable or assignable. More...
IROperandBase & operator= (const IROperandBase &use)=delete
~IROperandBase ()
void drop ()
Remove this use of the operand. More...
void removeFromCurrent ()
Remove this operand from the current use list. More...
template
void insertInto (UseListT *useList)
Insert this operand into the given use list. More...
- Protected Attributes inherited from mlir::detail::IROperandBase
IROperandBase * nextUse = nullptr
The next operand in the use-chain. More...
IROperandBase ** back = nullptr
This points to the previous link in the use-chain. More...

Detailed Description

A block operand represents an operand that holds a reference to a Block, e.g.

for terminator operations.

Definition at line 30 of file BlockSupport.h.

Member Function Documentation

getOperandNumber()

unsigned BlockOperand::getOperandNumber ( )

Return which operand this is in the BlockOperand list of the Operation.

Return which operand this is in the operand list.

Definition at line 219 of file Value.cpp.

getUseList()

IRObjectWithUseList< BlockOperand > * BlockOperand::getUseList ( Block * value) static

Provide the use list that is attached to the given block.

Definition at line 214 of file Value.cpp.


The documentation for this class was generated from the following files: