public static final class IREnumeration.AllUsesEnum extends Object implements Enumeration<Operand>
Enumeration
of Operand
. It used
for holding the uses of a particular instruction and being used
as an enumeration for iterating over. It differs from other
enumerations of Operand as it iterates over both implicit
and explicit operands.SSADictionary
Modifier and Type | Field and Description |
---|---|
private int |
curHeapOperand
Current heap operand we're upto for the enumeration
|
private HeapOperand<?>[] |
heapOperands
Array of heap operands defined by the instruction
|
private Enumeration<Register> |
implicitUses
Implicit uses from the operator
|
private Instruction |
instr
Defining instruction
|
private Enumeration<Operand> |
instructionOperands
Enumeration of non-heap operands defined by the instruction
|
Constructor and Description |
---|
AllUsesEnum(IR ir,
Instruction instr)
Construct/initialize object
|
Modifier and Type | Method and Description |
---|---|
boolean |
hasMoreElements()
Are there any more elements in the enumeration
|
Operand |
nextElement() |
private final Enumeration<Operand> instructionOperands
private final HeapOperand<?>[] heapOperands
private int curHeapOperand
private final Enumeration<Register> implicitUses
private final Instruction instr
public AllUsesEnum(IR ir, Instruction instr)
ir
- Containing IRinstr
- Instruction to get uses forpublic boolean hasMoreElements()
hasMoreElements
in interface Enumeration<Operand>
public Operand nextElement()
nextElement
in interface Enumeration<Operand>