Interface InstructionConstants
- All Known Implementing Classes:
InstructionFactory, PUSH
Deprecated.
Contains shareable instruction objects.
In order to save memory you can use some instructions multiply, since they have an immutable state and are directly derived from Instruction. I.e. they have no instance fields that could be changed. Since some of these instructions like ICONST_0 occur very frequently this can save a lot of time and space. This feature is an adaptation of the FlyWeight design pattern, we just use an array instead of a factory.
The Instructions can also accessed directly under their names, so it's possible to write il.append(Instruction.ICONST_0);
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classDeprecated.Consider private. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ReturnInstructionDeprecated.static final InstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final InstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionConstants.ClinitDeprecated.Interfaces may have no static initializers, so we simulate this with an inner class.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.D2F.static final ConversionInstructionDeprecated.UseInstructionConst.D2I.static final ConversionInstructionDeprecated.UseInstructionConst.D2L.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final StackInstructionDeprecated.UseInstructionConst.DUP.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final StackInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.F2D.static final ConversionInstructionDeprecated.UseInstructionConst.F2I.static final ConversionInstructionDeprecated.UseInstructionConst.F2L.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.I2B.static final ConversionInstructionDeprecated.UseInstructionConst.I2C.static final ConversionInstructionDeprecated.UseInstructionConst.I2D.static final ConversionInstructionDeprecated.UseInstructionConst.I2F.static final ConversionInstructionDeprecated.UseInstructionConst.I2L.static final ConversionInstructionDeprecated.UseInstructionConst.I2S.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final Instruction[]Deprecated.UseInstructionConst.INSTRUCTIONS.static final ArithmeticInstructionDeprecated.UseInstructionConst.IOR.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final LocalVariableInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ConversionInstructionDeprecated.UseInstructionConst.L2D.static final ConversionInstructionDeprecated.UseInstructionConst.L2F.static final ConversionInstructionDeprecated.UseInstructionConst.L2I.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArrayInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.UseInstructionConst.LOR.static final ArithmeticInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final ArithmeticInstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.static final InstructionDeprecated.UseInstructionConst.NOP.static final StackInstructionDeprecated.UseInstructionConst.POP.static final StackInstructionDeprecated.static final ReturnInstructionDeprecated.static final ArrayInstructionDeprecated.static final ArrayInstructionDeprecated.static final StackInstructionDeprecated.static final LocalVariableInstructionDeprecated.
-
Field Details
-
NOP
-
ACONST_NULL
Deprecated.ACONST_NULL instruction. -
ICONST_M1
Deprecated.ICONST_M1 instruction. -
ICONST_0
Deprecated.ICONST_0 instruction. -
ICONST_1
Deprecated.ICONST_1 instruction. -
ICONST_2
Deprecated.ICONST_2 instruction. -
ICONST_3
Deprecated.ICONST_3 instruction. -
ICONST_4
Deprecated.ICONST_4 instruction. -
ICONST_5
Deprecated.ICONST_5 instruction. -
LCONST_0
Deprecated.LCONST_0 instruction. -
LCONST_1
Deprecated.LCONST_1 instruction. -
FCONST_0
Deprecated.FCONST_0 instruction. -
FCONST_1
Deprecated.FCONST_1 instruction. -
FCONST_2
Deprecated.FCONST_2 instruction. -
DCONST_0
Deprecated.DCONST_0 instruction. -
DCONST_1
Deprecated.DCONST_1 instruction. -
IALOAD
Deprecated.IALOAD instruction. -
LALOAD
Deprecated.LALOAD instruction. -
FALOAD
Deprecated.FALOAD instruction. -
DALOAD
Deprecated.DALOAD instruction. -
AALOAD
Deprecated.AALOAD instruction. -
BALOAD
Deprecated.BALOAD instruction. -
CALOAD
Deprecated.CALOAD instruction. -
SALOAD
Deprecated.SALOAD instruction. -
IASTORE
Deprecated.IASTORE instruction. -
LASTORE
Deprecated.LASTORE instruction. -
FASTORE
Deprecated.FASTORE instruction. -
DASTORE
Deprecated.DASTORE instruction. -
AASTORE
Deprecated.AASTORE instruction. -
BASTORE
Deprecated.BASTORE instruction. -
CASTORE
Deprecated.CASTORE instruction. -
SASTORE
Deprecated.SASTORE instruction. -
POP
Deprecated.UseInstructionConst.POP.POP instruction. -
POP2
Deprecated.POP2 instruction. -
DUP
Deprecated.UseInstructionConst.DUP.DUP instruction. -
DUP_X1
Deprecated.DUP_X1 instruction. -
DUP_X2
Deprecated.DUP_X2 instruction. -
DUP2
Deprecated.DUP2 instruction. -
DUP2_X1
Deprecated.DUP2_X1 instruction. -
DUP2_X2
Deprecated.DUP2_X2 instruction. -
SWAP
Deprecated.SWAP instruction. -
IADD
Deprecated.IADD instruction. -
LADD
Deprecated.LADD instruction. -
FADD
Deprecated.FADD instruction. -
DADD
Deprecated.DADD instruction. -
ISUB
Deprecated.ISUB instruction. -
LSUB
Deprecated.LSUB instruction. -
FSUB
Deprecated.FSUB instruction. -
DSUB
Deprecated.DSUB instruction. -
IMUL
Deprecated.IMUL instruction. -
LMUL
Deprecated.LMUL instruction. -
FMUL
Deprecated.FMUL instruction. -
DMUL
Deprecated.DMUL instruction. -
IDIV
Deprecated.IDIV instruction. -
LDIV
Deprecated.LDIV instruction. -
FDIV
Deprecated.FDIV instruction. -
DDIV
Deprecated.DDIV instruction. -
IREM
Deprecated.IREM instruction. -
LREM
Deprecated.LREM instruction. -
FREM
Deprecated.FREM instruction. -
DREM
Deprecated.DREM instruction. -
INEG
Deprecated.INEG instruction. -
LNEG
Deprecated.LNEG instruction. -
FNEG
Deprecated.FNEG instruction. -
DNEG
Deprecated.DNEG instruction. -
ISHL
Deprecated.ISHL instruction. -
LSHL
Deprecated.LSHL instruction. -
ISHR
Deprecated.ISHR instruction. -
LSHR
Deprecated.LSHR instruction. -
IUSHR
Deprecated.IUSHR instruction. -
LUSHR
Deprecated.LUSHR instruction. -
IAND
Deprecated.IAND instruction. -
LAND
Deprecated.LAND instruction. -
IOR
Deprecated.UseInstructionConst.IOR.IOR instruction. -
LOR
Deprecated.UseInstructionConst.LOR.LOR instruction. -
IXOR
Deprecated.IXOR instruction. -
LXOR
Deprecated.LXOR instruction. -
I2L
Deprecated.UseInstructionConst.I2L.I2L instruction. -
I2F
Deprecated.UseInstructionConst.I2F.I2F instruction. -
I2D
Deprecated.UseInstructionConst.I2D.I2D instruction. -
L2I
Deprecated.UseInstructionConst.L2I.L2I instruction. -
L2F
Deprecated.UseInstructionConst.L2F.L2F instruction. -
L2D
Deprecated.UseInstructionConst.L2D.L2D instruction. -
F2I
Deprecated.UseInstructionConst.F2I.F2I instruction. -
F2L
Deprecated.UseInstructionConst.F2L.F2L instruction. -
F2D
Deprecated.UseInstructionConst.F2D.F2D instruction. -
D2I
Deprecated.UseInstructionConst.D2I.D2I instruction. -
D2L
Deprecated.UseInstructionConst.D2L.D2L instruction. -
D2F
Deprecated.UseInstructionConst.D2F.D2F instruction. -
I2B
Deprecated.UseInstructionConst.I2B.I2B instruction. -
I2C
Deprecated.UseInstructionConst.I2C.I2C instruction. -
I2S
Deprecated.UseInstructionConst.I2S.I2S instruction. -
LCMP
-
FCMPL
Deprecated.FCMPL instruction. -
FCMPG
Deprecated.FCMPG instruction. -
DCMPL
Deprecated.DCMPL instruction. -
DCMPG
Deprecated.DCMPG instruction. -
IRETURN
Deprecated.IRETURN instruction. -
LRETURN
Deprecated.LRETURN instruction. -
FRETURN
Deprecated.FRETURN instruction. -
DRETURN
Deprecated.DRETURN instruction. -
ARETURN
Deprecated.ARETURN instruction. -
RETURN
Deprecated.RETURN instruction. -
ARRAYLENGTH
Deprecated.ARRAYLENGTH instruction. -
ATHROW
Deprecated.ATHROW instruction. -
MONITORENTER
Deprecated.MONITORENTER instruction. -
MONITOREXIT
Deprecated.MONITOREXIT instruction. -
THIS
Deprecated.You can use these constants in multiple places safely, if you can guarantee that you will never alter their internal values, for example call setIndex(). -
ALOAD_0
Deprecated.ALOAD_0 instruction. -
ALOAD_1
Deprecated.ALOAD_1 instruction. -
ALOAD_2
Deprecated.ALOAD_2 instruction. -
ILOAD_0
Deprecated.ILOAD_0 instruction. -
ILOAD_1
Deprecated.ILOAD_1 instruction. -
ILOAD_2
Deprecated.ILOAD_2 instruction. -
ASTORE_0
Deprecated.ASTORE_0 instruction. -
ASTORE_1
Deprecated.ASTORE_1 instruction. -
ASTORE_2
Deprecated.ASTORE_2 instruction. -
ISTORE_0
Deprecated.ISTORE_0 instruction. -
ISTORE_1
Deprecated.ISTORE_1 instruction. -
ISTORE_2
Deprecated.ISTORE_2 instruction. -
INSTRUCTIONS
Deprecated.UseInstructionConst.INSTRUCTIONS.Gets object via its opcode, for immutable instructions like branch instructions entries are set to null. -
bla
Deprecated.Interfaces may have no static initializers, so we simulate this with an inner class.
-
InstructionConstinstead.