byucc.jhdl.synth.classparse
Class OpCodeWideiinc

java.lang.Object
  extended bybyucc.jhdl.synth.classparse.ClassFileParser
      extended bybyucc.jhdl.synth.classparse.OpCode
          extended bybyucc.jhdl.synth.classparse.OpCodeWide
              extended bybyucc.jhdl.synth.classparse.OpCodeWideiinc

public class OpCodeWideiinc
extends OpCodeWide

If you read the VM spec. you will notice that there is no opcode named wideiinc. Howver, the opcode wide exists in two forms. One of these forms applies only when the sub_opcode is iinc. So, I take care of that case in this class. (The other case is handled in OpCodeWideop)


Field Summary
 
Fields inherited from class byucc.jhdl.synth.classparse.OpCodeWide
sub_op
 
Fields inherited from class byucc.jhdl.synth.classparse.OpCode
codes, mnemonic, OP_AALOAD, OP_AASTORE, OP_ACONST_NULL, OP_ALOAD, OP_ALOAD_0, OP_ALOAD_1, OP_ALOAD_2, OP_ALOAD_3, OP_ANEWARRAY, OP_ARETURN, OP_ARRAYLENGTH, OP_ASTORE, OP_ASTORE_0, OP_ASTORE_1, OP_ASTORE_2, OP_ASTORE_3, OP_ATHROW, OP_BALOAD, OP_BASTORE, OP_BIPUSH, OP_CALOAD, OP_CASTORE, OP_CHECKCAST, op_code, OP_D2F, OP_D2I, OP_D2L, OP_DADD, OP_DALOAD, OP_DASTORE, OP_DCMPG, OP_DCMPL, OP_DCONST_0, OP_DCONST_1, OP_DDIV, OP_DLOAD, OP_DLOAD_0, OP_DLOAD_1, OP_DLOAD_2, OP_DLOAD_3, OP_DMUL, OP_DNEG, OP_DREM, OP_DRETURN, OP_DSTORE, OP_DSTORE_0, OP_DSTORE_1, OP_DSTORE_2, OP_DSTORE_3, OP_DSUB, OP_DUP, OP_DUP_X1, OP_DUP_X2, OP_DUP2, OP_DUP2_X1, OP_DUP2_X2, OP_F2D, OP_F2I, OP_F2L, OP_FADD, OP_FALOAD, OP_FASTORE, OP_FCMPG, OP_FCMPL, OP_FCONST_0, OP_FCONST_1, OP_FCONST_2, OP_FDIV, OP_FLOAD, OP_FLOAD_0, OP_FLOAD_1, OP_FLOAD_2, OP_FLOAD_3, OP_FMUL, OP_FNEG, OP_FREM, OP_FRETURN, OP_FSTORE, OP_FSTORE_0, OP_FSTORE_1, OP_FSTORE_2, OP_FSTORE_3, OP_FSUB, OP_GETFIELD, OP_GETSTATIC, OP_GOTO, OP_GOTO_W, OP_I2B, OP_I2C, OP_I2D, OP_I2F, OP_I2L, OP_I2S, OP_IADD, OP_IALOAD, OP_IAND, OP_IASTORE, OP_ICONST_0, OP_ICONST_1, OP_ICONST_2, OP_ICONST_3, OP_ICONST_4, OP_ICONST_5, OP_ICONST_M1, OP_IDIV, OP_IF_ACMPEQ, OP_IF_ACMPNE, OP_IF_ICMPEQ, OP_IF_ICMPGE, OP_IF_ICMPGT, OP_IF_ICMPLE, OP_IF_ICMPLT, OP_IF_ICMPNE, OP_IFEQ, OP_IFGE, OP_IFGT, OP_IFLE, OP_IFLT, OP_IFNE, OP_IFNONNULL, OP_IFNULL, OP_IINC, OP_ILOAD, OP_ILOAD_0, OP_ILOAD_1, OP_ILOAD_2, OP_ILOAD_3, OP_IMUL, OP_INEG, OP_INSTANCEOF, OP_INVOKEINTERFACE, OP_INVOKENONVIRTUAL, OP_INVOKESTATIC, OP_INVOKEVIRTUAL, OP_IOR, OP_IREM, OP_IRETURN, OP_ISHL, OP_ISHR, OP_ISTORE, OP_ISTORE_0, OP_ISTORE_1, OP_ISTORE_2, OP_ISTORE_3, OP_ISUB, OP_IUSHR, OP_IXOR, OP_JSR, OP_JSR_W, OP_L2D, OP_L2F, OP_L2I, OP_LADD, OP_LALOAD, OP_LAND, OP_LASTORE, OP_LCMP, OP_LCONST_0, OP_LCONST_1, OP_LDC, OP_LDC_W, OP_LDC2_W, OP_LDIV, OP_LLOAD, OP_LLOAD_0, OP_LLOAD_1, OP_LLOAD_2, OP_LLOAD_3, OP_LMUL, OP_LNEG, OP_LOOKUPSWITCH, OP_LOR, OP_LREM, OP_LRETURN, OP_LSHL, OP_LSHR, OP_LSTORE, OP_LSTORE_0, OP_LSTORE_1, OP_LSTORE_2, OP_LSTORE_3, OP_LSUB, OP_LUSHR, OP_LXOR, OP_MONITORENTER, OP_MONITOREXIT, OP_MULTIANEWARRAY, OP_NEW, OP_NEWARRAY, OP_NOP, OP_POP, OP_POP2, OP_PUTFIELD, OP_PUTSTATIC, OP_RET, OP_RETURN, OP_SALOAD, OP_SASTORE, OP_SIPUSH, OP_SWAP, OP_TABLESWITCH, OP_UNUSED, OP_WIDE, pc
 
Fields inherited from class byucc.jhdl.synth.classparse.ClassFileParser
CONSTANT_Class, CONSTANT_Double, CONSTANT_Fieldref, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodref, CONSTANT_Long, CONSTANT_Methodref, CONSTANT_NameAndType, CONSTANT_String, CONSTANT_Utf8
 
Constructor Summary
OpCodeWideiinc(int pc, java.lang.String mnemonic, int op_code, int sub_op)
           
 
Method Summary
 void toClass(ClassFileWriter output)
          Spit out the contents of this OpCodeWideiinc to the given ClassFileWriter.
 java.lang.StringBuffer toJasmin(java.lang.StringBuffer result)
           
 java.lang.String toString()
           
 
Methods inherited from class byucc.jhdl.synth.classparse.OpCodeWide
parse
 
Methods inherited from class byucc.jhdl.synth.classparse.OpCode
execute, getImmediate, getLineNumber, getName, getOpCode, getPC, getPossibleTargets, hasImmediate, isConditionalBranch, isControl, isSwitch, isTarget, isUnconditionalBranch, jasminHeader, registerOpCodeArray, setTarget
 
Methods inherited from class byucc.jhdl.synth.classparse.ClassFileParser
getClassFile, getConstantPool, length, parseAttributeInfo, parseAttributes, parseConstantPool, parseCPInfo, parseDouble, parseFieldInfo, parseFields, parseFloat, parseLong, parseMethodInfo, parseMethods, parseOpCode, parseSuccess, parseUTF, s2, toJasmin, u1, u2, u4
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OpCodeWideiinc

public OpCodeWideiinc(int pc,
                      java.lang.String mnemonic,
                      int op_code,
                      int sub_op)
Method Detail

toClass

public void toClass(ClassFileWriter output)
Spit out the contents of this OpCodeWideiinc to the given ClassFileWriter. This method is basically the opposite of the constructor. The constructor reads in a OpCodeWideiinc from a DataInputStream and this method spits the OpCodeWideiinc out to a DataOutputStream, (which is in the ClassFileWriter).

Overrides:
toClass in class OpCodeWide
Parameters:
output - a ClassFileWriter constructed with a DataOutputStram to contain the output class file.

toString

public java.lang.String toString()
Overrides:
toString in class OpCodeWide

toJasmin

public java.lang.StringBuffer toJasmin(java.lang.StringBuffer result)
Overrides:
toJasmin in class OpCodeWide


Copyright ? 2006 Brigham Young University, Configurable Computing Laboratory. All Rights Reserved.