LLVM
15.0.0git
|
VPUsers instance used by VPBlockBase to manage CondBit and the block predicate. More...
#include "Transforms/Vectorize/VPlan.h"
Public Member Functions | |
VPBlockUser () | |
VPValue * | getSingleOperandOrNull () |
const VPValue * | getSingleOperandOrNull () const |
void | resetSingleOpUser (VPValue *NewVal) |
![]() | |
VPUser ()=delete | |
VPUser (const VPUser &)=delete | |
VPUser & | operator= (const VPUser &)=delete |
virtual | ~VPUser () |
VPUserID | getVPUserID () const |
void | addOperand (VPValue *Operand) |
unsigned | getNumOperands () const |
VPValue * | getOperand (unsigned N) const |
void | setOperand (unsigned I, VPValue *New) |
void | removeLastOperand () |
operand_iterator | op_begin () |
const_operand_iterator | op_begin () const |
operand_iterator | op_end () |
const_operand_iterator | op_end () const |
operand_range | operands () |
const_operand_range | operands () const |
virtual bool | usesScalars (const VPValue *Op) const |
Returns true if the VPUser uses scalars of operand Op . More... | |
virtual bool | onlyFirstLaneUsed (const VPValue *Op) const |
Returns true if the VPUser only uses the first lane of operand Op . More... | |
Additional Inherited Members | |
![]() | |
enum | VPUserID { VPUserID::Recipe, VPUserID::LiveOut, VPUserID::Block } |
Subclass identifier (for isa/dyn_cast). More... | |
typedef SmallVectorImpl< VPValue * >::iterator | operand_iterator |
typedef SmallVectorImpl< VPValue * >::const_iterator | const_operand_iterator |
typedef iterator_range< operand_iterator > | operand_range |
typedef iterator_range< const_operand_iterator > | const_operand_range |
![]() | |
static bool | classof (const VPDef *Recipe) |
Method to support type inquiry through isa, cast, and dyn_cast. More... | |
![]() | |
void | printOperands (raw_ostream &O, VPSlotTracker &SlotTracker) const |
Print the operands to O . More... | |
VPUser (ArrayRef< VPValue * > Operands, VPUserID ID) | |
VPUser (std::initializer_list< VPValue * > Operands, VPUserID ID) | |
template<typename IterT > | |
VPUser (iterator_range< IterT > Operands, VPUserID ID) | |
VPUsers instance used by VPBlockBase to manage CondBit and the block predicate.
Currently VPBlockUsers are used in VPBlockBase for historical reasons, but in the future the only VPUsers should either be recipes or live-outs.VPBlockBase uses.
|
inline |
Definition at line 365 of file VPlan.h.
References llvm::VPUser::getNumOperands(), and llvm::VPUser::getOperand().
Referenced by llvm::VPBlockBase::getCondBit(), and llvm::VPBlockBase::getPredicate().
Definition at line 371 of file VPlan.h.
References llvm::VPUser::getNumOperands(), and llvm::VPUser::getOperand().
|
inline |
Definition at line 378 of file VPlan.h.
References llvm::VPUser::addOperand(), assert(), llvm::VPUser::getNumOperands(), llvm::VPUser::removeLastOperand(), and llvm::VPUser::setOperand().
Referenced by llvm::VPBlockBase::setCondBit(), and llvm::VPBlockBase::setPredicate().