LLVM: llvm::MIBundleOperandIteratorBase< ValueT > Class Template Reference (original) (raw)

MIBundleOperandIteratorBase - Iterator that visits all operands in a bundle of MachineInstrs. More...

#include "[llvm/CodeGen/MachineInstrBundle.h](MachineInstrBundle%5F8h%5Fsource.html)"

Public Member Functions
bool isValid () const
isValid - Returns true until all the operands have been visited.
void operator++ ()
Preincrement. Move to the next operand.
ValueT & operator* () const
ValueT * operator-> () const
bool operator== (const MIBundleOperandIteratorBase &Arg) const
unsigned getOperandNo () const
getOperandNo - Returns the number of the current operand relative to its instruction.
Public Member Functions inherited from llvm::iterator_facade_base< MIBundleOperandIteratorBase< ValueT >, std::forward_iterator_tag, ValueT >
MIBundleOperandIteratorBase< ValueT > operator+ (std::ptrdiff_t n) const
MIBundleOperandIteratorBase< ValueT > operator- (std::ptrdiff_t n) const
MIBundleOperandIteratorBase< ValueT > & operator++ ()
MIBundleOperandIteratorBase< ValueT > & operator-- ()
bool operator!= (const MIBundleOperandIteratorBase< ValueT > &RHS) const
bool operator> (const MIBundleOperandIteratorBase< ValueT > &RHS) const
bool operator<= (const MIBundleOperandIteratorBase< ValueT > &RHS) const
bool operator>= (const MIBundleOperandIteratorBase< ValueT > &RHS) const
PointerProxy operator-> () const
ReferenceProxy operator[] (std::ptrdiff_t n) const
Additional Inherited Members
Public Types inherited from llvm::iterator_facade_base< MIBundleOperandIteratorBase< ValueT >, std::forward_iterator_tag, ValueT >
using iterator_category
using value_type
using difference_type
using pointer
using reference
Protected Types inherited from llvm::iterator_facade_base< MIBundleOperandIteratorBase< ValueT >, std::forward_iterator_tag, ValueT >
enum

template
class llvm::MIBundleOperandIteratorBase< ValueT >

MIBundleOperandIteratorBase - Iterator that visits all operands in a bundle of MachineInstrs.

This class is not intended to be used directly, use one of the sub-classes instead.

Intended use:

for (MIBundleOperands MIO(MI); MIO.isValid(); ++MIO) { if (!MIO->isReg()) continue; ... }

Definition at line 97 of file MachineInstrBundle.h.

template

MIBundleOperandIteratorBase() [2/2]

template

Constructor for an iterator past the last iteration: both instruction iterators point to the end of the BB and OpI == OpE.

Definition at line 133 of file MachineInstrBundle.h.

getOperandNo()

template

getOperandNo - Returns the number of the current operand relative to its instruction.

Definition at line 161 of file MachineInstrBundle.h.

isValid()

template

operator*()

template

operator++()

template

operator->()

template

operator==()

template


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