MLIR  14.0.0git
Public Member Functions | Static Public Member Functions | List of all members
mlir::BlockOperand Class Reference

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

#include "mlir/IR/BlockSupport.h"

Inheritance diagram for mlir::BlockOperand:
Inheritance graph
[legend]
Collaboration diagram for mlir::BlockOperand:
Collaboration graph
[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...
 
IROperandoperator= (IROperand &&other)
 
Blockget () 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
OperationgetOwner () const
 Return the owner of this operand. More...
 
IROperandBasegetNextOperandUsingThisValue ()
 Return the next operand on the use-list of the value we are referring to. 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)
 
IROperandBaseoperator= (IROperandBase &&other)
 
 IROperandBase (const IROperandBase &use)=delete
 Operands are not copyable or assignable. More...
 
IROperandBaseoperator= (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<typename UseListT >
void insertInto (UseListT *useList)
 Insert this operand into the given use list. More...
 
- Protected Attributes inherited from mlir::detail::IROperandBase
IROperandBasenextUse = 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 203 of file Value.cpp.

References mlir::Operation::getBlockOperands(), and mlir::detail::OpResultImpl::getOwner().

◆ getUseList()

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

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

Definition at line 198 of file Value.cpp.

References value.


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