LOOKUPSWITCH, TABLESWITCH, InstructionList
| Modifier and Type | Field and Description |
|---|---|
| protected int | |
| protected int[] | |
| protected short | |
| protected int[] | |
| protected int | |
| protected int | |
| protected InstructionHandle[] |
| Access | Constructor and Description |
|---|---|
| pack-priv | InstructionSelect(short opcode, int[]
array of matching values match, InstructionHandle[] instruction targets targets, InstructionHandle default instruction target target)(Match, target) pairs for switch. |
| public |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | Returns: true, if ih is target of this instructionOverrides org. Implements org. |
| pack-priv void | dispose()
Overrides org. |
| public void | dump(DataOutputStream
Output stream out)Overrides org. |
| public boolean | equals(Object
the reference object with which to compare. other)Overrides org. |
| public int[] | |
| public int | |
| public int[] | |
| protected int | |
| public InstructionHandle[] | |
| public int | hashCode()
Overrides org. |
| public void | |
| public String | Returns: mnemonic for instructionlong/short format switch verbose)Overrides org. |
| protected int | Returns: additional offset caused by possible change of this instruction's lengthadditional offset caused by preceding (variable length) instructions offset, int the maximum offset that may be caused by these instructions max_offset)Overrides org. |
| public void | updateTarget(InstructionHandle
old target old_ih, InstructionHandle new target new_ih)Overrides org. Implements org. |
| fixedLength | back to summary |
|---|---|
| protected int fixedLength | |
| indices | back to summary |
|---|---|
| protected int[] indices | |
| length | back to summary |
|---|---|
| protected short length | |
| match | back to summary |
|---|---|
| protected int[] match | |
| matchLength | back to summary |
|---|---|
| protected int matchLength | |
| padding | back to summary |
|---|---|
| protected int padding | |
| targets | back to summary |
|---|---|
| protected InstructionHandle[] targets | |
| InstructionSelect | back to summary |
|---|---|
| pack-priv InstructionSelect(short opcode, int[] match, InstructionHandle[] targets, InstructionHandle target) (Match, target) pairs for switch. `Match' and `targets' must have the same length of course.
| |
| InstructionSelect | back to summary |
|---|---|
| public InstructionSelect(short opcode, ByteSequence bytes) throws IOException | |
| containsTarget | back to summary |
|---|---|
| public boolean containsTarget(InstructionHandle ih) Overrides org. Implements org.
| |
| dispose | back to summary |
|---|---|
| pack-priv void dispose() Overrides org. Inform targets that they're not targeted anymore. | |
| dump | back to summary |
|---|---|
| public void dump(DataOutputStream out) throws IOException Overrides org. Dump instruction as byte code to stream out.
| |
| equals | back to summary |
|---|---|
| public boolean equals(Object other) Overrides org. Doc from org. Only equal if they are the same branch instruction - otherwise too risky as the targets may only temporarily be pointing at the same destination.
| |
| getIndices | back to summary |
|---|---|
public int[] getIndices()
| |
| getLength | back to summary |
|---|---|
| public int getLength() Overrides org. | |
| getMatchs | back to summary |
|---|---|
public int[] getMatchs()
| |
| getTargetOffset | back to summary |
|---|---|
| protected int getTargetOffset(InstructionHandle target) | |
| getTargets | back to summary |
|---|---|
public InstructionHandle[] getTargets()
| |
| hashCode | back to summary |
|---|---|
| public int hashCode() Overrides org. Doc from java. Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
The general contract of
| |
| setTarget | back to summary |
|---|---|
| public void setTarget(int i, InstructionHandle target) Set branch target for `i'th case | |
| toString | back to summary |
|---|---|
| public String toString(boolean verbose) Overrides org. Doc from org. Long output format:
| |
| updatePosition | back to summary |
|---|---|
| protected int updatePosition(int offset, int max_offset) Overrides org. Since this is a variable length instruction, it may shift the following instructions which then need to update their position. Called by InstructionList.setPositions when setting the position for every instruction. In the presence of variable length instructions `setPositions' performs multiple passes over the instruction list to calculate the correct (byte) positions and offsets by calling this function.
| |
| updateTarget | back to summary |
|---|---|
| public void updateTarget(InstructionHandle old_ih, InstructionHandle new_ih) Overrides org. Implements org. Doc from org. Update the target destination for this instruction. If an oldHandle is provided it is checked to verify that is where the target currently points to before changing it.
| |