cvmmethodinfo.java
来自「This is a resource based on j2me embedde」· Java 代码 · 共 1,382 行 · 第 1/4 页
JAVA
1,382 行
return NO_INLINE_FLAG; for (; excessArgs > 0; excessArgs -=2) /* pre popping */ result |= (excessArgs == 1 ? opc_pop : opc_pop2) << ((i++) << 3); result |= opcode << ((i++) << 3); for (; firstReg > 0; firstReg -=2) /* post popping */ result |= (firstReg == 1 ? opc_pop : opc_pop2) << ((i++) << 3); while (i < 3) result |= opc_nop << ((i++) << 3); return result; } if (excessArgs > 0 || firstReg > 1) /* We can't both do useful work and remove more than this many * items from the stack. */ return NO_INLINE_FLAG; if (opcodeArgCount == 1) { return MAKE_INLINING(opc_swap, checkThis ? opc_nonnull_quick : opc_pop, opcode); } if (((OpcodeInfo[opcode].flags & (CVMOpcodeInfoType.NULL_CHECK | CVMOpcodeInfoType.CAN_ERROR)) == 0) && (OpcodeInfo[opcode].outStack == 1)) { /* The result creates one thing on the stack, and it can't error */ return MAKE_INLINING(opcode, opc_swap, checkThis ? opc_nonnull_quick : opc_pop); } return NO_INLINE_FLAG; } private static boolean isXreturn(int opcode) { return (opcode >= opc_ireturn) && (opcode <= opc_areturn); } private static byte INLINING_WORD1(int simp) { return (byte) (simp & 0xFF); } private static byte INLINING_WORD2(int simp) { return (byte) ((simp >> 8) & 0xFF); } private static byte INLINING_WORD3(int simp) { return (byte) ((simp >> 16) & 0xFF); } private static int MAKE_INLINING(int op1, int op2, int op3) { return (op1 << 0) + (op2 << 8) + (op3 << 16); } private static int REGSIZE(CVMOpcodeInfoType ptr) { return (ptr.inStack); } private static int REGNUM(CVMOpcodeInfoType ptr) { return (ptr.outStack); } static CVMOpcodeInfoType[] OpcodeInfo = new CVMOpcodeInfoType[256]; static { /* { opc_pop <number of words to pop from stack> } * { opc_iadd <words popped from stack> <words pushed to stack> } * { opc_iload <words pushed to stack> } * { opc_iload_0 <words pushed to stack> <implicit register> } * { opc_return <words returned> } * 255 indicates opcode that we can't inline * other values are special opcodes that must be handled specially */ OpcodeInfo[opc_nop] = new CVMOpcodeInfoType(opc_pop, 0); OpcodeInfo[opc_aconst_null] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_m1] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_0] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_1] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_2] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_3] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_4] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_iconst_5] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_lconst_0] = new CVMOpcodeInfoType(opc_iadd, 0, 2); OpcodeInfo[opc_lconst_1] = new CVMOpcodeInfoType(opc_iadd, 0, 2); OpcodeInfo[opc_fconst_0] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_fconst_1] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_fconst_2] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_dconst_0] = new CVMOpcodeInfoType(opc_iadd, 0, 2); OpcodeInfo[opc_dconst_1] = new CVMOpcodeInfoType(opc_iadd, 0, 2); OpcodeInfo[opc_bipush] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_sipush] = new CVMOpcodeInfoType(opc_iadd, 0, 1); OpcodeInfo[opc_ldc] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ldc_w] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ldc2_w] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_iload] = new CVMOpcodeInfoType(opc_iload, 1); OpcodeInfo[opc_lload] = new CVMOpcodeInfoType(opc_iload, 2); OpcodeInfo[opc_fload] = new CVMOpcodeInfoType(opc_iload, 1); OpcodeInfo[opc_dload] = new CVMOpcodeInfoType(opc_iload, 2); OpcodeInfo[opc_aload] = new CVMOpcodeInfoType(opc_iload, 1); OpcodeInfo[opc_iload_0] = new CVMOpcodeInfoType(opc_iload_0, 1, 0); OpcodeInfo[opc_iload_1] = new CVMOpcodeInfoType(opc_iload_0, 1, 1); OpcodeInfo[opc_iload_2] = new CVMOpcodeInfoType(opc_iload_0, 1, 2); OpcodeInfo[opc_iload_3] = new CVMOpcodeInfoType(opc_iload_0, 1, 3); OpcodeInfo[opc_lload_0] = new CVMOpcodeInfoType(opc_iload_0, 2, 0); OpcodeInfo[opc_lload_1] = new CVMOpcodeInfoType(opc_iload_0, 2, 1); OpcodeInfo[opc_lload_2] = new CVMOpcodeInfoType(opc_iload_0, 2, 2); OpcodeInfo[opc_lload_3] = new CVMOpcodeInfoType(opc_iload_0, 2, 3); OpcodeInfo[opc_fload_0] = new CVMOpcodeInfoType(opc_iload_0, 1, 0); OpcodeInfo[opc_fload_1] = new CVMOpcodeInfoType(opc_iload_0, 1, 1); OpcodeInfo[opc_fload_2] = new CVMOpcodeInfoType(opc_iload_0, 1, 2); OpcodeInfo[opc_fload_3] = new CVMOpcodeInfoType(opc_iload_0, 1, 3); OpcodeInfo[opc_dload_0] = new CVMOpcodeInfoType(opc_iload_0, 2, 0); OpcodeInfo[opc_dload_1] = new CVMOpcodeInfoType(opc_iload_0, 2, 1); OpcodeInfo[opc_dload_2] = new CVMOpcodeInfoType(opc_iload_0, 2, 2); OpcodeInfo[opc_dload_3] = new CVMOpcodeInfoType(opc_iload_0, 2, 3); OpcodeInfo[opc_aload_0] = new CVMOpcodeInfoType(opc_iload_0, 1, 0); OpcodeInfo[opc_aload_1] = new CVMOpcodeInfoType(opc_iload_0, 1, 1); OpcodeInfo[opc_aload_2] = new CVMOpcodeInfoType(opc_iload_0, 1, 2); OpcodeInfo[opc_aload_3] = new CVMOpcodeInfoType(opc_iload_0, 1, 3); OpcodeInfo[opc_iaload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_laload] = new CVMOpcodeInfoType(opc_iadd, 2, 2, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_faload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_daload] = new CVMOpcodeInfoType(opc_iadd, 2, 2, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_aaload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_baload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_caload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_saload] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_istore] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lstore] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_fstore] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dstore] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_astore] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_istore_0] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_istore_1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_istore_2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_istore_3] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lstore_0] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lstore_1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lstore_2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lstore_3] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_fstore_0] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_fstore_1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_fstore_2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_fstore_3] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dstore_0] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dstore_1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dstore_2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dstore_3] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_astore_0] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_astore_1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_astore_2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_astore_3] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_iastore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_lastore] = new CVMOpcodeInfoType(opc_iadd, 4, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_fastore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_dastore] = new CVMOpcodeInfoType(opc_iadd, 4, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_aastore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_bastore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_castore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_sastore] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_pop] = new CVMOpcodeInfoType(opc_pop, 1); OpcodeInfo[opc_pop2] = new CVMOpcodeInfoType(opc_pop, 2); OpcodeInfo[opc_dup] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dup_x1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dup_x2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dup2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dup2_x1] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dup2_x2] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_swap] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_iadd] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_ladd] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_fadd] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_dadd] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_isub] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lsub] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_fsub] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_dsub] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_imul] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lmul] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_fmul] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_dmul] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_idiv] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_ldiv] = new CVMOpcodeInfoType(opc_iadd, 4, 2, CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_fdiv] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_ddiv] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_irem] = new CVMOpcodeInfoType(opc_iadd, 2, 1, CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_lrem] = new CVMOpcodeInfoType(opc_iadd, 4, 2, CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_frem] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_drem] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_ineg] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_lneg] = new CVMOpcodeInfoType(opc_iadd, 2, 2); OpcodeInfo[opc_fneg] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_dneg] = new CVMOpcodeInfoType(opc_iadd, 2, 2); OpcodeInfo[opc_ishl] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lshl] = new CVMOpcodeInfoType(opc_iadd, 3, 2); OpcodeInfo[opc_ishr] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lshr] = new CVMOpcodeInfoType(opc_iadd, 3, 2); OpcodeInfo[opc_iushr] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lushr] = new CVMOpcodeInfoType(opc_iadd, 3, 2); OpcodeInfo[opc_iand] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_land] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_ior] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lor] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_ixor] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_lxor] = new CVMOpcodeInfoType(opc_iadd, 4, 2); OpcodeInfo[opc_iinc] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_i2l] = new CVMOpcodeInfoType(opc_iadd, 1, 2); OpcodeInfo[opc_i2f] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_i2d] = new CVMOpcodeInfoType(opc_iadd, 1, 2); OpcodeInfo[opc_l2i] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_l2f] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_l2d] = new CVMOpcodeInfoType(opc_iadd, 2, 2); OpcodeInfo[opc_f2i] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_f2l] = new CVMOpcodeInfoType(opc_iadd, 1, 2); OpcodeInfo[opc_f2d] = new CVMOpcodeInfoType(opc_iadd, 1, 2); OpcodeInfo[opc_d2i] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_d2l] = new CVMOpcodeInfoType(opc_iadd, 2, 2); OpcodeInfo[opc_d2f] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_i2b] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_i2c] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_i2s] = new CVMOpcodeInfoType(opc_iadd, 1, 1); OpcodeInfo[opc_lcmp] = new CVMOpcodeInfoType(opc_iadd, 4, 1); OpcodeInfo[opc_fcmpl] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_fcmpg] = new CVMOpcodeInfoType(opc_iadd, 2, 1); OpcodeInfo[opc_dcmpl] = new CVMOpcodeInfoType(opc_iadd, 4, 1); OpcodeInfo[opc_dcmpg] = new CVMOpcodeInfoType(opc_iadd, 4, 1); OpcodeInfo[opc_ifeq] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifne] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_iflt] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifge] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifgt] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifle] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmpeq] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmpne] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmplt] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmpge] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmpgt] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_icmple] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_acmpeq] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_if_acmpne] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_goto] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_jsr] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ret] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_tableswitch] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_lookupswitch] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ireturn] = new CVMOpcodeInfoType(opc_return, 1); OpcodeInfo[opc_lreturn] = new CVMOpcodeInfoType(opc_return, 2); OpcodeInfo[opc_freturn] = new CVMOpcodeInfoType(opc_return, 1); OpcodeInfo[opc_dreturn] = new CVMOpcodeInfoType(opc_return, 2); OpcodeInfo[opc_areturn] = new CVMOpcodeInfoType(opc_return, 1); OpcodeInfo[opc_return] = new CVMOpcodeInfoType(opc_return, 0); OpcodeInfo[opc_getstatic] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_putstatic] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_getfield] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_putfield] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_invokevirtual] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_invokespecial] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_invokestatic] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_invokeinterface] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_xxxunusedxxx] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_new] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_newarray] = new CVMOpcodeInfoType(opc_iadd, 1, 1, CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_anewarray] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_arraylength] = new CVMOpcodeInfoType(opc_iadd, 1, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_athrow] = new CVMOpcodeInfoType(opc_iadd, 1, 0, CVMOpcodeInfoType.NULL_CHECK | CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_checkcast] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_instanceof] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_monitorenter] = new CVMOpcodeInfoType(opc_iadd, 1, 0, CVMOpcodeInfoType.NULL_CHECK | CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_monitorexit] = new CVMOpcodeInfoType(opc_iadd, 1, 0, CVMOpcodeInfoType.NULL_CHECK | CVMOpcodeInfoType.CAN_ERROR); OpcodeInfo[opc_wide] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_multianewarray] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifnull] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ifnonnull] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_goto_w] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_jsr_w] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_breakpoint] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_aldc_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_aldc_w_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_aldc_ind_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_aldc_ind_w_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_ldc_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_ldc_w_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_ldc2_w_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 2, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_getfield_quick] = new CVMOpcodeInfoType(opc_iadd, 1, 1, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_putfield_quick] = new CVMOpcodeInfoType(opc_iadd, 2, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_getfield2_quick] = new CVMOpcodeInfoType(opc_iadd, 1, 2, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_putfield2_quick] = new CVMOpcodeInfoType(opc_iadd, 3, 0, CVMOpcodeInfoType.NULL_CHECK); OpcodeInfo[opc_getstatic_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_putstatic_quick] = new CVMOpcodeInfoType(opc_iadd, 1, 0, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_agetstatic_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 1, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_aputstatic_quick] = new CVMOpcodeInfoType(opc_iadd, 1, 0, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_getstatic2_quick] = new CVMOpcodeInfoType(opc_iadd, 0, 2, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_putstatic2_quick]= new CVMOpcodeInfoType(opc_iadd, 2, 0, CVMOpcodeInfoType.CONSTANT_POOL); OpcodeInfo[opc_invokevirtual_quick] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_ainvokevirtual_quick] = new CVMOpcodeInfoType(255); OpcodeInfo[opc_dinvokevirtual_quick] = new CVMOpcodeInfoType(255);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?