LLVM 18.0.0git
|
defusechain_iterator - This class provides iterator support for machine operands in the function that use or define a specific register. More...
#include "llvm/CodeGen/MachineRegisterInfo.h"
Public Types | |
using | iterator_category = std::forward_iterator_tag |
using | value_type = MachineInstr |
using | difference_type = std::ptrdiff_t |
using | pointer = value_type * |
using | reference = value_type & |
Public Member Functions | |
defusechain_instr_iterator ()=default | |
bool | operator== (const defusechain_instr_iterator &x) const |
bool | operator!= (const defusechain_instr_iterator &x) const |
bool | atEnd () const |
atEnd - return true if this iterator is equal to reg_end() on the value. | |
defusechain_instr_iterator & | operator++ () |
defusechain_instr_iterator | operator++ (int) |
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 1137 of file MachineRegisterInfo.h.
using llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::difference_type = std::ptrdiff_t |
Definition at line 1143 of file MachineRegisterInfo.h.
using llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::iterator_category = std::forward_iterator_tag |
Definition at line 1141 of file MachineRegisterInfo.h.
using llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::pointer = value_type * |
Definition at line 1144 of file MachineRegisterInfo.h.
using llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::reference = value_type & |
Definition at line 1145 of file MachineRegisterInfo.h.
using llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::value_type = MachineInstr |
Definition at line 1142 of file MachineRegisterInfo.h.
|
default |
|
inline |
atEnd - return true if this iterator is equal to reg_end() on the value.
Definition at line 1192 of file MachineRegisterInfo.h.
|
inline |
Definition at line 1187 of file MachineRegisterInfo.h.
|
inline |
Definition at line 1219 of file MachineRegisterInfo.h.
References assert(), and llvm::getBundleStart().
Referenced by llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator->().
|
inline |
Definition at line 1195 of file MachineRegisterInfo.h.
References assert(), llvm::getBundleStart(), and P.
|
inline |
Definition at line 1214 of file MachineRegisterInfo.h.
|
inline |
Definition at line 1226 of file MachineRegisterInfo.h.
|
inline |
Definition at line 1184 of file MachineRegisterInfo.h.
Referenced by llvm::MachineRegisterInfo::defusechain_instr_iterator< ReturnUses, ReturnDefs, SkipDebug, ByOperand, ByInstr, ByBundle >::operator!=().
|
friend |
Definition at line 1138 of file MachineRegisterInfo.h.