|
#define | NEXT_BYTE (*(frame->code + frame->pc++)) |
|
#define | HIWORD(x) ((int32_t)(x >> 32)) |
|
#define | LOWORD(x) ((int32_t)(x & 0xFFFFFFFFll)) |
|
#define | DECLR_CONST_CAT_1_FAMILY(instructionprefix, value, type) |
| Used to automatically generate instructions "iconst_<n>" and fconst_<n>. More...
|
|
#define | DECLR_CONST_CAT_2_FAMILY(instructionprefix, highvalue, lowvalue, type) |
| Used to automatically generate instructions "lconst_<n>" and dconst_<n>. More...
|
|
#define | DECLR_LOAD_CAT_1_FAMILY(instructionprefix, type) |
| Used to automatically generate instructions "iload", "fload" and "aload". More...
|
|
#define | DECLR_LOAD_CAT_2_FAMILY(instructionprefix, type) |
| Used to automatically generate instructions "lload", and "dload". More...
|
|
#define | DECLR_WIDE_LOAD_CAT_1_FAMILY(instructionprefix, type) |
| Used to automatically generate instructions "iload", "fload" and "aload" that are widened. More...
|
|
#define | DECLR_WIDE_LOAD_CAT_2_FAMILY(instructionprefix, type) |
| Used to automatically generate instructions "lload", and "dload" that are widened. More...
|
|
#define | DECLR_CAT_1_LOAD_N_FAMILY(instructionprefix, value, type) |
| Used to automatically generate instructions "iload_<n>", "fload_<n>" and "aload_<n>". More...
|
|
#define | DECLR_CAT_2_LOAD_N_FAMILY(instructionprefix, value, type) |
| Used to automatically generate instructions "dload_<n>" and "lload_<n>". More...
|
|
#define | DECLR_ALOAD_CAT_1_FAMILY(instructionname, type, op_type) |
| Used to automatically generate instructions "iaload", "faload", "baload", "saload" and "caload". More...
|
|
#define | DECLR_ALOAD_CAT_2_FAMILY(instructionname, type, op_type) |
| Used to automatically generate instructions "laload" and "daload". More...
|
|
#define | DECLR_STORE_CAT_1_FAMILY(instructionprefix) |
| Used to automatically generate instructions "istore", "fstore" and "astore". More...
|
|
#define | DECLR_WIDE_STORE_CAT_1_FAMILY(instructionprefix) |
| Used to automatically generate instructions "istore", "fstore" and "astore" that are widened. More...
|
|
#define | DECLR_STORE_CAT_2_FAMILY(instructionprefix) |
| Used to automatically generate instructions "l" and "dstore". More...
|
|
#define | DECLR_WIDE_STORE_CAT_2_FAMILY(instructionprefix) |
| Used to automatically generate instructions "l" and "dstore" that are widened. More...
|
|
#define | DECLR_STORE_N_CAT_1_FAMILY(instructionprefix, N) |
| Used to automatically generate instructions "istore_<n>", "fstore_<n>" and "astore_<n>". More...
|
|
#define | DECLR_STORE_N_CAT_2_FAMILY(instructionprefix, N) |
| Used to automatically generate instructions "lstore_<n>" and "dstore_<n>". More...
|
|
#define | DECLR_ASTORE_CAT_1_FAMILY(instructionname, type) |
| Used to automatically generate instructions "bastore", "castore", "sastore", "iastore" and "fastore". More...
|
|
#define | DECLR_ASTORE_CAT_2_FAMILY(instructionname) |
| Used to automatically generate instructions "dastore" and "lastore". More...
|
|
#define | DECLR_INTEGER_MATH_OP(instruction, op) |
| Used to automatically generate instructions "iadd", "isub", "imul", "idiv", "irem", "iand", "ior" and "ixor". More...
|
|
#define | DECLR_LONG_MATH_OP(instruction, op) |
| Used to automatically generate instructions "ladd", "lsub", "lmul", "ldiv", "lrem", "land", "lor" and "lxor". More...
|
|
#define | DECLR_FLOAT_MATH_OP(instruction, op) |
| Used to automatically generate instructions "fadd", "fsub", "fmul" and "fdiv". More...
|
|
#define | DECLR_DOUBLE_MATH_OP(instruction, op) |
| Used to automatically generate instructions "dadd", "dsub", "dmul" and "ddiv". More...
|
|
#define | DECLR_IF_FAMILY(inst, op) |
| Used to automatically generate instructions "ifeq", "ifne", "iflt", "ifle", "ifgt" and "ifge". More...
|
|
#define | DECLR_IF_ICMP_FAMILY(inst, op) |
| Used to automatically generate instructions "if_icmpeq", "if_icmpne", "if_icmplt", "if_icmple", "if_icmpgt", "if_icmpge", "if_acmpeq" and "if_acmpne". More...
|
|
#define | DECLR_RETURN_FAMILY(instname, retcount) |
| Used to automatically generate instructions "ireturn", "lreturn", "freturn", "dreturn", "areturn" and "return". More...
|
|
|
uint8_t | instfunc_nop (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_aconst_null (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_bipush (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_sipush (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ldc (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ldc_w (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ldc2_w (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_aaload (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_aastore (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_pop (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_pop2 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup_x1 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup_x2 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup2 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup2_x1 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dup2_x2 (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_swap (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ishl (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ishr (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_iushr (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lshl (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lshr (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lushr (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_frem (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_drem (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ineg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lneg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_fneg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dneg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_iinc (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_wide_iinc (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2l (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2f (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2d (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_l2i (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_l2f (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_l2d (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_f2i (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_f2l (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_f2d (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_d2i (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_d2l (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_d2f (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2b (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2c (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_i2s (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lcmp (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_fcmpl (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_fcmpg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dcmpl (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_dcmpg (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_goto (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_jsr (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ret (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_wide_ret (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_tableswitch (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_lookupswitch (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_getstatic (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_putstatic (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_getfield (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_putfield (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_invokevirtual (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_invokespecial (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_invokestatic (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_invokeinterface (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_invokedynamic (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_new (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_newarray (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_anewarray (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_arraylength (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_athrow (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_checkcast (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_instanceof (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_monitorenter (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_monitorexit (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_wide (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_multianewarray (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ifnull (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_ifnonnull (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_goto_w (JavaVirtualMachine *jvm, Frame *frame) |
|
uint8_t | instfunc_jsr_w (JavaVirtualMachine *jvm, Frame *frame) |
|
InstructionFunction | fetchOpcodeFunction (uint8_t opcode) |
| Retrieves the instruction function for a given instruction opcode. More...
|
|