class MachineRegisterInfo::defusechain_iterator
Declaration
template <bool ReturnUses,
bool ReturnDefs,
bool SkipDebug,
bool ByOperand,
bool ByInstr,
bool ByBundle>
class MachineRegisterInfo::defusechain_iterator { /* full declaration omitted */ };Description
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.
Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:998
Templates
- bool ReturnUses
- bool ReturnDefs
- bool SkipDebug
- bool ByOperand
- bool ByInstr
- bool ByBundle
Member Variables
- private llvm::MachineOperand* Op = nullptr
Method Overview
- private void advance()
- public bool atEnd() const
- private defusechain_iterator<Uses, Defs, SkipDebug, ByOperand, ByInstr, ByBundle>(llvm::MachineOperand * op)
- public defusechain_iterator<Uses, Defs, SkipDebug, ByOperand, ByInstr, ByBundle>()
- public unsigned int getOperandNo() const
Methods
¶void advance()
void advance()Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:1022
¶bool atEnd() const
bool atEnd() constDescription
atEnd - return true if this iterator is equal to reg_end() on the value.
Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:1053
¶defusechain_iterator<Uses,
Defs,
SkipDebug,
ByOperand,
ByInstr,
ByBundle>(
llvm::MachineOperand* op)
defusechain_iterator<Uses,
Defs,
SkipDebug,
ByOperand,
ByInstr,
ByBundle>(
llvm::MachineOperand* op)Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:1011
Parameters
¶defusechain_iterator<Uses,
Defs,
SkipDebug,
ByOperand,
ByInstr,
ByBundle>()
defusechain_iterator<Uses,
Defs,
SkipDebug,
ByOperand,
ByInstr,
ByBundle>()Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:1043
¶unsigned int getOperandNo() const
unsigned int getOperandNo() constDescription
getOperandNo - Return the operand # of this MachineOperand in its MachineInstr.
Declared at: llvm/include/llvm/CodeGen/MachineRegisterInfo.h:1081