/** * Copies the constant value {@code value} to {@code target}. The constant * must be a primitive, String, Class, TypeId, or null. */ public <T> void loadConstant(Local<T> target, T value) { Rop rop = value == null ? Rops.CONST_OBJECT_NOTHROW : Rops.opConst(target.type.ropType); if (rop.getBranchingness() == BRANCH_NONE) { addInstruction(new PlainCstInsn(rop, sourcePosition, target.spec(), RegisterSpecList.EMPTY, Constants.getConstant(value))); } else { addInstruction(new ThrowingCstInsn(rop, sourcePosition, RegisterSpecList.EMPTY, catches, Constants.getConstant(value))); moveResult(target, true); } }
public <T> void loadConstant(Local<T> target, T value) { Rop rop = Rops.opConst(target.type.ropType); if (rop.getBranchingness() == BRANCH_NONE) { addInstruction(new PlainCstInsn(rop, sourcePosition, target.spec(), RegisterSpecList.EMPTY, Constants.getConstant(value))); } else { addInstruction(new ThrowingCstInsn(rop, sourcePosition, RegisterSpecList.EMPTY, catches, Constants.getConstant(value))); moveResult(target, true); } }
/** * Copies the constant value {@code value} to {@code target}. The constant must be a primitive, String, Class, TypeId, or null. */ public <T> void loadConstant(Local<T> target, T value) { Rop rop = value == null ? Rops.CONST_OBJECT_NOTHROW : Rops.opConst(target.type.ropType); if (rop.getBranchingness() == BRANCH_NONE) { addInstruction(new PlainCstInsn(rop, sourcePosition, target.spec(), RegisterSpecList.EMPTY, Constants.getConstant(value))); } else { addInstruction(new ThrowingCstInsn(rop, sourcePosition, RegisterSpecList.EMPTY, catches, Constants.getConstant(value))); moveResult(target, true); } }
/** * Copies the constant value {@code value} to {@code target}. The constant * must be a primitive, String, Class, TypeId, or null. */ public <T> void loadConstant(Local<T> target, T value) { Rop rop = value == null ? Rops.CONST_OBJECT_NOTHROW : Rops.opConst(target.type.ropType); if (rop.getBranchingness() == BRANCH_NONE) { addInstruction(new PlainCstInsn(rop, sourcePosition, target.spec(), RegisterSpecList.EMPTY, Constants.getConstant(value))); } else { addInstruction(new ThrowingCstInsn(rop, sourcePosition, RegisterSpecList.EMPTY, catches, Constants.getConstant(value))); moveResult(target, true); } }
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);
case RegOps.MOVE_PARAM: return opMoveParam(dest); case RegOps.MOVE_EXCEPTION: return opMoveException(dest); case RegOps.CONST: return opConst(dest); case RegOps.GOTO: return GOTO; case RegOps.IF_EQ: return opIfEq(sources);