LLVM API Documentation
#include <MachineRegisterInfo.h>
Public Types | |
typedef std::iterator < std::forward_iterator_tag, MachineInstr, ptrdiff_t > ::reference | reference |
typedef std::iterator < std::forward_iterator_tag, MachineInstr, ptrdiff_t > ::pointer | pointer |
Public Member Functions | |
defusechain_iterator (const defusechain_iterator &I) | |
defusechain_iterator () | |
bool | operator== (const defusechain_iterator &x) const |
bool | operator!= (const defusechain_iterator &x) const |
bool | atEnd () const |
atEnd - return true if this iterator is equal to reg_end() on the value. More... | |
defusechain_iterator & | operator++ () |
defusechain_iterator | operator++ (int) |
MachineInstr * | skipInstruction () |
MachineInstr * | skipBundle () |
MachineOperand & | getOperand () const |
unsigned | getOperandNo () const |
MachineInstr & | operator* () const |
MachineInstr * | operator-> () const |
Friends | |
class | MachineRegisterInfo |
reg_begin/reg_end - Provide iteration support to walk over all definitions and uses of a register within the MachineFunction that corresponds to this MachineRegisterInfo object.
defusechain_iterator - This class provides iterator support for machine operands in the function that use or define a specific register. If ReturnUses is true it returns uses of registers, if ReturnDefs is true it returns defs. If neither are true then you are silly and it always returns end(). If SkipDebug is true it skips uses marked Debug when incrementing.
Definition at line 204 of file MachineRegisterInfo.h.
typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::pointer llvm::MachineRegisterInfo::defusechain_iterator< Uses, Defs, SkipDebug >::pointer |
Definition at line 574 of file MachineRegisterInfo.h.
typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::reference llvm::MachineRegisterInfo::defusechain_iterator< Uses, Defs, SkipDebug >::reference |
Definition at line 572 of file MachineRegisterInfo.h.
|
inline |
Definition at line 576 of file MachineRegisterInfo.h.
|
inline |
Definition at line 577 of file MachineRegisterInfo.h.
|
inline |
atEnd - return true if this iterator is equal to reg_end() on the value.
Definition at line 587 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::getVRegDef().
|
inline |
Definition at line 634 of file MachineRegisterInfo.h.
|
inline |
getOperandNo - Return the operand # of this MachineOperand in its MachineInstr.
Definition at line 641 of file MachineRegisterInfo.h.
References llvm::MachineInstr::getOperand(), and llvm::MachineOperand::getParent().
Referenced by llvm::FastISel::tryToFoldLoad().
|
inline |
Definition at line 582 of file MachineRegisterInfo.h.
References llvm::MachineRegisterInfo::defusechain_iterator< Uses, Defs, SkipDebug >::operator==().
|
inline |
Definition at line 647 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent().
|
inline |
Definition at line 590 of file MachineRegisterInfo.h.
References llvm::MachineOperand::isDebug(), llvm::MachineOperand::isDef(), and llvm::MachineOperand::isUse().
|
inline |
Definition at line 611 of file MachineRegisterInfo.h.
|
inline |
Definition at line 652 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent().
|
inline |
Definition at line 579 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::defusechain_iterator< Uses, Defs, SkipDebug >::operator!=().
|
inline |
Definition at line 626 of file MachineRegisterInfo.h.
References llvm::getBundleStart(), llvm::MachineOperand::getParent(), and llvm::A64CC::MI.
|
inline |
skipInstruction - move forward until reaching a different instruction. Return the skipped instruction that is no longer pointed to, or NULL if already pointing to end().
Definition at line 618 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent(), and llvm::A64CC::MI.
Referenced by findUseBetween().
|
friend |
Definition at line 569 of file MachineRegisterInfo.h.