Frames | No Frames |
Classes derived from org.apache.bcel.generic.Instruction | |
class | AALOAD - Load reference from array
Stack: ..., arrayref, index -> value |
class | AASTORE - Store into reference array
Stack: ..., arrayref, index, value -> ... |
class | ACONST_NULL - Push null reference
Stack: ... |
class | ALOAD - Load reference from local variable
Stack: ... |
class | ANEWARRAY - Create new array of references
Stack: ..., count -> ..., arrayref |
class | Super class for the family of arithmetic instructions. |
class | Super class for instructions dealing with array access such as IALOAD. |
class | ARETURN - Return reference from method
Stack: ..., objectref -> <empty> |
class | ARRAYLENGTH - Get length of array
Stack: ..., arrayref -> ..., length |
class | ASTORE - Store reference into local variable
Stack ..., objectref -> ... |
class | ATHROW - Throw exception
Stack: ..., objectref -> objectref |
class | BALOAD - Load byte or boolean from array
Stack: ..., arrayref, index -> ..., value |
class | BASTORE - Store into byte or boolean array
Stack: ..., arrayref, index, value -> ... |
class | BIPUSH - Push byte on stack
Stack: ... |
class | Abstract super class for branching instructions like GOTO, IFEQ, etc.. |
class | BREAKPOINT, JVM dependent, ignored by default
|
class | CALOAD - Load char from array
Stack: ..., arrayref, index -> ..., value |
class | CASTORE - Store into char array
Stack: ..., arrayref, index, value -> ... |
class | CHECKCAST - Check whether object is of given type
Stack: ..., objectref -> ..., objectref |
class | Super class for the x2y family of instructions. |
class | Abstract super class for instructions that use an index into the
constant pool such as LDC, INVOKEVIRTUAL, etc. |
class | D2F - Convert double to float
Stack: ..., value.word1, value.word2 -> ..., result |
class | D2I - Convert double to int
Stack: ..., value.word1, value.word2 -> ..., result |
class | D2L - Convert double to long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 |
class | DADD - Add doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result1.word2 |
class | DALOAD - Load double from array
Stack: ..., arrayref, index -> ..., result.word1, result.word2 |
class | DASTORE - Store into double array
Stack: ..., arrayref, index, value.word1, value.word2 -> ... |
class | DCMPG - Compare doubles: value1 > value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result |
class | DCMPL - Compare doubles: value1 <32value2
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result |
class | DCONST - Push 0.0 or 1.0, other values cause an exception
Stack: ... |
class | DDIV - Divide doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | DLOAD - Load double from local variable
Stack ... |
class | DMUL - Multiply doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | DNEG - Negate double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 |
class | DREM - Remainder of doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | DRETURN - Return double from method
Stack: ..., value.word1, value.word2 -> <empty> |
class | DSTORE - Store double into local variable
Stack: ..., value.word1, value.word2 -> ... |
class | DSUB - Substract doubles
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | DUP - Duplicate top operand stack word
Stack: ..., word -> ..., word, word |
class | DUP2 - Duplicate two top operand stack words
Stack: ..., word2, word1 -> ..., word2, word1, word2, word1 |
class | DUP2_X1 - Duplicate two top operand stack words and put three down
Stack: ..., word3, word2, word1 -> ..., word2, word1, word3, word2, word1 |
class | DUP2_X2 - Duplicate two top operand stack words and put four down
Stack: ..., word4, word3, word2, word1 -> ..., word2, word1, word4, word3, word2, word1 |
class | DUP_X1 - Duplicate top operand stack word and put two down
Stack: ..., word2, word1 -> ..., word1, word2, word1 |
class | DUP_X2 - Duplicate top operand stack word and put three down
Stack: ..., word3, word2, word1 -> ..., word1, word3, word2, word1 |
class | F2D - Convert float to double
Stack: ..., value -> ..., result.word1, result.word2 |
class | F2I - Convert float to int
Stack: ..., value -> ..., result |
class | F2L - Convert float to long
Stack: ..., value -> ..., result.word1, result.word2 |
class | FADD - Add floats
Stack: ..., value1, value2 -> result |
class | FALOAD - Load float from array
Stack: ..., arrayref, index -> ..., value |
class | FASTORE - Store into float array
Stack: ..., arrayref, index, value -> ... |
class | FCMPG - Compare floats: value1 > value2
Stack: ..., value1, value2 -> ..., result |
class | FCMPL - Compare floats: value1 <32value2
Stack: ..., value1, value2 -> ..., result |
class | FCONST - Push 0.0, 1.0 or 2.0, other values cause an exception
Stack: ... |
class | FDIV - Divide floats
Stack: ..., value1, value2 -> result |
class | Super class for InvokeInstruction and FieldInstruction, since they have
some methods in common!
|
class | FLOAD - Load float from local variable
Stack ... |
class | FMUL - Multiply floats
Stack: ..., value1, value2 -> result |
class | FNEG - Negate float
Stack: ..., value -> ..., result |
class | FREM - Remainder of floats
Stack: ..., value1, value2 -> result |
class | FRETURN - Return float from method
Stack: ..., value -> <empty> |
class | FSTORE - Store float into local variable
Stack: ..., value -> ... |
class | FSUB - Substract floats
Stack: ..., value1, value2 -> result |
class | Super class for GOTO
|
class | GOTO - Branch always (to relative offset, not absolute address)
|
class | GOTO_W - Branch always (to relative offset, not absolute address)
|
class | I2B - Convert int to byte
Stack: ..., value -> ..., result |
class | I2C - Convert int to char
Stack: ..., value -> ..., result |
class | I2D - Convert int to double
Stack: ..., value -> ..., result.word1, result.word2 |
class | I2F - Convert int to float
Stack: ..., value -> ..., result |
class | I2L - Convert int to long
Stack: ..., value -> ..., result.word1, result.word2 |
class | I2S - Convert int to short
Stack: ..., value -> ..., result |
class | IADD - Add ints
Stack: ..., value1, value2 -> result |
class | IALOAD - Load int from array
Stack: ..., arrayref, index -> ..., value |
class | IAND - Bitwise AND int
Stack: ..., value1, value2 -> ..., result |
class | IASTORE - Store into int array
Stack: ..., arrayref, index, value -> ... |
class | ICONST - Push value between -1, ..., 5, other values cause an exception
Stack: ... |
class | IDIV - Divide ints
Stack: ..., value1, value2 -> result |
class | Super class for the IFxxx family of instructions. |
class | IFEQ - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFGE - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFGT - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFLE - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFLT - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFNE - Branch if int comparison with zero succeeds
Stack: ..., value -> ... |
class | IFNONNULL - Branch if reference is not null
Stack: ..., reference -> ... |
class | IFNULL - Branch if reference is not null
Stack: ..., reference -> ... |
class | IF_ACMPEQ - Branch if reference comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ACMPNE - Branch if reference comparison doesn't succeed
Stack: ..., value1, value2 -> ... |
class | IF_ICMPEQ - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ICMPGE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ICMPGT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ICMPLE - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ICMPLT - Branch if int comparison succeeds
Stack: ..., value1, value2 -> ... |
class | IF_ICMPNE - Branch if int comparison doesn't succeed
Stack: ..., value1, value2 -> ... |
class | IINC - Increment local variable by constant
|
class | ILOAD - Load int from local variable onto stack
Stack: ... |
class | IMPDEP1 - Implementation dependent
|
class | IMPDEP2 - Implementation dependent
|
class | IMUL - Multiply ints
Stack: ..., value1, value2 -> result |
class | INEG - Negate int
Stack: ..., value -> ..., result |
class | INSTANCEOF - Determine if object is of given type
Stack: ..., objectref -> ..., result |
class | IOR - Bitwise OR int
Stack: ..., value1, value2 -> ..., result |
class | IREM - Remainder of int
Stack: ..., value1, value2 -> result |
class | IRETURN - Return int from method
Stack: ..., value -> <empty> |
class | ISHL - Arithmetic shift left int
Stack: ..., value1, value2 -> ..., result |
class | ISHR - Arithmetic shift right int
Stack: ..., value1, value2 -> ..., result |
class | ISTORE - Store int from stack into local variable
Stack: ..., value -> ... |
class | ISUB - Substract ints
Stack: ..., value1, value2 -> result |
class | IUSHR - Logical shift right int
Stack: ..., value1, value2 -> ..., result |
class | IXOR - Bitwise XOR int
Stack: ..., value1, value2 -> ..., result |
class | Super class for JSR - Jump to subroutine
|
class | JSR - Jump to subroutine
|
class | JSR_W - Jump to subroutine
|
class | L2D - Convert long to double
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 |
class | L2F - Convert long to float
Stack: ..., value.word1, value.word2 -> ..., result |
class | L2I - Convert long to int
Stack: ..., value.word1, value.word2 -> ..., result |
class | LADD - Add longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | LALOAD - Load long from array
Stack: ..., arrayref, index -> ..., value1, value2 |
class | LAND - Bitwise AND longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | LASTORE - Store into long array
Stack: ..., arrayref, index, value.word1, value.word2 -> ... |
class | LCMP - Compare longs:
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result <= -1, 0, 1> |
class | LCONST - Push 0 or 1, other values cause an exception
Stack: ... |
class | LDC - Push item from constant pool. |
class | LDC2_W - Push long or double from constant pool
Stack: ... |
class | LDC_W - Push item from constant pool (wide index)
Stack: ... |
class | LDIV - Divide longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | LLOAD - Load long from local variable
Stack ... |
class | LMUL - Multiply longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | LNEG - Negate long
Stack: ..., value.word1, value.word2 -> ..., result.word1, result.word2 |
class | Denotes an unparameterized instruction to load a value from a local
variable, e.g. |
class | Abstract super class for instructions dealing with local variables. |
class | LOOKUPSWITCH - Switch with unordered set of values
|
class | LOR - Bitwise OR long
Stack: ..., value1, value2 -> ..., result |
class | LREM - Remainder of long
Stack: ..., value1, value2 -> result |
class | LRETURN - Return long from method
Stack: ..., value.word1, value.word2 -> <empty> |
class | LSHL - Arithmetic shift left long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2 |
class | LSHR - Arithmetic shift right long
Stack: ..., value1.word1, value1.word2, value2 -> ..., result.word1, result.word2 |
class | LSTORE - Store long into local variable
Stack: ..., value.word1, value.word2 -> ... |
class | LSUB - Substract longs
Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 ->..., result.word1, result.word2 |
class | LUSHR - Logical shift right long
Stack: ..., value1, value2 -> ..., result |
class | LXOR - Bitwise XOR long
Stack: ..., value1, value2 -> ..., result |
class | MONITORENTER - Enter monitor for object
Stack: ..., objectref -> ... |
class | MONITOREXIT - Exit monitor for object
Stack: ..., objectref -> ... |
class | MULTIANEWARRAY - Create new mutidimensional array of references
Stack: ..., count1, [count2, ...] -> ..., arrayref |
class | NEW - Create new object
Stack: ... |
class | NEWARRAY - Create new array of basic type (int, short, ...)
Stack: ..., count -> ..., arrayreftype must be one of T_INT, T_SHORT, ... |
class | NOP - Do nothing
|
class | POP - Pop top operand stack word
Stack: ..., word -> ... |
class | POP2 - Pop two top operand stack words
Stack: ..., word2, word1 -> ... |
class | Super class for the xRETURN family of instructions. |
class | RET - Return from subroutine
Stack: ..., -> ..., address |
class | RETURN - Return from void method
Stack: ... |
class | SALOAD - Load short from array
Stack: ..., arrayref, index -> ..., value |
class | SASTORE - Store into short array
Stack: ..., arrayref, index, value -> ... |
class | Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions. |
class | SIPUSH - Push short
Stack: ... |
class | Super class for stack operations like DUP and POP. |
class | Denotes an unparameterized instruction to store a value into a local variable,
e.g. |
class | SWAP - Swa top operand stack word
Stack: ..., word2, word1 -> ..., word1, word2 |
class | TABLESWITCH - Switch within given range of values, i.e., low..high
|
Constructors with parameter type org.apache.bcel.generic.Instruction | |
Create instruction list containing one instruction. |
Fields of type org.apache.bcel.generic.Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction[] | Get object via its opcode, for immutable instructions like
branch instructions entries are set to null. |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | |
Instruction | Predefined instruction objects
|
Methods with parameter type org.apache.bcel.generic.Instruction | |
InstructionHandle | Append an instruction to the end of this list. |
InstructionHandle | Append a compound instruction, after instruction i. |
InstructionHandle | Append a single instruction j after another instruction i, which
must be in this list of course!
|
InstructionHandle | Append another list after instruction i contained in this list. |
InstructionHandle | Append an instruction after instruction (handle) ih contained in this list. |
boolean | |
void | Remove instruction from this list. |
void | Remove instructions from instruction `from' to instruction `to' contained
in this list. |
boolean | |
InstructionHandle | Insert an instruction at start of this list. |
InstructionHandle | Insert a compound instruction before instruction i. |
InstructionHandle | Insert a single instruction j before another instruction i, which
must be in this list of course!
|
InstructionHandle | Insert another list before Instruction i contained in this list. |
InstructionHandle | Insert an instruction before instruction (handle) ih contained in this list. |
void | Set new contents. |
void | Replace current instruction contained in this handle. |
Instruction | Temporarily swap the current instruction, without disturbing
anything. |
Methods with return type org.apache.bcel.generic.Instruction | |
Instruction | Use with caution, since `BranchInstruction's have a `target' reference which
is not copied correctly (only basic types are). |
Instruction | |
Instruction | 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. |
Instruction | InstructionFactory.createConstant(Object value) Uses PUSH to push a constant value onto the stack. |
Instruction | Create new array of given size and type. |
Instruction | Create "null" value for reference types, 0 for basic types like int
|
Instruction | Create reference to `this'
|
Instruction | |
Instruction | |
Instruction | |
Instruction[] | |
Instruction | Read an instruction from (byte code) input stream and return the
appropiate object. |
Instruction | Temporarily swap the current instruction, without disturbing
anything. |