Uses of Class
org.apache.bcel.generic.Instruction
-
Packages that use Instruction Package Description org.apache.bcel.generic This package contains the "generic" part of the Byte Code Engineering Library, i.e., classes to dynamically modify class objects and byte code instructions.org.apache.bcel.util This package contains utility classes for the Byte Code Engineering Library, namely:org.apache.bcel.verifier.statics Provides PassVerifier classes used internally by JustIce.org.apache.bcel.verifier.structurals Provides a PassVerifier class mostly used internally by JustIce, yielding a control flow graph for public use as a nice side effect. -
-
Uses of Instruction in org.apache.bcel.generic
Subclasses of Instruction in org.apache.bcel.generic Modifier and Type Class Description classAALOADAALOAD - Load reference from arrayclassAASTOREAASTORE - Store into reference arrayclassACONST_NULLACONST_NULL - Push null referenceclassALOADALOAD - Load reference from local variableclassANEWARRAYANEWARRAY - Create new array of referencesclassARETURNARETURN - Return reference from methodclassArithmeticInstructionSuper class for the family of arithmetic instructions.classArrayInstructionSuper class for instructions dealing with array access such as IALOAD.classARRAYLENGTHARRAYLENGTH - Get length of arrayclassASTOREASTORE - Store reference into local variableclassATHROWATHROW - Throw exceptionclassBALOADBALOAD - Load byte or boolean from arrayclassBASTOREBASTORE - Store into byte or boolean arrayclassBIPUSHBIPUSH - Push byte on stackclassBranchInstructionAbstract super class for branching instructions like GOTO, IFEQ, etc..classBREAKPOINTBREAKPOINT, JVM dependent, ignored by defaultclassCALOADCALOAD - Load char from arrayclassCASTORECASTORE - Store into char arrayclassCHECKCASTCHECKCAST - Check whether object is of given typeclassConversionInstructionSuper class for the x2y family of instructions.classCPInstructionAbstract super class for instructions that use an index into the constant pool such as LDC, INVOKEVIRTUAL, etc.classD2FD2F - Convert double to floatclassD2ID2I - Convert double to intclassD2LD2L - Convert double to longclassDADDDADD - Add doublesclassDALOADDALOAD - Load double from arrayclassDASTOREDASTORE - Store into double arrayclassDCMPGDCMPG - Compare doubles: value1 > value2classDCMPLDCMPL - Compare doubles: value1 < value2classDCONSTDCONST - Push 0.0 or 1.0, other values cause an exceptionclassDDIVDDIV - Divide doublesclassDLOADDLOAD - Load double from local variableclassDMULDMUL - Multiply doublesclassDNEGDNEG - Negate doubleclassDREMDREM - Remainder of doublesclassDRETURNDRETURN - Return double from methodclassDSTOREDSTORE - Store double into local variableclassDSUBDSUB - Substract doublesclassDUPDUP - Duplicate top operand stack wordclassDUP_X1DUP_X1 - Duplicate top operand stack word and put two downclassDUP_X2DUP_X2 - Duplicate top operand stack word and put three downclassDUP2DUP2 - Duplicate two top operand stack wordsclassDUP2_X1DUP2_X1 - Duplicate two top operand stack words and put three downclassDUP2_X2DUP2_X2 - Duplicate two top operand stack words and put four downclassF2DF2D - Convert float to doubleclassF2IF2I - Convert float to intclassF2LF2L - Convert float to longclassFADDFADD - Add floatsclassFALOADFALOAD - Load float from arrayclassFASTOREFASTORE - Store into float arrayclassFCMPGFCMPG - Compare floats: value1 > value2classFCMPLFCMPL - Compare floats: value1 < value2classFCONSTFCONST - Push 0.0, 1.0 or 2.0, other values cause an exceptionclassFDIVFDIV - Divide floatsclassFieldInstructionSuper class for the GET/PUTxxx family of instructions.classFieldOrMethodSuper class for InvokeInstruction and FieldInstruction, since they have some methods in common!classFLOADFLOAD - Load float from local variableclassFMULFMUL - Multiply floatsclassFNEGFNEG - Negate floatclassFREMFREM - Remainder of floatsclassFRETURNFRETURN - Return float from methodclassFSTOREFSTORE - Store float into local variableclassFSUBFSUB - Substract floatsclassGETFIELDGETFIELD - Fetch field from objectclassGETSTATICGETSTATIC - Fetch static field from classclassGOTOGOTO - Branch always (to relative offset, not absolute address)classGOTO_WGOTO_W - Branch always (to relative offset, not absolute address)classGotoInstructionSuper class for GOTOclassI2BI2B - Convert int to byteclassI2CI2C - Convert int to charclassI2DI2D - Convert int to doubleclassI2FI2F - Convert int to floatclassI2LI2L - Convert int to longclassI2SI2S - Convert int to shortclassIADDIADD - Add intsclassIALOADIALOAD - Load int from arrayclassIANDIAND - Bitwise AND intclassIASTOREIASTORE - Store into int arrayclassICONSTICONST - Push value between -1, ..., 5, other values cause an exceptionclassIDIVIDIV - Divide intsclassIF_ACMPEQIF_ACMPEQ - Branch if reference comparison succeedsclassIF_ACMPNEIF_ACMPNE - Branch if reference comparison doesn't succeedclassIF_ICMPEQIF_ICMPEQ - Branch if int comparison succeedsclassIF_ICMPGEIF_ICMPGE - Branch if int comparison succeedsclassIF_ICMPGTIF_ICMPGT - Branch if int comparison succeedsclassIF_ICMPLEIF_ICMPLE - Branch if int comparison succeedsclassIF_ICMPLTIF_ICMPLT - Branch if int comparison succeedsclassIF_ICMPNEIF_ICMPNE - Branch if int comparison doesn't succeedclassIFEQIFEQ - Branch if int comparison with zero succeedsclassIFGEIFGE - Branch if int comparison with zero succeedsclassIFGTIFGT - Branch if int comparison with zero succeedsclassIfInstructionSuper class for the IFxxx family of instructions.classIFLEIFLE - Branch if int comparison with zero succeedsclassIFLTIFLT - Branch if int comparison with zero succeedsclassIFNEIFNE - Branch if int comparison with zero succeedsclassIFNONNULLIFNONNULL - Branch if reference is not nullclassIFNULLIFNULL - Branch if reference is not nullclassIINCIINC - Increment local variable by constantclassILOADILOAD - Load int from local variable onto stackclassIMPDEP1IMPDEP1 - Implementation dependentclassIMPDEP2IMPDEP2 - Implementation dependentclassIMULIMUL - Multiply intsclassINEGINEG - Negate intclassINSTANCEOFINSTANCEOF - Determine if object is of given typeclassINVOKEDYNAMICClass for INVOKEDYNAMIC.classInvokeInstructionSuper class for the INVOKExxx family of instructions.classINVOKEINTERFACEINVOKEINTERFACE - Invoke interface methodclassINVOKESPECIALINVOKESPECIAL - Invoke instance method; special handling for superclass, private and instance initialization method invocationsclassINVOKESTATICINVOKESTATIC - Invoke a class (static) methodclassINVOKEVIRTUALINVOKEVIRTUAL - Invoke instance method; dispatch based on classclassIORIOR - Bitwise OR intclassIREMIREM - Remainder of intclassIRETURNIRETURN - Return int from methodclassISHLISHL - Arithmetic shift left intclassISHRISHR - Arithmetic shift right intclassISTOREISTORE - Store int from stack into local variableclassISUBISUB - Substract intsclassIUSHRIUSHR - Logical shift right intclassIXORIXOR - Bitwise XOR intclassJSRJSR - Jump to subroutineclassJSR_WJSR_W - Jump to subroutineclassJsrInstructionSuper class for JSR - Jump to subroutineclassL2DL2D - Convert long to doubleclassL2FL2F - Convert long to floatclassL2IL2I - Convert long to intclassLADDLADD - Add longsclassLALOADLALOAD - Load long from arrayclassLANDLAND - Bitwise AND longsclassLASTORELASTORE - Store into long arrayclassLCMPLCMP - Compare longs:classLCONSTLCONST - Push 0 or 1, other values cause an exceptionclassLDCLDC - Push item from constant pool.classLDC_WLDC_W - Push item from constant pool (wide index)classLDC2_WLDC2_W - Push long or double from constant poolclassLDIVLDIV - Divide longsclassLLOADLLOAD - Load long from local variableclassLMULLMUL - Multiply longsclassLNEGLNEG - Negate longclassLoadInstructionDenotes an unparameterized instruction to load a value from a local variable, e.g.classLocalVariableInstructionAbstract super class for instructions dealing with local variables.classLOOKUPSWITCHLOOKUPSWITCH - Switch with unordered set of valuesclassLORLOR - Bitwise OR longclassLREMLREM - Remainder of longclassLRETURNLRETURN - Return long from methodclassLSHLLSHL - Arithmetic shift left longclassLSHRLSHR - Arithmetic shift right longclassLSTORELSTORE - Store long into local variableclassLSUBLSUB - Substract longsclassLUSHRLUSHR - Logical shift right longclassLXORLXOR - Bitwise XOR longclassMONITORENTERMONITORENTER - Enter monitor for objectclassMONITOREXITMONITOREXIT - Exit monitor for objectclassMULTIANEWARRAYMULTIANEWARRAY - Create new mutidimensional array of referencesclassNameSignatureInstructionSuper class for FieldOrMethod and INVOKEDYNAMIC, since they both have names and signaturesclassNEWNEW - Create new objectclassNEWARRAYNEWARRAY - Create new array of basic type (int, short, ...)classNOPNOP - Do nothingclassPOPPOP - Pop top operand stack wordclassPOP2POP2 - Pop two top operand stack wordsclassPUTFIELDPUTFIELD - Put field in objectclassPUTSTATICPUTSTATIC - Put static field in classclassRETRET - Return from subroutineclassRETURNRETURN - Return from void methodclassReturnInstructionSuper class for the xRETURN family of instructions.classSALOADSALOAD - Load short from arrayclassSASTORESASTORE - Store into short arrayclassSelectSelect - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.classSIPUSHSIPUSH - Push shortclassStackInstructionSuper class for stack operations like DUP and POP.classStoreInstructionDenotes an unparameterized instruction to store a value into a local variable, e.g.classSWAPSWAP - Swa top operand stack wordclassTABLESWITCHTABLESWITCH - Switch within given range of values, i.e., low..highFields in org.apache.bcel.generic declared as Instruction Modifier and Type Field Description static InstructionInstructionConst. ACONST_NULLstatic InstructionInstructionConstants. ACONST_NULLDeprecated.static InstructionInstructionConst. ARRAYLENGTHstatic InstructionInstructionConstants. ARRAYLENGTHDeprecated.static InstructionInstructionConst. ATHROWstatic InstructionInstructionConstants. ATHROWDeprecated.static InstructionInstructionConst. DCMPGstatic InstructionInstructionConstants. DCMPGDeprecated.static InstructionInstructionConst. DCMPLstatic InstructionInstructionConstants. DCMPLDeprecated.static InstructionInstructionConst. DCONST_0static InstructionInstructionConstants. DCONST_0Deprecated.static InstructionInstructionConst. DCONST_1static InstructionInstructionConstants. DCONST_1Deprecated.static InstructionInstructionConst. FCMPGstatic InstructionInstructionConstants. FCMPGDeprecated.static InstructionInstructionConst. FCMPLstatic InstructionInstructionConstants. FCMPLDeprecated.static InstructionInstructionConst. FCONST_0static InstructionInstructionConstants. FCONST_0Deprecated.static InstructionInstructionConst. FCONST_1static InstructionInstructionConstants. FCONST_1Deprecated.static InstructionInstructionConst. FCONST_2static InstructionInstructionConstants. FCONST_2Deprecated.static InstructionInstructionConst. ICONST_0static InstructionInstructionConstants. ICONST_0Deprecated.static InstructionInstructionConst. ICONST_1static InstructionInstructionConstants. ICONST_1Deprecated.static InstructionInstructionConst. ICONST_2static InstructionInstructionConstants. ICONST_2Deprecated.static InstructionInstructionConst. ICONST_3static InstructionInstructionConstants. ICONST_3Deprecated.static InstructionInstructionConst. ICONST_4static InstructionInstructionConstants. ICONST_4Deprecated.static InstructionInstructionConst. ICONST_5static InstructionInstructionConstants. ICONST_5Deprecated.static InstructionInstructionConst. ICONST_M1static InstructionInstructionConstants. ICONST_M1Deprecated.private InstructionInstructionHandle. instructionprivate InstructionPUSH. instructionprivate static Instruction[]InstructionConst. INSTRUCTIONSGet object via its opcode, for immutable instructions like branch instructions entries are set to null.static Instruction[]InstructionConstants. INSTRUCTIONSDeprecated.Get object via its opcode, for immutable instructions like branch instructions entries are set to null.static InstructionInstructionConst. LCMPstatic InstructionInstructionConstants. LCMPDeprecated.static InstructionInstructionConst. LCONST_0static InstructionInstructionConstants. LCONST_0Deprecated.static InstructionInstructionConst. LCONST_1static InstructionInstructionConstants. LCONST_1Deprecated.static InstructionInstructionConst. MONITORENTERstatic InstructionInstructionConstants. MONITORENTERDeprecated.static InstructionInstructionConst. MONITOREXITstatic InstructionInstructionConstants. MONITOREXITDeprecated.static InstructionInstructionConst. NOPPredefined instruction objectsstatic InstructionInstructionConstants. NOPDeprecated.Predefined instruction objectsMethods in org.apache.bcel.generic that return Instruction Modifier and Type Method Description InstructionInstruction. copy()Use with caution, since `BranchInstruction's have a `target' reference which is not copied correctly (only basic types are).InstructionInstructionFactory. createAppend(Type type)InstructionInstructionFactory. createCast(Type src_type, Type dest_type)Create conversion operation for two stack operands, this may be an I2C, instruction, e.g., if the operands are basic types and CHECKCAST if they are reference types.InstructionInstructionFactory. createConstant(java.lang.Object value)Uses PUSH to push a constant value onto the stack.InstructionInstructionFactory. createNewArray(Type t, short dim)Create new array of given size and type.static InstructionInstructionFactory. createNull(Type type)Create "null" value for reference types, 0 for basic types like intstatic InstructionInstructionFactory. createThis()Create reference to `this'static InstructionInstructionConst. getInstruction(int index)Gets the Instruction.InstructionInstructionHandle. getInstruction()InstructionPUSH. getInstruction()InstructionSWITCH. getInstruction()Instruction[]InstructionList. getInstructions()static InstructionInstruction. readInstruction(ByteSequence bytes)Read an instruction from (byte code) input stream and return the appropiate object.InstructionInstructionHandle. swapInstruction(Instruction i)Temporarily swap the current instruction, without disturbing anything.Methods in org.apache.bcel.generic with parameters of type Instruction Modifier and Type Method Description InstructionHandleInstructionList. append(Instruction i)Append an instruction to the end of this list.InstructionHandleInstructionList. append(InstructionHandle ih, Instruction i)Append an instruction after instruction (handle) ih contained in this list.InstructionHandleInstructionList. append(Instruction i, CompoundInstruction c)Append a compound instruction, after instruction i.InstructionHandleInstructionList. append(Instruction i, Instruction j)Append a single instruction j after another instruction i, which must be in this list of course!InstructionHandleInstructionList. append(Instruction i, InstructionList il)Append another list after instruction i contained in this list.booleanInstructionList. contains(Instruction i)voidInstructionList. delete(Instruction i)Remove instruction from this list.voidInstructionList. delete(Instruction from, Instruction to)Remove instructions from instruction `from' to instruction `to' contained in this list.booleanInstructionComparator. equals(Instruction i1, Instruction i2)private InstructionHandleInstructionList. findInstruction1(Instruction i)Search for given Instruction reference, start at beginning of list.private InstructionHandleInstructionList. findInstruction2(Instruction i)Search for given Instruction reference, start at end of list(package private) static InstructionHandleInstructionHandle. getInstructionHandle(Instruction i)Factory method.InstructionHandleInstructionList. insert(Instruction i)Insert an instruction at start of this list.InstructionHandleInstructionList. insert(InstructionHandle ih, Instruction i)Insert an instruction before instruction (handle) ih contained in this list.InstructionHandleInstructionList. insert(Instruction i, CompoundInstruction c)Insert a compound instruction before instruction i.InstructionHandleInstructionList. insert(Instruction i, Instruction j)Insert a single instruction j before another instruction i, which must be in this list of course!InstructionHandleInstructionList. insert(Instruction i, InstructionList il)Insert another list before Instruction i contained in this list.voidBranchHandle. setInstruction(Instruction i)Set new contents.voidInstructionHandle. setInstruction(Instruction i)Replace current instruction contained in this handle.InstructionInstructionHandle. swapInstruction(Instruction i)Temporarily swap the current instruction, without disturbing anything.Constructors in org.apache.bcel.generic with parameters of type Instruction Constructor Description InstructionHandle(Instruction i)InstructionList(Instruction i)Create instruction list containing one instruction. -
Uses of Instruction in org.apache.bcel.util
Fields in org.apache.bcel.util with type parameters of type Instruction Modifier and Type Field Description private java.util.Map<Instruction,InstructionHandle>BCELFactory. branch_mapMethods in org.apache.bcel.util with parameters of type Instruction Modifier and Type Method Description private booleanBCELFactory. visitInstruction(Instruction i) -
Uses of Instruction in org.apache.bcel.verifier.statics
Methods in org.apache.bcel.verifier.statics with parameters of type Instruction Modifier and Type Method Description private voidPass3aVerifier.InstOperandConstraintVisitor. constraintViolated(Instruction i, java.lang.String message)A utility method to always raise an exeption.private voidPass3aVerifier.InstOperandConstraintVisitor. indexValid(Instruction i, int idx)A utility method to raise an exception if the index is not a valid constant pool index. -
Uses of Instruction in org.apache.bcel.verifier.structurals
Methods in org.apache.bcel.verifier.structurals with parameters of type Instruction Modifier and Type Method Description private voidInstConstraintVisitor. _visitStackAccessor(Instruction o)Ensures the general preconditions of an instruction that accesses the stack.private booleanInstConstraintVisitor. arrayrefOfArrayType(Instruction o, Type arrayref)Assures arrayref is of ArrayType or NULL; returns true if and only if arrayref is non-NULL.private voidInstConstraintVisitor. constraintViolated(Instruction violator, java.lang.String description)This method is called by the visitXXX() to notify the acceptor of this InstConstraintVisitor that a constraint violation has occured.private voidInstConstraintVisitor. indexOfInt(Instruction o, Type index)Assures index is of type INT.private voidInstConstraintVisitor. referenceTypeIsInitialized(Instruction o, ReferenceType r)Assures the ReferenceType r is initialized (or Type.NULL).private voidInstConstraintVisitor. valueOfInt(Instruction o, Type value)Assures value is of type INT.
-