joeq.Compiler.BytecodeAnalysis
Class LiveRefAnalysis.SecondPassVisitor

java.lang.Object
  extended by joeq.Compiler.BytecodeAnalysis.BytecodeVisitor
      extended by joeq.Compiler.BytecodeAnalysis.LiveRefAnalysis.SecondPassVisitor
All Implemented Interfaces:
jq_ClassFileConstants, CompilationConstants
Enclosing class:
LiveRefAnalysis

public class LiveRefAnalysis.SecondPassVisitor
extends BytecodeVisitor


Field Summary
 
Fields inherited from class joeq.Compiler.BytecodeAnalysis.BytecodeVisitor
bcs, BINOP_ADD, BINOP_AND, BINOP_DIV, BINOP_MUL, BINOP_OR, BINOP_REM, BINOP_SUB, BINOP_XOR, binopnames, clazz, CMP_AE, CMP_EQ, CMP_G, CMP_GE, CMP_GT, CMP_L, CMP_LE, CMP_LT, CMP_NE, CMP_UNCOND, cmpopnames, fcmpopnames, i_end, i_start, INVOKE_INTERFACE, INVOKE_SPECIAL, INVOKE_STATIC, INVOKE_VIRTUAL, invokeopnames, method, MONITOR_ENTER, MONITOR_EXIT, monitoropnames, out, SHIFT_LEFT, SHIFT_RIGHT, SHIFT_URIGHT, shiftopnames, state, TRACE, UNOP_NEG, unopnames
 
Fields inherited from interface joeq.Class.jq_ClassFileConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_Long, CONSTANT_MethodRef, CONSTANT_NameAndType, CONSTANT_ResolvedClass, CONSTANT_ResolvedIFieldRef, CONSTANT_ResolvedIMethodRef, CONSTANT_ResolvedSFieldRef, CONSTANT_ResolvedSMethodRef, CONSTANT_String, CONSTANT_Utf8, CONSUME_STACK, ILLEGAL_OPCODE, ILLEGAL_TYPE, jbc_AALOAD, jbc_AASTORE, jbc_ACONST_NULL, jbc_ALOAD, jbc_ALOAD_0, jbc_ALOAD_1, jbc_ALOAD_2, jbc_ALOAD_3, jbc_ANEWARRAY, jbc_ARETURN, jbc_ARRAYLENGTH, jbc_ASTORE, jbc_ASTORE_0, jbc_ASTORE_1, jbc_ASTORE_2, jbc_ASTORE_3, jbc_ATHROW, jbc_BALOAD, jbc_BASTORE, jbc_BIPUSH, jbc_BREAKPOINT, jbc_CALOAD, jbc_CASTORE, jbc_CHECKCAST, jbc_D2F, jbc_D2I, jbc_D2L, jbc_DADD, jbc_DALOAD, jbc_DASTORE, jbc_DCMPG, jbc_DCMPL, jbc_DCONST_0, jbc_DCONST_1, jbc_DDIV, jbc_DLOAD, jbc_DLOAD_0, jbc_DLOAD_1, jbc_DLOAD_2, jbc_DLOAD_3, jbc_DMUL, jbc_DNEG, jbc_DREM, jbc_DRETURN, jbc_DSTORE, jbc_DSTORE_0, jbc_DSTORE_1, jbc_DSTORE_2, jbc_DSTORE_3, jbc_DSUB, jbc_DUP, jbc_DUP_X1, jbc_DUP_X2, jbc_DUP2, jbc_DUP2_X1, jbc_DUP2_X2, jbc_F2D, jbc_F2I, jbc_F2L, jbc_FADD, jbc_FALOAD, jbc_FASTORE, jbc_FCMPG, jbc_FCMPL, jbc_FCONST_0, jbc_FCONST_1, jbc_FCONST_2, jbc_FDIV, jbc_FLOAD, jbc_FLOAD_0, jbc_FLOAD_1, jbc_FLOAD_2, jbc_FLOAD_3, jbc_FMUL, jbc_FNEG, jbc_FREM, jbc_FRETURN, jbc_FSTORE, jbc_FSTORE_0, jbc_FSTORE_1, jbc_FSTORE_2, jbc_FSTORE_3, jbc_FSUB, jbc_GETFIELD, jbc_GETSTATIC, jbc_GOTO, jbc_GOTO_W, jbc_I2B, jbc_I2C, jbc_I2D, jbc_I2F, jbc_I2L, jbc_I2S, jbc_IADD, jbc_IALOAD, jbc_IAND, jbc_IASTORE, jbc_ICONST_0, jbc_ICONST_1, jbc_ICONST_2, jbc_ICONST_3, jbc_ICONST_4, jbc_ICONST_5, jbc_ICONST_M1, jbc_IDIV, jbc_IF_ACMPEQ, jbc_IF_ACMPNE, jbc_IF_ICMPEQ, jbc_IF_ICMPGE, jbc_IF_ICMPGT, jbc_IF_ICMPLE, jbc_IF_ICMPLT, jbc_IF_ICMPNE, jbc_IFEQ, jbc_IFGE, jbc_IFGT, jbc_IFLE, jbc_IFLT, jbc_IFNE, jbc_IFNONNULL, jbc_IFNULL, jbc_IINC, jbc_ILOAD, jbc_ILOAD_0, jbc_ILOAD_1, jbc_ILOAD_2, jbc_ILOAD_3, jbc_IMUL, jbc_INEG, jbc_INSTANCEOF, jbc_INT2BYTE, jbc_INT2CHAR, jbc_INT2SHORT, jbc_INVOKEINTERFACE, jbc_INVOKENONVIRTUAL, jbc_INVOKESPECIAL, jbc_INVOKESTATIC, jbc_INVOKEVIRTUAL, jbc_IOR, jbc_IREM, jbc_IRETURN, jbc_ISHL, jbc_ISHR, jbc_ISTORE, jbc_ISTORE_0, jbc_ISTORE_1, jbc_ISTORE_2, jbc_ISTORE_3, jbc_ISUB, jbc_IUSHR, jbc_IXOR, jbc_JSR, jbc_JSR_W, jbc_L2D, jbc_L2F, jbc_L2I, jbc_LADD, jbc_LALOAD, jbc_LAND, jbc_LASTORE, jbc_LCMP, jbc_LCONST_0, jbc_LCONST_1, jbc_LDC, jbc_LDC_W, jbc_LDC2_W, jbc_LDIV, jbc_LLOAD, jbc_LLOAD_0, jbc_LLOAD_1, jbc_LLOAD_2, jbc_LLOAD_3, jbc_LMUL, jbc_LNEG, jbc_LOOKUPSWITCH, jbc_LOR, jbc_LREM, jbc_LRETURN, jbc_LSHL, jbc_LSHR, jbc_LSTORE, jbc_LSTORE_0, jbc_LSTORE_1, jbc_LSTORE_2, jbc_LSTORE_3, jbc_LSUB, jbc_LUSHR, jbc_LXOR, jbc_MONITORENTER, jbc_MONITOREXIT, jbc_MULTIANEWARRAY, jbc_NEW, jbc_NEWARRAY, jbc_NOP, jbc_POP, jbc_POP2, jbc_PUTFIELD, jbc_PUTSTATIC, jbc_RET, jbc_RETURN, jbc_SALOAD, jbc_SASTORE, jbc_SIPUSH, jbc_SWAP, jbc_TABLESWITCH, jbc_WIDE, NO_OF_OPERANDS, OPCODE_NAMES, PRODUCE_STACK, RESERVED, STATE_CLSINITERROR, STATE_CLSINITIALIZED, STATE_CLSINITIALIZING, STATE_CLSINITRUNNING, STATE_COMPILED, STATE_COMPILING, STATE_LOADED, STATE_LOADERROR, STATE_LOADING1, STATE_LOADING2, STATE_LOADING3, STATE_PREPARED, STATE_PREPAREERROR, STATE_PREPARING, STATE_SFINITERROR, STATE_SFINITIALIZED, STATE_SFINITIALIZING, STATE_UNLOADED, STATE_VERIFIED, STATE_VERIFYERROR, STATE_VERIFYING, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TC_ARRAY, TC_BOOLEAN, TC_BYTE, TC_CHAR, TC_CLASS, TC_CLASSEND, TC_DOUBLE, TC_FLOAT, TC_INT, TC_LONG, TC_PARAM, TC_PARAMEND, TC_SHORT, TC_VOID, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE
 
Fields inherited from interface joeq.Compiler.CompilationConstants
MAYBE, NO, YES
 
Method Summary
 String toString()
           
 void traverseBB(BasicBlock bb)
           
 void visitALOAD(int i)
           
 void visitASTORE(int i)
           
 void visitDLOAD(int i)
           
 void visitDSTORE(int i)
           
 void visitFLOAD(int i)
           
 void visitFSTORE(int i)
           
 void visitILOAD(int i)
           
 void visitISTORE(int i)
           
 void visitLLOAD(int i)
           
 void visitLSTORE(int i)
           
 void visitPEI()
           
 
Methods inherited from class joeq.Compiler.BytecodeAnalysis.BytecodeVisitor
forwardTraversal, tryResolve, tryResolve, tryResolve, tryResolve, tryResolve, updateCPIndex, updateMemberReference, visitAALOAD, visitAASTORE, visitACONST, visitAGETFIELD, visitAGETSTATIC, visitAINVOKE, visitAPUTFIELD, visitAPUTSTATIC, visitARETURN, visitARRAYLENGTH, visitATHROW, visitBALOAD, visitBASTORE, visitBGETFIELD, visitBGETSTATIC, visitBPUTFIELD, visitBPUTSTATIC, visitBytecode, visitCALOAD, visitCASTORE, visitCGETFIELD, visitCGETSTATIC, visitCHECKCAST, visitCPUTFIELD, visitCPUTSTATIC, visitD2F, visitD2I, visitD2L, visitDALOAD, visitDASTORE, visitDBINOP, visitDCMP2, visitDCONST, visitDGETFIELD, visitDGETSTATIC, visitDINVOKE, visitDPUTFIELD, visitDPUTSTATIC, visitDRETURN, visitDUNOP, visitDUP_x1, visitDUP_x2, visitDUP, visitDUP2_x1, visitDUP2_x2, visitDUP2, visitF2D, visitF2I, visitF2L, visitFALOAD, visitFASTORE, visitFBINOP, visitFCMP2, visitFCONST, visitFGETFIELD, visitFGETSTATIC, visitFINVOKE, visitFPUTFIELD, visitFPUTSTATIC, visitFRETURN, visitFUNOP, visitGOTO, visitI2B, visitI2C, visitI2D, visitI2F, visitI2L, visitI2S, visitIALOAD, visitIASTORE, visitIBINOP, visitICONST, visitIF, visitIFCMP, visitIFREF, visitIFREFCMP, visitIGETFIELD, visitIGETSTATIC, visitIINC, visitIINVOKE, visitINSTANCEOF, visitIPUTFIELD, visitIPUTSTATIC, visitIRETURN, visitISHIFT, visitIUNOP, visitJSR, visitL2D, visitL2F, visitL2I, visitLALOAD, visitLASTORE, visitLBINOP, visitLCMP2, visitLCONST, visitLGETFIELD, visitLGETSTATIC, visitLINVOKE, visitLOOKUPSWITCH, visitLPUTFIELD, visitLPUTSTATIC, visitLRETURN, visitLSHIFT, visitLUNOP, visitMONITOR, visitMULTINEWARRAY, visitNEW, visitNEWARRAY, visitNOP, visitPOP, visitPOP2, visitRET, visitSALOAD, visitSASTORE, visitSGETFIELD, visitSGETSTATIC, visitSPUTFIELD, visitSPUTSTATIC, visitSWAP, visitTABLESWITCH, visitVINVOKE, visitVRETURN, visitZGETFIELD, visitZGETSTATIC, visitZPUTFIELD, visitZPUTSTATIC
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

toString

public String toString()
Overrides:
toString in class Object

traverseBB

public void traverseBB(BasicBlock bb)

visitPEI

public void visitPEI()
Overrides:
visitPEI in class BytecodeVisitor

visitILOAD

public void visitILOAD(int i)
Overrides:
visitILOAD in class BytecodeVisitor

visitLLOAD

public void visitLLOAD(int i)
Overrides:
visitLLOAD in class BytecodeVisitor

visitFLOAD

public void visitFLOAD(int i)
Overrides:
visitFLOAD in class BytecodeVisitor

visitDLOAD

public void visitDLOAD(int i)
Overrides:
visitDLOAD in class BytecodeVisitor

visitALOAD

public void visitALOAD(int i)
Overrides:
visitALOAD in class BytecodeVisitor

visitISTORE

public void visitISTORE(int i)
Overrides:
visitISTORE in class BytecodeVisitor

visitLSTORE

public void visitLSTORE(int i)
Overrides:
visitLSTORE in class BytecodeVisitor

visitFSTORE

public void visitFSTORE(int i)
Overrides:
visitFSTORE in class BytecodeVisitor

visitDSTORE

public void visitDSTORE(int i)
Overrides:
visitDSTORE in class BytecodeVisitor

visitASTORE

public void visitASTORE(int i)
Overrides:
visitASTORE in class BytecodeVisitor


Copyright © 2001-2008 John Whaley. All Rights Reserved.