byucc.jhdl.synth.classparse
Class OpCodeLookupswitch

java.lang.Object
  extended bybyucc.jhdl.synth.classparse.ClassFileParser
      extended bybyucc.jhdl.synth.classparse.OpCode
          extended bybyucc.jhdl.synth.classparse.OpCodeBranch
              extended bybyucc.jhdl.synth.classparse.OpCodeSwitch
                  extended bybyucc.jhdl.synth.classparse.OpCodeLookupswitch

public class OpCodeLookupswitch
extends OpCodeSwitch


Field Summary
 
Fields inherited from class byucc.jhdl.synth.classparse.OpCodeBranch
offset
 
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
OpCodeLookupswitch(int op_code)
           
OpCodeLookupswitch(int pc, int op_code)
           
 
Method Summary
 int[] getPossibleMatches(AttributeCode code)
           
 int[] getPossibleTargetIndices(AttributeCode code)
           
 WeightedOpCode[] getPossibleTargets(AttributeCode code)
           
 OpCode parse(int pc, java.lang.String mnemonic, int op_code)
           
 void toClass(ClassFileWriter output)
          Spit out the contents of this OpCodeLookupswitch to the given ClassFileWriter.
 java.lang.StringBuffer toJasmin(java.lang.StringBuffer result)
           
 java.lang.String toString()
           
 
Methods inherited from class byucc.jhdl.synth.classparse.OpCodeSwitch
resolveTargets
 
Methods inherited from class byucc.jhdl.synth.classparse.OpCodeBranch
getBranchInstructionIndex, getOffset
 
Methods inherited from class byucc.jhdl.synth.classparse.OpCode
execute, getImmediate, getLineNumber, getName, getOpCode, getPC, 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

OpCodeLookupswitch

public OpCodeLookupswitch(int op_code)

OpCodeLookupswitch

public OpCodeLookupswitch(int pc,
                          int op_code)
Method Detail

toClass

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

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

parse

public OpCode parse(int pc,
                    java.lang.String mnemonic,
                    int op_code)
Overrides:
parse in class OpCode

getPossibleTargetIndices

public int[] getPossibleTargetIndices(AttributeCode code)

getPossibleMatches

public int[] getPossibleMatches(AttributeCode code)

getPossibleTargets

public WeightedOpCode[] getPossibleTargets(AttributeCode code)
Overrides:
getPossibleTargets in class OpCodeBranch

toString

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

toJasmin

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


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