jef.dna.instructions.impl
Class Dup_X1

java.lang.Object
  extended by jef.dna.instructions.impl.InstructionAncestor
      extended by jef.dna.instructions.impl.Dup_X1
All Implemented Interfaces:
java.lang.Cloneable, Instruction, BytesCountable

public class Dup_X1
extends InstructionAncestor

This class maps the DUP_X1 bytecode instruction which duplicates the top value on the operand stack and insert the duplicated value two values down in the operand stack. The dup_x1 instruction must not be used unless both value1 and value2 are values of a category 1 computational type.

Author:
ggiovanzana

Field Summary
 
Fields inherited from class jef.dna.instructions.impl.InstructionAncestor
logger, opCode, operands, operandsCount
 
Constructor Summary
Dup_X1()
          Creates a new instance of Dup_X1
 
Method Summary
 int updateRefs(int offset)
          This method must implement the logic necessary to update all the references to constant pool table's entries contained within the bytecode instruction.
 
Methods inherited from class jef.dna.instructions.impl.InstructionAncestor
clone, fromArray, getBytesCount, getOpCode, getOperands, getOperandsCount, setOpCode, setOperands, setOperandsCountPosticipated, toArray
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Dup_X1

public Dup_X1()
Creates a new instance of Dup_X1

Method Detail

updateRefs

public int updateRefs(int offset)
This method must implement the logic necessary to update all the references to constant pool table's entries contained within the bytecode instruction.

Specified by:
updateRefs in interface Instruction
Overrides:
updateRefs in class InstructionAncestor
Parameters:
offset - The offset used for updating expressed as number of cpt's entries to be skipped
Returns:
int The number of processed words within the current bytecode instruction