All Packages Class Hierarchy This Package Previous Next Index
java.lang.Object | +----harpoon.IR.Bytecode.Instr | +----harpoon.IR.Bytecode.InGen
InGen
is used for non-branching instructions.
An InGen
has an opcode and optional operands.
An InGen
has exactly one predecessor and exactly
one successor.
Note that InGen
contain Operand
objects
for all relevant, explicit or implicit operands of the
bytecode instruction. This means that, for example, an
iload_0
will be given an OpLocalVariable
operand corresponding to the implicit '0', and conversely that
invokeinterface
will not contain operands for
the nargs
operand (which is obvious from the method
signature) nor for the dummy placeholder value which trails the
opcode in the raw bytecode array.
InGen
from a chunk of bytecode starting at
offset pc
.
public InGen(String sourcefile, int linenumber, byte code[], int pc, Code parent)
InGen
from a chunk of bytecode starting at
offset pc
. parent
is used to lookup
constant_pool
references.
public byte getOpcode()
public Operand getOperand(int i)
public Operand[] getOperands()
public String toString()
All Packages Class Hierarchy This Package Previous Next Index