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) |
unsigned | getOperandNo () const |
MachineOperand & | operator* () const |
MachineOperand * | 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 779 of file MachineRegisterInfo.h.
typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::pointer llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::pointer |
Definition at line 817 of file MachineRegisterInfo.h.
typedef std::iterator<std::forward_iterator_tag, MachineInstr, ptrdiff_t>::reference llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::reference |
Definition at line 815 of file MachineRegisterInfo.h.
llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::defusechain_iterator | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle > & | I | ) | [inline] |
Definition at line 819 of file MachineRegisterInfo.h.
llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::defusechain_iterator | ( | ) | [inline] |
Definition at line 820 of file MachineRegisterInfo.h.
bool llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::atEnd | ( | ) | const [inline] |
atEnd - return true if this iterator is equal to reg_end() on the value.
Definition at line 830 of file MachineRegisterInfo.h.
unsigned llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::getOperandNo | ( | ) | const [inline] |
getOperandNo - Return the operand # of this MachineOperand in its MachineInstr.
Definition at line 857 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, ByOperand, ByInstr, ByBundle >::operator!= | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle > & | x | ) | const [inline] |
Definition at line 825 of file MachineRegisterInfo.h.
MachineOperand& llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator* | ( | ) | const [inline] |
Definition at line 863 of file MachineRegisterInfo.h.
defusechain_iterator& llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator++ | ( | ) | [inline] |
Definition at line 833 of file MachineRegisterInfo.h.
References advance(), llvm::getBundleStart(), llvm::MachineOperand::getParent(), and P.
defusechain_iterator llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator++ | ( | int | ) | [inline] |
Definition at line 851 of file MachineRegisterInfo.h.
MachineOperand* llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator-> | ( | ) | const [inline] |
Definition at line 868 of file MachineRegisterInfo.h.
bool llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator== | ( | const defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle > & | x | ) | const [inline] |
Definition at line 822 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::defusechain_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator!=().
friend class MachineRegisterInfo [friend] |
Definition at line 792 of file MachineRegisterInfo.h.