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. | |
| 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 |
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 513 of file MachineRegisterInfo.h.
| typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::pointer llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::pointer |
Definition at line 531 of file MachineRegisterInfo.h.
| typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::reference llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::reference |
Definition at line 529 of file MachineRegisterInfo.h.
| llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::defusechain_iterator | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug > & | I | ) | [inline] |
Definition at line 533 of file MachineRegisterInfo.h.
| llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::defusechain_iterator | ( | ) | [inline] |
Definition at line 534 of file MachineRegisterInfo.h.
| bool llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::atEnd | ( | ) | const [inline] |
atEnd - return true if this iterator is equal to reg_end() on the value.
Definition at line 544 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::getVRegDef().
| MachineOperand& llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::getOperand | ( | ) | const [inline] |
Definition at line 591 of file MachineRegisterInfo.h.
| unsigned llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::getOperandNo | ( | ) | const [inline] |
getOperandNo - Return the operand # of this MachineOperand in its MachineInstr.
Definition at line 598 of file MachineRegisterInfo.h.
References llvm::MachineInstr::getOperand(), and llvm::MachineOperand::getParent().
Referenced by llvm::FastISel::tryToFoldLoad().
| bool llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator!= | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug > & | x | ) | const [inline] |
Definition at line 539 of file MachineRegisterInfo.h.
References llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator==().
| MachineInstr& llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator* | ( | ) | const [inline] |
Definition at line 604 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent().
| defusechain_iterator& llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator++ | ( | ) | [inline] |
Definition at line 547 of file MachineRegisterInfo.h.
References llvm::MachineOperand::isDebug(), llvm::MachineOperand::isDef(), and llvm::MachineOperand::isUse().
| defusechain_iterator llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator++ | ( | int | ) | [inline] |
Definition at line 568 of file MachineRegisterInfo.h.
| MachineInstr* llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator-> | ( | ) | const [inline] |
Definition at line 609 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent().
| bool llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator== | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug > & | x | ) | const [inline] |
Definition at line 536 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::operator!=().
| MachineInstr* llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::skipBundle | ( | ) | [inline] |
Definition at line 583 of file MachineRegisterInfo.h.
References llvm::getBundleStart(), llvm::MachineOperand::getParent(), and llvm::A64CC::MI.
| MachineInstr* llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug >::skipInstruction | ( | ) | [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 575 of file MachineRegisterInfo.h.
References llvm::MachineOperand::getParent(), and llvm::A64CC::MI.
friend class MachineRegisterInfo [friend] |
Definition at line 526 of file MachineRegisterInfo.h.