/* Generated automatically from vminsn.scm */
/* DO NOT EDIT */
#ifdef DEFINSN
DEFINSN(SCM_VM_NOP, "NOP", 0, NONE, 0)
DEFINSN(SCM_VM_CONST, "CONST", 0, OBJ, 0)
DEFINSN(SCM_VM_CONSTI, "CONSTI", 1, NONE, 0)
DEFINSN(SCM_VM_CONSTN, "CONSTN", 0, NONE, 0)
DEFINSN(SCM_VM_CONSTF, "CONSTF", 0, NONE, 0)
DEFINSN(SCM_VM_CONSTU, "CONSTU", 0, NONE, 0)
DEFINSN(SCM_VM_CONST_PUSH, "CONST-PUSH", 0, OBJ, 0)
DEFINSN(SCM_VM_CONSTI_PUSH, "CONSTI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_CONSTN_PUSH, "CONSTN-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CONSTF_PUSH, "CONSTF-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CONST_RET, "CONST-RET", 0, OBJ, 0)
DEFINSN(SCM_VM_CONSTF_RET, "CONSTF-RET", 0, NONE, 0)
DEFINSN(SCM_VM_CONSTU_RET, "CONSTU-RET", 0, NONE, 0)
DEFINSN(SCM_VM_PUSH, "PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_PRE_CALL, "PRE-CALL", 1, LABEL, 0)
DEFINSN(SCM_VM_PUSH_PRE_CALL, "PUSH-PRE-CALL", 1, LABEL, 0)
DEFINSN(SCM_VM_CHECK_STACK, "CHECK-STACK", 1, NONE, 0)
DEFINSN(SCM_VM_CALL, "CALL", 1, NONE, 0)
DEFINSN(SCM_VM_TAIL_CALL, "TAIL-CALL", 1, NONE, 0)
DEFINSN(SCM_VM_JUMP, "JUMP", 0, LABEL, 0)
DEFINSN(SCM_VM_RET, "RET", 0, NONE, 0)
DEFINSN(SCM_VM_DEFINE, "DEFINE", 1, OBJ, 0)
DEFINSN(SCM_VM_CLOSURE, "CLOSURE", 0, CODE, 0)
DEFINSN(SCM_VM_LOCAL_ENV, "LOCAL-ENV", 1, NONE, 0)
DEFINSN(SCM_VM_PUSH_LOCAL_ENV, "PUSH-LOCAL-ENV", 1, NONE, 0)
DEFINSN(SCM_VM_LOCAL_ENV_CLOSURES, "LOCAL-ENV-CLOSURES", 1, CODES, 0)
DEFINSN(SCM_VM_POP_LOCAL_ENV, "POP-LOCAL-ENV", 0, NONE, 0)
DEFINSN(SCM_VM_LOCAL_ENV_JUMP, "LOCAL-ENV-JUMP", 1, LABEL, 0)
DEFINSN(SCM_VM_LOCAL_ENV_CALL, "LOCAL-ENV-CALL", 1, NONE, 0)
DEFINSN(SCM_VM_LOCAL_ENV_TAIL_CALL, "LOCAL-ENV-TAIL-CALL", 1, NONE, 0)
DEFINSN(SCM_VM_BF, "BF", 0, LABEL, 0)
DEFINSN(SCM_VM_BT, "BT", 0, LABEL, 0)
DEFINSN(SCM_VM_BNEQ, "BNEQ", 0, LABEL, 0)
DEFINSN(SCM_VM_BNEQV, "BNEQV", 0, LABEL, 0)
DEFINSN(SCM_VM_BNNULL, "BNNULL", 0, LABEL, 0)
DEFINSN(SCM_VM_BNUMNE, "BNUMNE", 0, LABEL, 0)
DEFINSN(SCM_VM_BNLT, "BNLT", 0, LABEL, 0)
DEFINSN(SCM_VM_BNLE, "BNLE", 0, LABEL, 0)
DEFINSN(SCM_VM_BNGT, "BNGT", 0, LABEL, 0)
DEFINSN(SCM_VM_BNGE, "BNGE", 0, LABEL, 0)
DEFINSN(SCM_VM_LREF_VAL0_BNUMNE, "LREF-VAL0-BNUMNE", 2, LABEL, 0)
DEFINSN(SCM_VM_LREF_VAL0_BNLT, "LREF-VAL0-BNLT", 2, LABEL, 0)
DEFINSN(SCM_VM_LREF_VAL0_BNLE, "LREF-VAL0-BNLE", 2, LABEL, 0)
DEFINSN(SCM_VM_LREF_VAL0_BNGT, "LREF-VAL0-BNGT", 2, LABEL, 0)
DEFINSN(SCM_VM_LREF_VAL0_BNGE, "LREF-VAL0-BNGE", 2, LABEL, 0)
DEFINSN(SCM_VM_BNUMNEI, "BNUMNEI", 1, LABEL, 0)
DEFINSN(SCM_VM_BNEQC, "BNEQC", 0, OBJ_LABEL, 0)
DEFINSN(SCM_VM_BNEQVC, "BNEQVC", 0, OBJ_LABEL, 0)
DEFINSN(SCM_VM_RF, "RF", 0, NONE, 0)
DEFINSN(SCM_VM_RT, "RT", 0, NONE, 0)
DEFINSN(SCM_VM_RNEQ, "RNEQ", 0, NONE, 0)
DEFINSN(SCM_VM_RNEQV, "RNEQV", 0, NONE, 0)
DEFINSN(SCM_VM_RNNULL, "RNNULL", 0, NONE, 0)
DEFINSN(SCM_VM_RECEIVE, "RECEIVE", 2, LABEL, 0)
DEFINSN(SCM_VM_TAIL_RECEIVE, "TAIL-RECEIVE", 2, NONE, 0)
DEFINSN(SCM_VM_RECEIVE_ALL, "RECEIVE-ALL", 0, LABEL, 0)
DEFINSN(SCM_VM_TAIL_RECEIVE_ALL, "TAIL-RECEIVE-ALL", 0, NONE, 0)
DEFINSN(SCM_VM_VALUES_N, "VALUES-N", 0, NONE, 0)
DEFINSN(SCM_VM_LSET, "LSET", 2, NONE, 0)
DEFINSN(SCM_VM_GSET, "GSET", 0, OBJ, 0)
DEFINSN(SCM_VM_LREF, "LREF", 2, NONE, 0)
DEFINSN(SCM_VM_LREF0, "LREF0", 0, NONE, 0)
DEFINSN(SCM_VM_LREF1, "LREF1", 0, NONE, 0)
DEFINSN(SCM_VM_LREF2, "LREF2", 0, NONE, 0)
DEFINSN(SCM_VM_LREF3, "LREF3", 0, NONE, 0)
DEFINSN(SCM_VM_LREF10, "LREF10", 0, NONE, 0)
DEFINSN(SCM_VM_LREF11, "LREF11", 0, NONE, 0)
DEFINSN(SCM_VM_LREF12, "LREF12", 0, NONE, 0)
DEFINSN(SCM_VM_LREF20, "LREF20", 0, NONE, 0)
DEFINSN(SCM_VM_LREF21, "LREF21", 0, NONE, 0)
DEFINSN(SCM_VM_LREF30, "LREF30", 0, NONE, 0)
DEFINSN(SCM_VM_LREF_PUSH, "LREF-PUSH", 2, NONE, 0)
DEFINSN(SCM_VM_LREF0_PUSH, "LREF0-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF1_PUSH, "LREF1-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF2_PUSH, "LREF2-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF3_PUSH, "LREF3-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF10_PUSH, "LREF10-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF11_PUSH, "LREF11-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF12_PUSH, "LREF12-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF20_PUSH, "LREF20-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF21_PUSH, "LREF21-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF30_PUSH, "LREF30-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF_RET, "LREF-RET", 2, NONE, 0)
DEFINSN(SCM_VM_LREF0_RET, "LREF0-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF1_RET, "LREF1-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF2_RET, "LREF2-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF3_RET, "LREF3-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF10_RET, "LREF10-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF11_RET, "LREF11-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF12_RET, "LREF12-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF20_RET, "LREF20-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF21_RET, "LREF21-RET", 0, NONE, 0)
DEFINSN(SCM_VM_LREF30_RET, "LREF30-RET", 0, NONE, 0)
DEFINSN(SCM_VM_GREF, "GREF", 0, OBJ, 0)
DEFINSN(SCM_VM_GREF_PUSH, "GREF-PUSH", 0, OBJ, 0)
DEFINSN(SCM_VM_GREF_CALL, "GREF-CALL", 1, OBJ, 0)
DEFINSN(SCM_VM_GREF_TAIL_CALL, "GREF-TAIL-CALL", 1, OBJ, 0)
DEFINSN(SCM_VM_PUSH_GREF, "PUSH-GREF", 0, OBJ, 0)
DEFINSN(SCM_VM_PUSH_GREF_CALL, "PUSH-GREF-CALL", 1, OBJ, 0)
DEFINSN(SCM_VM_PUSH_GREF_TAIL_CALL, "PUSH-GREF-TAIL-CALL", 1, OBJ, 0)
DEFINSN(SCM_VM_PROMISE, "PROMISE", 0, NONE, 0)
DEFINSN(SCM_VM_VALUES_APPLY, "VALUES-APPLY", 0, NONE, 0)
DEFINSN(SCM_VM_CONS, "CONS", 0, NONE, 0)
DEFINSN(SCM_VM_CONS_PUSH, "CONS-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CAR, "CAR", 0, NONE, 0)
DEFINSN(SCM_VM_CAR_PUSH, "CAR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF0_CAR, "LREF0-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF1_CAR, "LREF1-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF2_CAR, "LREF2-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF3_CAR, "LREF3-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF10_CAR, "LREF10-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF11_CAR, "LREF11-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF12_CAR, "LREF12-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF20_CAR, "LREF20-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF21_CAR, "LREF21-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF30_CAR, "LREF30-CAR", 0, NONE, 0)
DEFINSN(SCM_VM_CDR, "CDR", 0, NONE, 0)
DEFINSN(SCM_VM_CDR_PUSH, "CDR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LREF0_CDR, "LREF0-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF1_CDR, "LREF1-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF2_CDR, "LREF2-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF3_CDR, "LREF3-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF10_CDR, "LREF10-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF11_CDR, "LREF11-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF12_CDR, "LREF12-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF20_CDR, "LREF20-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF21_CDR, "LREF21-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_LREF30_CDR, "LREF30-CDR", 0, NONE, 0)
DEFINSN(SCM_VM_CAAR, "CAAR", 0, NONE, 0)
DEFINSN(SCM_VM_CAAR_PUSH, "CAAR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CADR, "CADR", 0, NONE, 0)
DEFINSN(SCM_VM_CADR_PUSH, "CADR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CDAR, "CDAR", 0, NONE, 0)
DEFINSN(SCM_VM_CDAR_PUSH, "CDAR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_CDDR, "CDDR", 0, NONE, 0)
DEFINSN(SCM_VM_CDDR_PUSH, "CDDR-PUSH", 0, NONE, 0)
DEFINSN(SCM_VM_LIST, "LIST", 1, NONE, 0)
DEFINSN(SCM_VM_LIST_STAR, "LIST-STAR", 1, NONE, 0)
DEFINSN(SCM_VM_LENGTH, "LENGTH", 0, NONE, 0)
DEFINSN(SCM_VM_MEMQ, "MEMQ", 0, NONE, 0)
DEFINSN(SCM_VM_MEMV, "MEMV", 0, NONE, 0)
DEFINSN(SCM_VM_ASSQ, "ASSQ", 0, NONE, 0)
DEFINSN(SCM_VM_ASSV, "ASSV", 0, NONE, 0)
DEFINSN(SCM_VM_EQ, "EQ", 0, NONE, 0)
DEFINSN(SCM_VM_EQV, "EQV", 0, NONE, 0)
DEFINSN(SCM_VM_APPEND, "APPEND", 1, NONE, 0)
DEFINSN(SCM_VM_NOT, "NOT", 0, NONE, 0)
DEFINSN(SCM_VM_REVERSE, "REVERSE", 0, NONE, 0)
DEFINSN(SCM_VM_APPLY, "APPLY", 1, NONE, 0)
DEFINSN(SCM_VM_TAIL_APPLY, "TAIL-APPLY", 1, NONE, 0)
DEFINSN(SCM_VM_IS_A, "IS-A", 0, NONE, 0)
DEFINSN(SCM_VM_NULLP, "NULLP", 0, NONE, 0)
DEFINSN(SCM_VM_PAIRP, "PAIRP", 0, NONE, 0)
DEFINSN(SCM_VM_CHARP, "CHARP", 0, NONE, 0)
DEFINSN(SCM_VM_EOFP, "EOFP", 0, NONE, 0)
DEFINSN(SCM_VM_STRINGP, "STRINGP", 0, NONE, 0)
DEFINSN(SCM_VM_SYMBOLP, "SYMBOLP", 0, NONE, 0)
DEFINSN(SCM_VM_VECTORP, "VECTORP", 0, NONE, 0)
DEFINSN(SCM_VM_NUMBERP, "NUMBERP", 0, NONE, 0)
DEFINSN(SCM_VM_REALP, "REALP", 0, NONE, 0)
DEFINSN(SCM_VM_IDENTIFIERP, "IDENTIFIERP", 0, NONE, 0)
DEFINSN(SCM_VM_SETTER, "SETTER", 0, NONE, 0)
DEFINSN(SCM_VM_VALUES, "VALUES", 1, NONE, 0)
DEFINSN(SCM_VM_VALUES_RET, "VALUES-RET", 1, NONE, 0)
DEFINSN(SCM_VM_VEC, "VEC", 1, NONE, 0)
DEFINSN(SCM_VM_LIST2VEC, "LIST2VEC", 0, NONE, 0)
DEFINSN(SCM_VM_APP_VEC, "APP-VEC", 1, NONE, 0)
DEFINSN(SCM_VM_VEC_LEN, "VEC-LEN", 0, NONE, 0)
DEFINSN(SCM_VM_VEC_REF, "VEC-REF", 0, NONE, 0)
DEFINSN(SCM_VM_VEC_SET, "VEC-SET", 0, NONE, 0)
DEFINSN(SCM_VM_VEC_REFI, "VEC-REFI", 1, NONE, 0)
DEFINSN(SCM_VM_VEC_SETI, "VEC-SETI", 1, NONE, 0)
DEFINSN(SCM_VM_UVEC_REF, "UVEC-REF", 1, NONE, 0)
DEFINSN(SCM_VM_NUMEQ2, "NUMEQ2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMLT2, "NUMLT2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMLE2, "NUMLE2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMGT2, "NUMGT2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMGE2, "NUMGE2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMADD2, "NUMADD2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMSUB2, "NUMSUB2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMMUL2, "NUMMUL2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMDIV2, "NUMDIV2", 0, NONE, 0)
DEFINSN(SCM_VM_LREF_VAL0_NUMADD2, "LREF-VAL0-NUMADD2", 2, NONE, 0)
DEFINSN(SCM_VM_NEGATE, "NEGATE", 0, NONE, 0)
DEFINSN(SCM_VM_NUMIADD2, "NUMIADD2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMISUB2, "NUMISUB2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMIMUL2, "NUMIMUL2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMIDIV2, "NUMIDIV2", 0, NONE, 0)
DEFINSN(SCM_VM_NUMADDI, "NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF0_NUMADDI, "LREF0-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF1_NUMADDI, "LREF1-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF2_NUMADDI, "LREF2-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF3_NUMADDI, "LREF3-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF10_NUMADDI, "LREF10-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF11_NUMADDI, "LREF11-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF12_NUMADDI, "LREF12-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF20_NUMADDI, "LREF20-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF21_NUMADDI, "LREF21-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF30_NUMADDI, "LREF30-NUMADDI", 1, NONE, 0)
DEFINSN(SCM_VM_LREF0_NUMADDI_PUSH, "LREF0-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF1_NUMADDI_PUSH, "LREF1-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF2_NUMADDI_PUSH, "LREF2-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF3_NUMADDI_PUSH, "LREF3-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF10_NUMADDI_PUSH, "LREF10-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF11_NUMADDI_PUSH, "LREF11-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF12_NUMADDI_PUSH, "LREF12-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF20_NUMADDI_PUSH, "LREF20-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF21_NUMADDI_PUSH, "LREF21-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_LREF30_NUMADDI_PUSH, "LREF30-NUMADDI-PUSH", 1, NONE, 0)
DEFINSN(SCM_VM_NUMSUBI, "NUMSUBI", 1, NONE, 0)
DEFINSN(SCM_VM_NUMMODI, "NUMMODI", 1, NONE, 0)
DEFINSN(SCM_VM_NUMREMI, "NUMREMI", 1, NONE, 0)
DEFINSN(SCM_VM_ASHI, "ASHI", 1, NONE, 0)
DEFINSN(SCM_VM_LOGAND, "LOGAND", 0, NONE, 0)
DEFINSN(SCM_VM_LOGIOR, "LOGIOR", 0, NONE, 0)
DEFINSN(SCM_VM_LOGXOR, "LOGXOR", 0, NONE, 0)
DEFINSN(SCM_VM_LOGANDC, "LOGANDC", 0, OBJ, 0)
DEFINSN(SCM_VM_LOGIORC, "LOGIORC", 0, OBJ, 0)
DEFINSN(SCM_VM_LOGXORC, "LOGXORC", 0, OBJ, 0)
DEFINSN(SCM_VM_READ_CHAR, "READ-CHAR", 1, NONE, 0)
DEFINSN(SCM_VM_PEEK_CHAR, "PEEK-CHAR", 1, NONE, 0)
DEFINSN(SCM_VM_WRITE_CHAR, "WRITE-CHAR", 1, NONE, 0)
DEFINSN(SCM_VM_CURIN, "CURIN", 0, NONE, 0)
DEFINSN(SCM_VM_CUROUT, "CUROUT", 0, NONE, 0)
DEFINSN(SCM_VM_CURERR, "CURERR", 0, NONE, 0)
DEFINSN(SCM_VM_SLOT_REF, "SLOT-REF", 0, NONE, 0)
DEFINSN(SCM_VM_SLOT_SET, "SLOT-SET", 0, NONE, 0)
DEFINSN(SCM_VM_SLOT_REFC, "SLOT-REFC", 0, OBJ, 0)
DEFINSN(SCM_VM_SLOT_SETC, "SLOT-SETC", 0, OBJ, 0)
DEFINSN(SCM_VM_PUSH_HANDLERS, "PUSH-HANDLERS", 1, NONE, 0)
DEFINSN(SCM_VM_POP_HANDLERS, "POP-HANDLERS", 0, NONE, 0)
DEFINSN(SCM_VM_BOX, "BOX", 1, NONE, 0)
DEFINSN(SCM_VM_ENV_SET, "ENV-SET", 1, NONE, 0)
DEFINSN(SCM_VM_UNBOX, "UNBOX", 0, NONE, 0)
DEFINSN(SCM_VM_LREF_UNBOX, "LREF-UNBOX", 2, NONE, SCM_VM_INSN_FOLD_LREF|0)
DEFINSN(SCM_VM_LOCAL_ENV_SHIFT, "LOCAL-ENV-SHIFT", 1, NONE, 0)
DEFINSN(SCM_VM_XLREF, "XLREF", 1, OBJ, 0)
DEFINSN(SCM_VM_XLSET, "XLSET", 1, OBJ, 0)
DEFINSN(SCM_VM_EXTEND_DENV, "EXTEND-DENV", 1, LABEL, 0)
DEFINSN(SCM_VM_TAIL_EXTEND_DENV, "TAIL-EXTEND-DENV", 1, NONE, 0)
DEFINSN(SCM_VM_XINSN, "XINSN", 0, OBJ_NATIVE, 0)
#endif /*DEFINSN*/
#ifdef STATE_TABLE
/* State #0 () [0] */
  /*  0*/ { SCM_VM_NOP, EMIT, SCM_VM_NOP },
  /*  1*/ { SCM_VM_CONST, NEXT, 371 },
  /*  2*/ { SCM_VM_CONSTI, NEXT, 369 },
  /*  3*/ { SCM_VM_CONSTN, NEXT, 367 },
  /*  4*/ { SCM_VM_CONSTF, NEXT, 364 },
  /*  5*/ { SCM_VM_CONSTU, NEXT, 362 },
  /*  6*/ { SCM_VM_CONST_PUSH, EMIT, SCM_VM_CONST_PUSH },
  /*  7*/ { SCM_VM_CONSTI_PUSH, EMIT, SCM_VM_CONSTI_PUSH },
  /*  8*/ { SCM_VM_CONSTN_PUSH, EMIT, SCM_VM_CONSTN_PUSH },
  /*  9*/ { SCM_VM_CONSTF_PUSH, EMIT, SCM_VM_CONSTF_PUSH },
  /* 10*/ { SCM_VM_CONST_RET, EMIT, SCM_VM_CONST_RET },
  /* 11*/ { SCM_VM_CONSTF_RET, EMIT, SCM_VM_CONSTF_RET },
  /* 12*/ { SCM_VM_CONSTU_RET, EMIT, SCM_VM_CONSTU_RET },
  /* 13*/ { SCM_VM_PUSH, NEXT, 355 },
  /* 14*/ { SCM_VM_PRE_CALL, EMIT, SCM_VM_PRE_CALL },
  /* 15*/ { SCM_VM_PUSH_PRE_CALL, EMIT, SCM_VM_PUSH_PRE_CALL },
  /* 16*/ { SCM_VM_CHECK_STACK, EMIT, SCM_VM_CHECK_STACK },
  /* 17*/ { SCM_VM_CALL, EMIT, SCM_VM_CALL },
  /* 18*/ { SCM_VM_TAIL_CALL, EMIT, SCM_VM_TAIL_CALL },
  /* 19*/ { SCM_VM_JUMP, EMIT, SCM_VM_JUMP },
  /* 20*/ { SCM_VM_RET, EMIT, SCM_VM_RET },
  /* 21*/ { SCM_VM_DEFINE, EMIT, SCM_VM_DEFINE },
  /* 22*/ { SCM_VM_CLOSURE, EMIT, SCM_VM_CLOSURE },
  /* 23*/ { SCM_VM_LOCAL_ENV, EMIT, SCM_VM_LOCAL_ENV },
  /* 24*/ { SCM_VM_PUSH_LOCAL_ENV, EMIT, SCM_VM_PUSH_LOCAL_ENV },
  /* 25*/ { SCM_VM_LOCAL_ENV_CLOSURES, EMIT, SCM_VM_LOCAL_ENV_CLOSURES },
  /* 26*/ { SCM_VM_POP_LOCAL_ENV, EMIT, SCM_VM_POP_LOCAL_ENV },
  /* 27*/ { SCM_VM_LOCAL_ENV_JUMP, EMIT, SCM_VM_LOCAL_ENV_JUMP },
  /* 28*/ { SCM_VM_LOCAL_ENV_CALL, EMIT, SCM_VM_LOCAL_ENV_CALL },
  /* 29*/ { SCM_VM_LOCAL_ENV_TAIL_CALL, EMIT, SCM_VM_LOCAL_ENV_TAIL_CALL },
  /* 30*/ { SCM_VM_BF, EMIT, SCM_VM_BF },
  /* 31*/ { SCM_VM_BT, EMIT, SCM_VM_BT },
  /* 32*/ { SCM_VM_BNEQ, EMIT, SCM_VM_BNEQ },
  /* 33*/ { SCM_VM_BNEQV, EMIT, SCM_VM_BNEQV },
  /* 34*/ { SCM_VM_BNNULL, EMIT, SCM_VM_BNNULL },
  /* 35*/ { SCM_VM_BNUMNE, EMIT, SCM_VM_BNUMNE },
  /* 36*/ { SCM_VM_BNLT, EMIT, SCM_VM_BNLT },
  /* 37*/ { SCM_VM_BNLE, EMIT, SCM_VM_BNLE },
  /* 38*/ { SCM_VM_BNGT, EMIT, SCM_VM_BNGT },
  /* 39*/ { SCM_VM_BNGE, EMIT, SCM_VM_BNGE },
  /* 40*/ { SCM_VM_LREF_VAL0_BNUMNE, EMIT, SCM_VM_LREF_VAL0_BNUMNE },
  /* 41*/ { SCM_VM_LREF_VAL0_BNLT, EMIT, SCM_VM_LREF_VAL0_BNLT },
  /* 42*/ { SCM_VM_LREF_VAL0_BNLE, EMIT, SCM_VM_LREF_VAL0_BNLE },
  /* 43*/ { SCM_VM_LREF_VAL0_BNGT, EMIT, SCM_VM_LREF_VAL0_BNGT },
  /* 44*/ { SCM_VM_LREF_VAL0_BNGE, EMIT, SCM_VM_LREF_VAL0_BNGE },
  /* 45*/ { SCM_VM_BNUMNEI, EMIT, SCM_VM_BNUMNEI },
  /* 46*/ { SCM_VM_BNEQC, EMIT, SCM_VM_BNEQC },
  /* 47*/ { SCM_VM_BNEQVC, EMIT, SCM_VM_BNEQVC },
  /* 48*/ { SCM_VM_RF, EMIT, SCM_VM_RF },
  /* 49*/ { SCM_VM_RT, EMIT, SCM_VM_RT },
  /* 50*/ { SCM_VM_RNEQ, EMIT, SCM_VM_RNEQ },
  /* 51*/ { SCM_VM_RNEQV, EMIT, SCM_VM_RNEQV },
  /* 52*/ { SCM_VM_RNNULL, EMIT, SCM_VM_RNNULL },
  /* 53*/ { SCM_VM_RECEIVE, EMIT, SCM_VM_RECEIVE },
  /* 54*/ { SCM_VM_TAIL_RECEIVE, EMIT, SCM_VM_TAIL_RECEIVE },
  /* 55*/ { SCM_VM_RECEIVE_ALL, EMIT, SCM_VM_RECEIVE_ALL },
  /* 56*/ { SCM_VM_TAIL_RECEIVE_ALL, EMIT, SCM_VM_TAIL_RECEIVE_ALL },
  /* 57*/ { SCM_VM_VALUES_N, EMIT, SCM_VM_VALUES_N },
  /* 58*/ { SCM_VM_LSET, EMIT, SCM_VM_LSET },
  /* 59*/ { SCM_VM_GSET, EMIT, SCM_VM_GSET },
  /* 60*/ { SCM_VM_LREF, NEXT, 351 },
  /* 61*/ { SCM_VM_LREF0, NEXT, 342 },
  /* 62*/ { SCM_VM_LREF1, NEXT, 333 },
  /* 63*/ { SCM_VM_LREF2, NEXT, 324 },
  /* 64*/ { SCM_VM_LREF3, NEXT, 315 },
  /* 65*/ { SCM_VM_LREF10, NEXT, 306 },
  /* 66*/ { SCM_VM_LREF11, NEXT, 297 },
  /* 67*/ { SCM_VM_LREF12, NEXT, 288 },
  /* 68*/ { SCM_VM_LREF20, NEXT, 279 },
  /* 69*/ { SCM_VM_LREF21, NEXT, 270 },
  /* 70*/ { SCM_VM_LREF30, NEXT, 261 },
  /* 71*/ { SCM_VM_LREF_PUSH, EMIT, SCM_VM_LREF_PUSH },
  /* 72*/ { SCM_VM_LREF0_PUSH, EMIT, SCM_VM_LREF0_PUSH },
  /* 73*/ { SCM_VM_LREF1_PUSH, EMIT, SCM_VM_LREF1_PUSH },
  /* 74*/ { SCM_VM_LREF2_PUSH, EMIT, SCM_VM_LREF2_PUSH },
  /* 75*/ { SCM_VM_LREF3_PUSH, EMIT, SCM_VM_LREF3_PUSH },
  /* 76*/ { SCM_VM_LREF10_PUSH, EMIT, SCM_VM_LREF10_PUSH },
  /* 77*/ { SCM_VM_LREF11_PUSH, EMIT, SCM_VM_LREF11_PUSH },
  /* 78*/ { SCM_VM_LREF12_PUSH, EMIT, SCM_VM_LREF12_PUSH },
  /* 79*/ { SCM_VM_LREF20_PUSH, EMIT, SCM_VM_LREF20_PUSH },
  /* 80*/ { SCM_VM_LREF21_PUSH, EMIT, SCM_VM_LREF21_PUSH },
  /* 81*/ { SCM_VM_LREF30_PUSH, EMIT, SCM_VM_LREF30_PUSH },
  /* 82*/ { SCM_VM_LREF_RET, EMIT, SCM_VM_LREF_RET },
  /* 83*/ { SCM_VM_LREF0_RET, EMIT, SCM_VM_LREF0_RET },
  /* 84*/ { SCM_VM_LREF1_RET, EMIT, SCM_VM_LREF1_RET },
  /* 85*/ { SCM_VM_LREF2_RET, EMIT, SCM_VM_LREF2_RET },
  /* 86*/ { SCM_VM_LREF3_RET, EMIT, SCM_VM_LREF3_RET },
  /* 87*/ { SCM_VM_LREF10_RET, EMIT, SCM_VM_LREF10_RET },
  /* 88*/ { SCM_VM_LREF11_RET, EMIT, SCM_VM_LREF11_RET },
  /* 89*/ { SCM_VM_LREF12_RET, EMIT, SCM_VM_LREF12_RET },
  /* 90*/ { SCM_VM_LREF20_RET, EMIT, SCM_VM_LREF20_RET },
  /* 91*/ { SCM_VM_LREF21_RET, EMIT, SCM_VM_LREF21_RET },
  /* 92*/ { SCM_VM_LREF30_RET, EMIT, SCM_VM_LREF30_RET },
  /* 93*/ { SCM_VM_GREF, NEXT, 257 },
  /* 94*/ { SCM_VM_GREF_PUSH, EMIT, SCM_VM_GREF_PUSH },
  /* 95*/ { SCM_VM_GREF_CALL, EMIT, SCM_VM_GREF_CALL },
  /* 96*/ { SCM_VM_GREF_TAIL_CALL, EMIT, SCM_VM_GREF_TAIL_CALL },
  /* 97*/ { SCM_VM_PUSH_GREF, EMIT, SCM_VM_PUSH_GREF },
  /* 98*/ { SCM_VM_PUSH_GREF_CALL, EMIT, SCM_VM_PUSH_GREF_CALL },
  /* 99*/ { SCM_VM_PUSH_GREF_TAIL_CALL, EMIT, SCM_VM_PUSH_GREF_TAIL_CALL },
  /*100*/ { SCM_VM_PROMISE, EMIT, SCM_VM_PROMISE },
  /*101*/ { SCM_VM_VALUES_APPLY, EMIT, SCM_VM_VALUES_APPLY },
  /*102*/ { SCM_VM_CONS, NEXT, 255 },
  /*103*/ { SCM_VM_CONS_PUSH, EMIT, SCM_VM_CONS_PUSH },
  /*104*/ { SCM_VM_CAR, NEXT, 253 },
  /*105*/ { SCM_VM_CAR_PUSH, EMIT, SCM_VM_CAR_PUSH },
  /*106*/ { SCM_VM_LREF0_CAR, EMIT, SCM_VM_LREF0_CAR },
  /*107*/ { SCM_VM_LREF1_CAR, EMIT, SCM_VM_LREF1_CAR },
  /*108*/ { SCM_VM_LREF2_CAR, EMIT, SCM_VM_LREF2_CAR },
  /*109*/ { SCM_VM_LREF3_CAR, EMIT, SCM_VM_LREF3_CAR },
  /*110*/ { SCM_VM_LREF10_CAR, EMIT, SCM_VM_LREF10_CAR },
  /*111*/ { SCM_VM_LREF11_CAR, EMIT, SCM_VM_LREF11_CAR },
  /*112*/ { SCM_VM_LREF12_CAR, EMIT, SCM_VM_LREF12_CAR },
  /*113*/ { SCM_VM_LREF20_CAR, EMIT, SCM_VM_LREF20_CAR },
  /*114*/ { SCM_VM_LREF21_CAR, EMIT, SCM_VM_LREF21_CAR },
  /*115*/ { SCM_VM_LREF30_CAR, EMIT, SCM_VM_LREF30_CAR },
  /*116*/ { SCM_VM_CDR, NEXT, 251 },
  /*117*/ { SCM_VM_CDR_PUSH, EMIT, SCM_VM_CDR_PUSH },
  /*118*/ { SCM_VM_LREF0_CDR, EMIT, SCM_VM_LREF0_CDR },
  /*119*/ { SCM_VM_LREF1_CDR, EMIT, SCM_VM_LREF1_CDR },
  /*120*/ { SCM_VM_LREF2_CDR, EMIT, SCM_VM_LREF2_CDR },
  /*121*/ { SCM_VM_LREF3_CDR, EMIT, SCM_VM_LREF3_CDR },
  /*122*/ { SCM_VM_LREF10_CDR, EMIT, SCM_VM_LREF10_CDR },
  /*123*/ { SCM_VM_LREF11_CDR, EMIT, SCM_VM_LREF11_CDR },
  /*124*/ { SCM_VM_LREF12_CDR, EMIT, SCM_VM_LREF12_CDR },
  /*125*/ { SCM_VM_LREF20_CDR, EMIT, SCM_VM_LREF20_CDR },
  /*126*/ { SCM_VM_LREF21_CDR, EMIT, SCM_VM_LREF21_CDR },
  /*127*/ { SCM_VM_LREF30_CDR, EMIT, SCM_VM_LREF30_CDR },
  /*128*/ { SCM_VM_CAAR, NEXT, 249 },
  /*129*/ { SCM_VM_CAAR_PUSH, EMIT, SCM_VM_CAAR_PUSH },
  /*130*/ { SCM_VM_CADR, NEXT, 247 },
  /*131*/ { SCM_VM_CADR_PUSH, EMIT, SCM_VM_CADR_PUSH },
  /*132*/ { SCM_VM_CDAR, NEXT, 245 },
  /*133*/ { SCM_VM_CDAR_PUSH, EMIT, SCM_VM_CDAR_PUSH },
  /*134*/ { SCM_VM_CDDR, NEXT, 243 },
  /*135*/ { SCM_VM_CDDR_PUSH, EMIT, SCM_VM_CDDR_PUSH },
  /*136*/ { SCM_VM_LIST, EMIT, SCM_VM_LIST },
  /*137*/ { SCM_VM_LIST_STAR, EMIT, SCM_VM_LIST_STAR },
  /*138*/ { SCM_VM_LENGTH, EMIT, SCM_VM_LENGTH },
  /*139*/ { SCM_VM_MEMQ, EMIT, SCM_VM_MEMQ },
  /*140*/ { SCM_VM_MEMV, EMIT, SCM_VM_MEMV },
  /*141*/ { SCM_VM_ASSQ, EMIT, SCM_VM_ASSQ },
  /*142*/ { SCM_VM_ASSV, EMIT, SCM_VM_ASSV },
  /*143*/ { SCM_VM_EQ, EMIT, SCM_VM_EQ },
  /*144*/ { SCM_VM_EQV, EMIT, SCM_VM_EQV },
  /*145*/ { SCM_VM_APPEND, EMIT, SCM_VM_APPEND },
  /*146*/ { SCM_VM_NOT, EMIT, SCM_VM_NOT },
  /*147*/ { SCM_VM_REVERSE, EMIT, SCM_VM_REVERSE },
  /*148*/ { SCM_VM_APPLY, EMIT, SCM_VM_APPLY },
  /*149*/ { SCM_VM_TAIL_APPLY, EMIT, SCM_VM_TAIL_APPLY },
  /*150*/ { SCM_VM_IS_A, EMIT, SCM_VM_IS_A },
  /*151*/ { SCM_VM_NULLP, EMIT, SCM_VM_NULLP },
  /*152*/ { SCM_VM_PAIRP, EMIT, SCM_VM_PAIRP },
  /*153*/ { SCM_VM_CHARP, EMIT, SCM_VM_CHARP },
  /*154*/ { SCM_VM_EOFP, EMIT, SCM_VM_EOFP },
  /*155*/ { SCM_VM_STRINGP, EMIT, SCM_VM_STRINGP },
  /*156*/ { SCM_VM_SYMBOLP, EMIT, SCM_VM_SYMBOLP },
  /*157*/ { SCM_VM_VECTORP, EMIT, SCM_VM_VECTORP },
  /*158*/ { SCM_VM_NUMBERP, EMIT, SCM_VM_NUMBERP },
  /*159*/ { SCM_VM_REALP, EMIT, SCM_VM_REALP },
  /*160*/ { SCM_VM_IDENTIFIERP, EMIT, SCM_VM_IDENTIFIERP },
  /*161*/ { SCM_VM_SETTER, EMIT, SCM_VM_SETTER },
  /*162*/ { SCM_VM_VALUES, NEXT, 241 },
  /*163*/ { SCM_VM_VALUES_RET, EMIT, SCM_VM_VALUES_RET },
  /*164*/ { SCM_VM_VEC, EMIT, SCM_VM_VEC },
  /*165*/ { SCM_VM_LIST2VEC, EMIT, SCM_VM_LIST2VEC },
  /*166*/ { SCM_VM_APP_VEC, EMIT, SCM_VM_APP_VEC },
  /*167*/ { SCM_VM_VEC_LEN, EMIT, SCM_VM_VEC_LEN },
  /*168*/ { SCM_VM_VEC_REF, EMIT, SCM_VM_VEC_REF },
  /*169*/ { SCM_VM_VEC_SET, EMIT, SCM_VM_VEC_SET },
  /*170*/ { SCM_VM_VEC_REFI, EMIT, SCM_VM_VEC_REFI },
  /*171*/ { SCM_VM_VEC_SETI, EMIT, SCM_VM_VEC_SETI },
  /*172*/ { SCM_VM_UVEC_REF, EMIT, SCM_VM_UVEC_REF },
  /*173*/ { SCM_VM_NUMEQ2, EMIT, SCM_VM_NUMEQ2 },
  /*174*/ { SCM_VM_NUMLT2, EMIT, SCM_VM_NUMLT2 },
  /*175*/ { SCM_VM_NUMLE2, EMIT, SCM_VM_NUMLE2 },
  /*176*/ { SCM_VM_NUMGT2, EMIT, SCM_VM_NUMGT2 },
  /*177*/ { SCM_VM_NUMGE2, EMIT, SCM_VM_NUMGE2 },
  /*178*/ { SCM_VM_NUMADD2, EMIT, SCM_VM_NUMADD2 },
  /*179*/ { SCM_VM_NUMSUB2, EMIT, SCM_VM_NUMSUB2 },
  /*180*/ { SCM_VM_NUMMUL2, EMIT, SCM_VM_NUMMUL2 },
  /*181*/ { SCM_VM_NUMDIV2, EMIT, SCM_VM_NUMDIV2 },
  /*182*/ { SCM_VM_LREF_VAL0_NUMADD2, EMIT, SCM_VM_LREF_VAL0_NUMADD2 },
  /*183*/ { SCM_VM_NEGATE, EMIT, SCM_VM_NEGATE },
  /*184*/ { SCM_VM_NUMIADD2, EMIT, SCM_VM_NUMIADD2 },
  /*185*/ { SCM_VM_NUMISUB2, EMIT, SCM_VM_NUMISUB2 },
  /*186*/ { SCM_VM_NUMIMUL2, EMIT, SCM_VM_NUMIMUL2 },
  /*187*/ { SCM_VM_NUMIDIV2, EMIT, SCM_VM_NUMIDIV2 },
  /*188*/ { SCM_VM_NUMADDI, EMIT, SCM_VM_NUMADDI },
  /*189*/ { SCM_VM_LREF0_NUMADDI, EMIT, SCM_VM_LREF0_NUMADDI },
  /*190*/ { SCM_VM_LREF1_NUMADDI, EMIT, SCM_VM_LREF1_NUMADDI },
  /*191*/ { SCM_VM_LREF2_NUMADDI, EMIT, SCM_VM_LREF2_NUMADDI },
  /*192*/ { SCM_VM_LREF3_NUMADDI, EMIT, SCM_VM_LREF3_NUMADDI },
  /*193*/ { SCM_VM_LREF10_NUMADDI, EMIT, SCM_VM_LREF10_NUMADDI },
  /*194*/ { SCM_VM_LREF11_NUMADDI, EMIT, SCM_VM_LREF11_NUMADDI },
  /*195*/ { SCM_VM_LREF12_NUMADDI, EMIT, SCM_VM_LREF12_NUMADDI },
  /*196*/ { SCM_VM_LREF20_NUMADDI, EMIT, SCM_VM_LREF20_NUMADDI },
  /*197*/ { SCM_VM_LREF21_NUMADDI, EMIT, SCM_VM_LREF21_NUMADDI },
  /*198*/ { SCM_VM_LREF30_NUMADDI, EMIT, SCM_VM_LREF30_NUMADDI },
  /*199*/ { SCM_VM_LREF0_NUMADDI_PUSH, EMIT, SCM_VM_LREF0_NUMADDI_PUSH },
  /*200*/ { SCM_VM_LREF1_NUMADDI_PUSH, EMIT, SCM_VM_LREF1_NUMADDI_PUSH },
  /*201*/ { SCM_VM_LREF2_NUMADDI_PUSH, EMIT, SCM_VM_LREF2_NUMADDI_PUSH },
  /*202*/ { SCM_VM_LREF3_NUMADDI_PUSH, EMIT, SCM_VM_LREF3_NUMADDI_PUSH },
  /*203*/ { SCM_VM_LREF10_NUMADDI_PUSH, EMIT, SCM_VM_LREF10_NUMADDI_PUSH },
  /*204*/ { SCM_VM_LREF11_NUMADDI_PUSH, EMIT, SCM_VM_LREF11_NUMADDI_PUSH },
  /*205*/ { SCM_VM_LREF12_NUMADDI_PUSH, EMIT, SCM_VM_LREF12_NUMADDI_PUSH },
  /*206*/ { SCM_VM_LREF20_NUMADDI_PUSH, EMIT, SCM_VM_LREF20_NUMADDI_PUSH },
  /*207*/ { SCM_VM_LREF21_NUMADDI_PUSH, EMIT, SCM_VM_LREF21_NUMADDI_PUSH },
  /*208*/ { SCM_VM_LREF30_NUMADDI_PUSH, EMIT, SCM_VM_LREF30_NUMADDI_PUSH },
  /*209*/ { SCM_VM_NUMSUBI, EMIT, SCM_VM_NUMSUBI },
  /*210*/ { SCM_VM_NUMMODI, EMIT, SCM_VM_NUMMODI },
  /*211*/ { SCM_VM_NUMREMI, EMIT, SCM_VM_NUMREMI },
  /*212*/ { SCM_VM_ASHI, EMIT, SCM_VM_ASHI },
  /*213*/ { SCM_VM_LOGAND, EMIT, SCM_VM_LOGAND },
  /*214*/ { SCM_VM_LOGIOR, EMIT, SCM_VM_LOGIOR },
  /*215*/ { SCM_VM_LOGXOR, EMIT, SCM_VM_LOGXOR },
  /*216*/ { SCM_VM_LOGANDC, EMIT, SCM_VM_LOGANDC },
  /*217*/ { SCM_VM_LOGIORC, EMIT, SCM_VM_LOGIORC },
  /*218*/ { SCM_VM_LOGXORC, EMIT, SCM_VM_LOGXORC },
  /*219*/ { SCM_VM_READ_CHAR, EMIT, SCM_VM_READ_CHAR },
  /*220*/ { SCM_VM_PEEK_CHAR, EMIT, SCM_VM_PEEK_CHAR },
  /*221*/ { SCM_VM_WRITE_CHAR, EMIT, SCM_VM_WRITE_CHAR },
  /*222*/ { SCM_VM_CURIN, EMIT, SCM_VM_CURIN },
  /*223*/ { SCM_VM_CUROUT, EMIT, SCM_VM_CUROUT },
  /*224*/ { SCM_VM_CURERR, EMIT, SCM_VM_CURERR },
  /*225*/ { SCM_VM_SLOT_REF, EMIT, SCM_VM_SLOT_REF },
  /*226*/ { SCM_VM_SLOT_SET, EMIT, SCM_VM_SLOT_SET },
  /*227*/ { SCM_VM_SLOT_REFC, EMIT, SCM_VM_SLOT_REFC },
  /*228*/ { SCM_VM_SLOT_SETC, EMIT, SCM_VM_SLOT_SETC },
  /*229*/ { SCM_VM_PUSH_HANDLERS, EMIT, SCM_VM_PUSH_HANDLERS },
  /*230*/ { SCM_VM_POP_HANDLERS, EMIT, SCM_VM_POP_HANDLERS },
  /*231*/ { SCM_VM_BOX, EMIT, SCM_VM_BOX },
  /*232*/ { SCM_VM_ENV_SET, EMIT, SCM_VM_ENV_SET },
  /*233*/ { SCM_VM_UNBOX, EMIT, SCM_VM_UNBOX },
  /*234*/ { SCM_VM_LREF_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*235*/ { SCM_VM_LOCAL_ENV_SHIFT, EMIT, SCM_VM_LOCAL_ENV_SHIFT },
  /*236*/ { SCM_VM_XLREF, EMIT, SCM_VM_XLREF },
  /*237*/ { SCM_VM_XLSET, EMIT, SCM_VM_XLSET },
  /*238*/ { SCM_VM_EXTEND_DENV, EMIT, SCM_VM_EXTEND_DENV },
  /*239*/ { SCM_VM_TAIL_EXTEND_DENV, EMIT, SCM_VM_TAIL_EXTEND_DENV },
  /*240*/ { SCM_VM_XINSN, EMIT, SCM_VM_XINSN },
/* State #27 (VALUES) [241] */
  /*241*/ { SCM_VM_RET, EMIT, SCM_VM_VALUES_RET },
  /*242*/ { -1, KEEP, SCM_VM_VALUES },
/* State #26 (CDDR) [243] */
  /*243*/ { SCM_VM_PUSH, EMIT, SCM_VM_CDDR_PUSH },
  /*244*/ { -1, KEEP, SCM_VM_CDDR },
/* State #25 (CDAR) [245] */
  /*245*/ { SCM_VM_PUSH, EMIT, SCM_VM_CDAR_PUSH },
  /*246*/ { -1, KEEP, SCM_VM_CDAR },
/* State #24 (CADR) [247] */
  /*247*/ { SCM_VM_PUSH, EMIT, SCM_VM_CADR_PUSH },
  /*248*/ { -1, KEEP, SCM_VM_CADR },
/* State #23 (CAAR) [249] */
  /*249*/ { SCM_VM_PUSH, EMIT, SCM_VM_CAAR_PUSH },
  /*250*/ { -1, KEEP, SCM_VM_CAAR },
/* State #22 (CDR) [251] */
  /*251*/ { SCM_VM_PUSH, EMIT, SCM_VM_CDR_PUSH },
  /*252*/ { -1, KEEP, SCM_VM_CDR },
/* State #21 (CAR) [253] */
  /*253*/ { SCM_VM_PUSH, EMIT, SCM_VM_CAR_PUSH },
  /*254*/ { -1, KEEP, SCM_VM_CAR },
/* State #20 (CONS) [255] */
  /*255*/ { SCM_VM_PUSH, EMIT, SCM_VM_CONS_PUSH },
  /*256*/ { -1, KEEP, SCM_VM_CONS },
/* State #18 (GREF) [257] */
  /*257*/ { SCM_VM_PUSH, EMIT, SCM_VM_GREF_PUSH },
  /*258*/ { SCM_VM_CALL, EMIT, SCM_VM_GREF_CALL },
  /*259*/ { SCM_VM_TAIL_CALL, EMIT, SCM_VM_GREF_TAIL_CALL },
  /*260*/ { -1, KEEP, SCM_VM_GREF },
/* State #17 (LREF30) [261] */
  /*261*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF30_PUSH },
  /*262*/ { SCM_VM_RET, EMIT, SCM_VM_LREF30_RET },
  /*263*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF30_CAR },
  /*264*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF30_CDR },
  /*265*/ { SCM_VM_NUMADDI, NEXT, 268 },
  /*266*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*267*/ { -1, KEEP, SCM_VM_LREF30 },
/* State #37 (LREF30 NUMADDI) [268] */
  /*268*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF30_NUMADDI_PUSH },
  /*269*/ { -1, KEEP, SCM_VM_LREF30_NUMADDI },
/* State #16 (LREF21) [270] */
  /*270*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF21_PUSH },
  /*271*/ { SCM_VM_RET, EMIT, SCM_VM_LREF21_RET },
  /*272*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF21_CAR },
  /*273*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF21_CDR },
  /*274*/ { SCM_VM_NUMADDI, NEXT, 277 },
  /*275*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*276*/ { -1, KEEP, SCM_VM_LREF21 },
/* State #36 (LREF21 NUMADDI) [277] */
  /*277*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF21_NUMADDI_PUSH },
  /*278*/ { -1, KEEP, SCM_VM_LREF21_NUMADDI },
/* State #15 (LREF20) [279] */
  /*279*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF20_PUSH },
  /*280*/ { SCM_VM_RET, EMIT, SCM_VM_LREF20_RET },
  /*281*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF20_CAR },
  /*282*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF20_CDR },
  /*283*/ { SCM_VM_NUMADDI, NEXT, 286 },
  /*284*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*285*/ { -1, KEEP, SCM_VM_LREF20 },
/* State #35 (LREF20 NUMADDI) [286] */
  /*286*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF20_NUMADDI_PUSH },
  /*287*/ { -1, KEEP, SCM_VM_LREF20_NUMADDI },
/* State #14 (LREF12) [288] */
  /*288*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF12_PUSH },
  /*289*/ { SCM_VM_RET, EMIT, SCM_VM_LREF12_RET },
  /*290*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF12_CAR },
  /*291*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF12_CDR },
  /*292*/ { SCM_VM_NUMADDI, NEXT, 295 },
  /*293*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*294*/ { -1, KEEP, SCM_VM_LREF12 },
/* State #34 (LREF12 NUMADDI) [295] */
  /*295*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF12_NUMADDI_PUSH },
  /*296*/ { -1, KEEP, SCM_VM_LREF12_NUMADDI },
/* State #13 (LREF11) [297] */
  /*297*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF11_PUSH },
  /*298*/ { SCM_VM_RET, EMIT, SCM_VM_LREF11_RET },
  /*299*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF11_CAR },
  /*300*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF11_CDR },
  /*301*/ { SCM_VM_NUMADDI, NEXT, 304 },
  /*302*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*303*/ { -1, KEEP, SCM_VM_LREF11 },
/* State #33 (LREF11 NUMADDI) [304] */
  /*304*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF11_NUMADDI_PUSH },
  /*305*/ { -1, KEEP, SCM_VM_LREF11_NUMADDI },
/* State #12 (LREF10) [306] */
  /*306*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF10_PUSH },
  /*307*/ { SCM_VM_RET, EMIT, SCM_VM_LREF10_RET },
  /*308*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF10_CAR },
  /*309*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF10_CDR },
  /*310*/ { SCM_VM_NUMADDI, NEXT, 313 },
  /*311*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*312*/ { -1, KEEP, SCM_VM_LREF10 },
/* State #32 (LREF10 NUMADDI) [313] */
  /*313*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF10_NUMADDI_PUSH },
  /*314*/ { -1, KEEP, SCM_VM_LREF10_NUMADDI },
/* State #11 (LREF3) [315] */
  /*315*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF3_PUSH },
  /*316*/ { SCM_VM_RET, EMIT, SCM_VM_LREF3_RET },
  /*317*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF3_CAR },
  /*318*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF3_CDR },
  /*319*/ { SCM_VM_NUMADDI, NEXT, 322 },
  /*320*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*321*/ { -1, KEEP, SCM_VM_LREF3 },
/* State #31 (LREF3 NUMADDI) [322] */
  /*322*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF3_NUMADDI_PUSH },
  /*323*/ { -1, KEEP, SCM_VM_LREF3_NUMADDI },
/* State #10 (LREF2) [324] */
  /*324*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF2_PUSH },
  /*325*/ { SCM_VM_RET, EMIT, SCM_VM_LREF2_RET },
  /*326*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF2_CAR },
  /*327*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF2_CDR },
  /*328*/ { SCM_VM_NUMADDI, NEXT, 331 },
  /*329*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*330*/ { -1, KEEP, SCM_VM_LREF2 },
/* State #30 (LREF2 NUMADDI) [331] */
  /*331*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF2_NUMADDI_PUSH },
  /*332*/ { -1, KEEP, SCM_VM_LREF2_NUMADDI },
/* State #9 (LREF1) [333] */
  /*333*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF1_PUSH },
  /*334*/ { SCM_VM_RET, EMIT, SCM_VM_LREF1_RET },
  /*335*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF1_CAR },
  /*336*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF1_CDR },
  /*337*/ { SCM_VM_NUMADDI, NEXT, 340 },
  /*338*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*339*/ { -1, KEEP, SCM_VM_LREF1 },
/* State #29 (LREF1 NUMADDI) [340] */
  /*340*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF1_NUMADDI_PUSH },
  /*341*/ { -1, KEEP, SCM_VM_LREF1_NUMADDI },
/* State #8 (LREF0) [342] */
  /*342*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF0_PUSH },
  /*343*/ { SCM_VM_RET, EMIT, SCM_VM_LREF0_RET },
  /*344*/ { SCM_VM_CAR, EMIT, SCM_VM_LREF0_CAR },
  /*345*/ { SCM_VM_CDR, EMIT, SCM_VM_LREF0_CDR },
  /*346*/ { SCM_VM_NUMADDI, NEXT, 349 },
  /*347*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*348*/ { -1, KEEP, SCM_VM_LREF0 },
/* State #28 (LREF0 NUMADDI) [349] */
  /*349*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF0_NUMADDI_PUSH },
  /*350*/ { -1, KEEP, SCM_VM_LREF0_NUMADDI },
/* State #7 (LREF) [351] */
  /*351*/ { SCM_VM_PUSH, EMIT, SCM_VM_LREF_PUSH },
  /*352*/ { SCM_VM_RET, EMIT, SCM_VM_LREF_RET },
  /*353*/ { SCM_VM_UNBOX, EMIT, SCM_VM_LREF_UNBOX },
  /*354*/ { -1, KEEP, SCM_VM_LREF },
/* State #6 (PUSH) [355] */
  /*355*/ { SCM_VM_PRE_CALL, EMIT, SCM_VM_PUSH_PRE_CALL },
  /*356*/ { SCM_VM_LOCAL_ENV, EMIT, SCM_VM_PUSH_LOCAL_ENV },
  /*357*/ { SCM_VM_GREF, NEXT, 359 },
  /*358*/ { -1, KEEP, SCM_VM_PUSH },
/* State #19 (PUSH GREF) [359] */
  /*359*/ { SCM_VM_CALL, EMIT, SCM_VM_PUSH_GREF_CALL },
  /*360*/ { SCM_VM_TAIL_CALL, EMIT, SCM_VM_PUSH_GREF_TAIL_CALL },
  /*361*/ { -1, KEEP, SCM_VM_PUSH_GREF },
/* State #5 (CONSTU) [362] */
  /*362*/ { SCM_VM_RET, EMIT, SCM_VM_CONSTU_RET },
  /*363*/ { -1, KEEP, SCM_VM_CONSTU },
/* State #4 (CONSTF) [364] */
  /*364*/ { SCM_VM_PUSH, EMIT, SCM_VM_CONSTF_PUSH },
  /*365*/ { SCM_VM_RET, EMIT, SCM_VM_CONSTF_RET },
  /*366*/ { -1, KEEP, SCM_VM_CONSTF },
/* State #3 (CONSTN) [367] */
  /*367*/ { SCM_VM_PUSH, EMIT, SCM_VM_CONSTN_PUSH },
  /*368*/ { -1, KEEP, SCM_VM_CONSTN },
/* State #2 (CONSTI) [369] */
  /*369*/ { SCM_VM_PUSH, EMIT, SCM_VM_CONSTI_PUSH },
  /*370*/ { -1, KEEP, SCM_VM_CONSTI },
/* State #1 (CONST) [371] */
  /*371*/ { SCM_VM_PUSH, EMIT, SCM_VM_CONST_PUSH },
  /*372*/ { SCM_VM_RET, EMIT, SCM_VM_CONST_RET },
  /*373*/ { -1, KEEP, SCM_VM_CONST },
#endif /*STATE_TABLE*/
#ifdef VMLOOP

label_NOP:
CASE(SCM_VM_NOP) 
{NEXT;}

label_CONST:
CASE(SCM_VM_CONST) 
{
#line 395 "./vminsn.scm"
{ScmObj val;
FETCH_OPERAND(val);INCR_PC;
#line 398 "./vminsn.scm"
{VAL0=(val);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CONSTI:
CASE(SCM_VM_CONSTI) 
{
#line 401 "./vminsn.scm"
{long cise__1397=SCM_VM_INSN_ARG(code);{VAL0=(SCM_MAKE_INT(cise__1397));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CONSTN:
CASE(SCM_VM_CONSTN) 
{
#line 402 "./vminsn.scm"
{VAL0=(SCM_NIL);(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_CONSTF:
CASE(SCM_VM_CONSTF) 
{
#line 403 "./vminsn.scm"
{VAL0=(SCM_FALSE);(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_CONSTU:
CASE(SCM_VM_CONSTU) 
{
#line 404 "./vminsn.scm"
{VAL0=(SCM_UNDEFINED);(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_CONST_PUSH:
CASE(SCM_VM_CONST_PUSH) 
{
#line 395 "./vminsn.scm"
{ScmObj val;
FETCH_OPERAND(val);INCR_PC;
#line 398 "./vminsn.scm"
{PUSH_ARG(val);NEXT;}}}

label_CONSTI_PUSH:
CASE(SCM_VM_CONSTI_PUSH) 
{
#line 401 "./vminsn.scm"
{long cise__1398=SCM_VM_INSN_ARG(code);{PUSH_ARG(SCM_MAKE_INT(cise__1398));NEXT;}}}

label_CONSTN_PUSH:
CASE(SCM_VM_CONSTN_PUSH) 
{
#line 402 "./vminsn.scm"
{PUSH_ARG(SCM_NIL);NEXT;}}

label_CONSTF_PUSH:
CASE(SCM_VM_CONSTF_PUSH) 
{
#line 403 "./vminsn.scm"
{PUSH_ARG(SCM_FALSE);NEXT;}}

label_CONST_RET:
CASE(SCM_VM_CONST_RET) 
{
#line 395 "./vminsn.scm"
{ScmObj val;
FETCH_OPERAND(val);INCR_PC;
#line 398 "./vminsn.scm"
{VAL0=(val);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_CONSTF_RET:
CASE(SCM_VM_CONSTF_RET) 
{
#line 403 "./vminsn.scm"
{VAL0=(SCM_FALSE);(vm)->numVals=(1);RETURN_OP();NEXT;}}

label_CONSTU_RET:
CASE(SCM_VM_CONSTU_RET) 
{
#line 404 "./vminsn.scm"
{VAL0=(SCM_UNDEFINED);(vm)->numVals=(1);RETURN_OP();NEXT;}}

label_PUSH:
CASE(SCM_VM_PUSH) 
{
#line 420 "./vminsn.scm"
{CHECK_STACK_PARANOIA(1);PUSH_ARG(VAL0);NEXT;}}

label_PRE_CALL:
CASE(SCM_VM_PRE_CALL) 
{
#line 427 "./vminsn.scm"
{ScmWord* next;
CHECK_STACK_PARANOIA(CONT_FRAME_SIZE);
FETCH_LOCATION(next);
PUSH_CONT(next);INCR_PC;CHECK_INTR;NEXT;}}

label_PUSH_PRE_CALL:
CASE(SCM_VM_PUSH_PRE_CALL) 
{PUSH_ARG(VAL0);}
{goto label_PRE_CALL;}

label_CHECK_STACK:
CASE(SCM_VM_CHECK_STACK) 
{
#line 442 "./vminsn.scm"
{int reqstack=SCM_VM_INSN_ARG(code);
CHECK_STACK(reqstack);NEXT;}}

label_CALL:
CASE(SCM_VM_CALL) 
{
#line 451 "./vminsn.scm"
{ScmObj nm;int argc;int proctype;
call_entry :; 

#undef APPLY_CALL

#line 454 "./vminsn.scm"

#include "./vmcall.c"

#line 455 "./vminsn.scm"
tail_apply_entry :; 

#define APPLY_CALL

#line 457 "./vminsn.scm"

#include "./vmcall.c"
}}

label_TAIL_CALL:
CASE(SCM_VM_TAIL_CALL) 
{
#line 465 "./vminsn.scm"
{
{ScmCallTrace* ct=(vm)->callTrace;
if ((ct)!=(NULL)){{
(((ct)->entries)[(ct)->top]).base=(BASE);
(((ct)->entries)[(ct)->top]).pc=(PC);
(ct)->top=((((ct)->top)+(1))&(
((ct)->size)-(1)));}}}
DISCARD_ENV();
goto label_CALL;}}

label_JUMP:
CASE(SCM_VM_JUMP) 
{
#line 480 "./vminsn.scm"
{FETCH_LOCATION(PC);CHECK_INTR;NEXT;}}

label_RET:
CASE(SCM_VM_RET) 
{
#line 487 "./vminsn.scm"
{RETURN_OP();CHECK_INTR;NEXT;}}

label_DEFINE:
CASE(SCM_VM_DEFINE) 
{
#line 499 "./vminsn.scm"
{ScmObj var;ScmObj val=VAL0;
FETCH_OPERAND(var);
VM_ASSERT(SCM_IDENTIFIERP(var));
SCM_FLONUM_ENSURE_MEM(val);INCR_PC;
#line 504 "./vminsn.scm"
{ScmIdentifier* id=Scm_OutermostIdentifier(SCM_IDENTIFIER(var));ScmModule* mod=
(id)->module;ScmSymbol* name=
SCM_SYMBOL((id)->name);
switch (SCM_VM_INSN_ARG(code)) {
case 0 : {Scm_MakeBinding(mod,name,val,0);
#line 860 "../lib/gauche/cgen/cise.scm"
break;}
#line 509 "./vminsn.scm"
case 1 : case SCM_BINDING_CONST : {Scm_MakeBinding(mod,name,val,SCM_BINDING_CONST);
#line 860 "../lib/gauche/cgen/cise.scm"
break;}
#line 510 "./vminsn.scm"
case SCM_BINDING_INLINABLE : {Scm_MakeBinding(mod,name,val,SCM_BINDING_INLINABLE);
#line 860 "../lib/gauche/cgen/cise.scm"
break;}}
#line 511 "./vminsn.scm"
{VAL0=(SCM_OBJ(name));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_CLOSURE:
CASE(SCM_VM_CLOSURE) 
{
#line 518 "./vminsn.scm"
{ScmObj body;
FETCH_OPERAND(body);INCR_PC;
#line 521 "./vminsn.scm"
{VAL0=(Scm_MakeClosure(body,get_env(vm)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LOCAL_ENV:
CASE(SCM_VM_LOCAL_ENV) 
{
#line 527 "./vminsn.scm"
{CHECK_STACK_PARANOIA(ENV_SIZE(0));
FINISH_ENV(SCM_FALSE,ENV);NEXT;}}

label_PUSH_LOCAL_ENV:
CASE(SCM_VM_PUSH_LOCAL_ENV) 
{
#line 533 "./vminsn.scm"
{CHECK_STACK_PARANOIA(ENV_SIZE(1));
PUSH_ARG(VAL0);
FINISH_ENV(SCM_FALSE,ENV);NEXT;}}

label_LOCAL_ENV_CLOSURES:
CASE(SCM_VM_LOCAL_ENV_CLOSURES) 
{ScmObj cise__1400;
#line 551 "./vminsn.scm"
{int nlocals=SCM_VM_INSN_ARG(code);ScmObj* z;ScmObj cp;ScmObj clo=SCM_UNDEFINED;ScmEnvFrame* e;
#line 553 "./vminsn.scm"
FETCH_OPERAND(cp);INCR_PC;
#line 555 "./vminsn.scm"
CHECK_STACK_PARANOIA(ENV_SIZE(nlocals));
{int i=0;int cise__1399=nlocals;for (; (i)<(cise__1399); (i)++){*((SP)++)=(SCM_UNDEFINED);}}
FINISH_ENV(SCM_FALSE,ENV);
e=(get_env(vm));
z=((((ScmObj* )(e)))-(nlocals));
SCM_FOR_EACH(cise__1400,cp) {{ScmObj c=SCM_CAR(cise__1400);
if (SCM_COMPILED_CODE_P(c)){
*((z)++)=(clo=(Scm_MakeClosure(c,e)));}else if(
SCM_PROCEDUREP(c)){*((z)++)=(c);clo=(c);} else {
*((z)++)=(c);}}}
{VAL0=(clo);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_POP_LOCAL_ENV:
CASE(SCM_VM_POP_LOCAL_ENV) 
{
#line 573 "./vminsn.scm"
{ENV=((ENV)->up);NEXT;}}

label_LOCAL_ENV_JUMP:
CASE(SCM_VM_LOCAL_ENV_JUMP) 
{
#line 579 "./vminsn.scm"
{
local_env_shift(vm,SCM_VM_INSN_ARG(code));
FETCH_LOCATION(PC);CHECK_INTR;NEXT;}}

label_LOCAL_ENV_CALL:
CASE(SCM_VM_LOCAL_ENV_CALL) 
{
#line 598 "./vminsn.scm"
{int nargs=((int )((SP)-(ARGP)));
VM_ASSERT(SCM_CLOSUREP(VAL0));
if ((nargs)>(0)){
CHECK_STACK_PARANOIA(ENV_SIZE(0));
FINISH_ENV(SCM_FALSE,(SCM_CLOSURE(VAL0))->env);} else {
#line 604 "./vminsn.scm"
ENV=((SCM_CLOSURE(VAL0))->env);
ARGP=(SP);}
(vm)->base=(SCM_COMPILED_CODE((SCM_CLOSURE(VAL0))->code));
PC=((vm)->base->code);
CHECK_STACK((vm)->base->maxstack);CHECK_INTR;
#line 610 "./vminsn.scm"
SCM_PROF_COUNT_CALL(vm,SCM_OBJ((vm)->base));NEXT;}}

label_LOCAL_ENV_TAIL_CALL:
CASE(SCM_VM_LOCAL_ENV_TAIL_CALL) 
{
#line 615 "./vminsn.scm"
{int nargs=((int )((SP)-(ARGP)));ScmObj* to;
VM_ASSERT(SCM_CLOSUREP(VAL0));
if (IN_STACK_P(((ScmObj* )(CONT)))){
to=(CONT_FRAME_END(CONT));} else {
to=((vm)->stackBase);}
if (((nargs)>(0))&&((to)!=(ARGP))){{
{ScmObj* t=to;ScmObj* a=ARGP;
{int c=0;int cise__1401=nargs;for (; (c)<(cise__1401); (c)++){
*((t)++)=(*((a)++));}}}}}
ARGP=(to);
SP=((to)+(nargs));
goto label_LOCAL_ENV_CALL;}}

label_BF:
CASE(SCM_VM_BF) 
{
#line 642 "./vminsn.scm"
{if (SCM_CHECKED_FALSEP(VAL0)){FETCH_LOCATION(PC);} else {INCR_PC;}CHECK_INTR;NEXT;}}

label_BT:
CASE(SCM_VM_BT) 
{
#line 643 "./vminsn.scm"
{if (!(SCM_CHECKED_FALSEP(VAL0))){FETCH_LOCATION(PC);} else {INCR_PC;}CHECK_INTR;NEXT;}}

label_BNEQ:
CASE(SCM_VM_BNEQ) 
{
#line 644 "./vminsn.scm"
{ScmObj z;POP_ARG(z);{if (!(SCM_EQ(VAL0,z))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}

label_BNEQV:
CASE(SCM_VM_BNEQV) 
{
#line 645 "./vminsn.scm"
{ScmObj z;POP_ARG(z);{if (!(Scm_EqvP(VAL0,z))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}

label_BNNULL:
CASE(SCM_VM_BNNULL) 
{
#line 646 "./vminsn.scm"
{if (!(SCM_NULLP(VAL0))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}

label_BNUMNE:
CASE(SCM_VM_BNUMNE) 
{
#line 648 "./vminsn.scm"
{ScmObj y=VAL0;
{ScmObj x;POP_ARG(x);{if (!(Scm_NumEq(x,y))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_BNLT:
CASE(SCM_VM_BNLT) 
{
#line 650 "./vminsn.scm"
{ScmObj G1402;POP_ARG(G1402);{ScmObj G1403=VAL0;int r;if ((SCM_INTP(G1402))&&(SCM_INTP(G1403))){r=((((signed long )(((intptr_t )(G1402)))))<(((signed long )(((intptr_t )(G1403))))));}else if((SCM_FLONUMP(G1402))&&(SCM_FLONUMP(G1403))){r=((SCM_FLONUM_VALUE(G1402))<(SCM_FLONUM_VALUE(G1403)));} else {r=(Scm_NumLT(G1402,G1403));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_BNLE:
CASE(SCM_VM_BNLE) 
{
#line 651 "./vminsn.scm"
{ScmObj G1404;POP_ARG(G1404);{ScmObj G1405=VAL0;int r;if ((SCM_INTP(G1404))&&(SCM_INTP(G1405))){r=((((signed long )(((intptr_t )(G1404)))))<=(((signed long )(((intptr_t )(G1405))))));}else if((SCM_FLONUMP(G1404))&&(SCM_FLONUMP(G1405))){r=((SCM_FLONUM_VALUE(G1404))<=(SCM_FLONUM_VALUE(G1405)));} else {r=(Scm_NumLE(G1404,G1405));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_BNGT:
CASE(SCM_VM_BNGT) 
{
#line 652 "./vminsn.scm"
{ScmObj G1406;POP_ARG(G1406);{ScmObj G1407=VAL0;int r;if ((SCM_INTP(G1406))&&(SCM_INTP(G1407))){r=((((signed long )(((intptr_t )(G1406)))))>(((signed long )(((intptr_t )(G1407))))));}else if((SCM_FLONUMP(G1406))&&(SCM_FLONUMP(G1407))){r=((SCM_FLONUM_VALUE(G1406))>(SCM_FLONUM_VALUE(G1407)));} else {r=(Scm_NumGT(G1406,G1407));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_BNGE:
CASE(SCM_VM_BNGE) 
{
#line 653 "./vminsn.scm"
{ScmObj G1408;POP_ARG(G1408);{ScmObj G1409=VAL0;int r;if ((SCM_INTP(G1408))&&(SCM_INTP(G1409))){r=((((signed long )(((intptr_t )(G1408)))))>=(((signed long )(((intptr_t )(G1409))))));}else if((SCM_FLONUMP(G1408))&&(SCM_FLONUMP(G1409))){r=((SCM_FLONUM_VALUE(G1408))>=(SCM_FLONUM_VALUE(G1409)));} else {r=(Scm_NumGE(G1408,G1409));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_LREF_VAL0_BNUMNE:
CASE(SCM_VM_LREF_VAL0_BNUMNE) 
{
#line 659 "./vminsn.scm"
{
#line 648 "./vminsn.scm"
{ScmObj y=VAL0;
{int G1410=SCM_VM_INSN_ARG0(code);int G1411=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1412=ENV;ScmObj x;switch (G1410) {case 4 : {G1412=((G1412)->up);}/*FALLTHROUGH*/case 3 : {G1412=((G1412)->up);}/*FALLTHROUGH*/case 2 : {G1412=((G1412)->up);}/*FALLTHROUGH*/case 1 : {G1412=((G1412)->up);}/*FALLTHROUGH*/case 0 : {x=(ENV_DATA(G1412,G1411));break;}/*FALLTHROUGH*/default: {while(((G1410)--)>(0)){G1412=((G1412)->up);}x=(ENV_DATA(G1412,G1411));break;}/*FALLTHROUGH*/}{if (!(Scm_NumEq(x,y))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}}

label_LREF_VAL0_BNLT:
CASE(SCM_VM_LREF_VAL0_BNLT) 
{
#line 660 "./vminsn.scm"
{
#line 650 "./vminsn.scm"
{int G1415=SCM_VM_INSN_ARG0(code);int G1416=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1417=ENV;ScmObj G1413;switch (G1415) {case 4 : {G1417=((G1417)->up);}/*FALLTHROUGH*/case 3 : {G1417=((G1417)->up);}/*FALLTHROUGH*/case 2 : {G1417=((G1417)->up);}/*FALLTHROUGH*/case 1 : {G1417=((G1417)->up);}/*FALLTHROUGH*/case 0 : {G1413=(ENV_DATA(G1417,G1416));break;}/*FALLTHROUGH*/default: {while(((G1415)--)>(0)){G1417=((G1417)->up);}G1413=(ENV_DATA(G1417,G1416));break;}/*FALLTHROUGH*/}{ScmObj G1414=VAL0;int r;if ((SCM_INTP(G1413))&&(SCM_INTP(G1414))){r=((((signed long )(((intptr_t )(G1413)))))<(((signed long )(((intptr_t )(G1414))))));}else if((SCM_FLONUMP(G1413))&&(SCM_FLONUMP(G1414))){r=((SCM_FLONUM_VALUE(G1413))<(SCM_FLONUM_VALUE(G1414)));} else {r=(Scm_NumLT(G1413,G1414));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}}

label_LREF_VAL0_BNLE:
CASE(SCM_VM_LREF_VAL0_BNLE) 
{
#line 661 "./vminsn.scm"
{
#line 651 "./vminsn.scm"
{int G1420=SCM_VM_INSN_ARG0(code);int G1421=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1422=ENV;ScmObj G1418;switch (G1420) {case 4 : {G1422=((G1422)->up);}/*FALLTHROUGH*/case 3 : {G1422=((G1422)->up);}/*FALLTHROUGH*/case 2 : {G1422=((G1422)->up);}/*FALLTHROUGH*/case 1 : {G1422=((G1422)->up);}/*FALLTHROUGH*/case 0 : {G1418=(ENV_DATA(G1422,G1421));break;}/*FALLTHROUGH*/default: {while(((G1420)--)>(0)){G1422=((G1422)->up);}G1418=(ENV_DATA(G1422,G1421));break;}/*FALLTHROUGH*/}{ScmObj G1419=VAL0;int r;if ((SCM_INTP(G1418))&&(SCM_INTP(G1419))){r=((((signed long )(((intptr_t )(G1418)))))<=(((signed long )(((intptr_t )(G1419))))));}else if((SCM_FLONUMP(G1418))&&(SCM_FLONUMP(G1419))){r=((SCM_FLONUM_VALUE(G1418))<=(SCM_FLONUM_VALUE(G1419)));} else {r=(Scm_NumLE(G1418,G1419));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}}

label_LREF_VAL0_BNGT:
CASE(SCM_VM_LREF_VAL0_BNGT) 
{
#line 662 "./vminsn.scm"
{
#line 652 "./vminsn.scm"
{int G1425=SCM_VM_INSN_ARG0(code);int G1426=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1427=ENV;ScmObj G1423;switch (G1425) {case 4 : {G1427=((G1427)->up);}/*FALLTHROUGH*/case 3 : {G1427=((G1427)->up);}/*FALLTHROUGH*/case 2 : {G1427=((G1427)->up);}/*FALLTHROUGH*/case 1 : {G1427=((G1427)->up);}/*FALLTHROUGH*/case 0 : {G1423=(ENV_DATA(G1427,G1426));break;}/*FALLTHROUGH*/default: {while(((G1425)--)>(0)){G1427=((G1427)->up);}G1423=(ENV_DATA(G1427,G1426));break;}/*FALLTHROUGH*/}{ScmObj G1424=VAL0;int r;if ((SCM_INTP(G1423))&&(SCM_INTP(G1424))){r=((((signed long )(((intptr_t )(G1423)))))>(((signed long )(((intptr_t )(G1424))))));}else if((SCM_FLONUMP(G1423))&&(SCM_FLONUMP(G1424))){r=((SCM_FLONUM_VALUE(G1423))>(SCM_FLONUM_VALUE(G1424)));} else {r=(Scm_NumGT(G1423,G1424));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}}

label_LREF_VAL0_BNGE:
CASE(SCM_VM_LREF_VAL0_BNGE) 
{
#line 663 "./vminsn.scm"
{
#line 653 "./vminsn.scm"
{int G1430=SCM_VM_INSN_ARG0(code);int G1431=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1432=ENV;ScmObj G1428;switch (G1430) {case 4 : {G1432=((G1432)->up);}/*FALLTHROUGH*/case 3 : {G1432=((G1432)->up);}/*FALLTHROUGH*/case 2 : {G1432=((G1432)->up);}/*FALLTHROUGH*/case 1 : {G1432=((G1432)->up);}/*FALLTHROUGH*/case 0 : {G1428=(ENV_DATA(G1432,G1431));break;}/*FALLTHROUGH*/default: {while(((G1430)--)>(0)){G1432=((G1432)->up);}G1428=(ENV_DATA(G1432,G1431));break;}/*FALLTHROUGH*/}{ScmObj G1429=VAL0;int r;if ((SCM_INTP(G1428))&&(SCM_INTP(G1429))){r=((((signed long )(((intptr_t )(G1428)))))>=(((signed long )(((intptr_t )(G1429))))));}else if((SCM_FLONUMP(G1428))&&(SCM_FLONUMP(G1429))){r=((SCM_FLONUM_VALUE(G1428))>=(SCM_FLONUM_VALUE(G1429)));} else {r=(Scm_NumGE(G1428,G1429));}{if (!(r)){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}}

label_BNUMNEI:
CASE(SCM_VM_BNUMNEI) 
{
#line 672 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj v0=VAL0;
if (!(SCM_NUMBERP(v0))){{SCM_TYPE_ERROR(v0,"number");}}
{if (
!(((SCM_INTP(v0))&&((SCM_INT_VALUE(v0))==(imm)))||(
(SCM_FLONUMP(v0))&&((SCM_FLONUM_VALUE(v0))==(imm))))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}}

label_BNEQC:
CASE(SCM_VM_BNEQC) 
{
#line 679 "./vminsn.scm"
{ScmObj z;FETCH_OPERAND(z);INCR_PC;{if (!(SCM_EQ(VAL0,z))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}

label_BNEQVC:
CASE(SCM_VM_BNEQVC) 
{
#line 681 "./vminsn.scm"
{ScmObj z;FETCH_OPERAND(z);INCR_PC;{if (!(Scm_EqvP(VAL0,z))){{VAL0=(SCM_FALSE);FETCH_LOCATION(PC);}} else {{VAL0=(SCM_TRUE);INCR_PC;}}CHECK_INTR;NEXT;}}}

label_RF:
CASE(SCM_VM_RF) 
{
#line 689 "./vminsn.scm"
{if (SCM_CHECKED_FALSEP(VAL0)){{RETURN_OP();}}NEXT;}}

label_RT:
CASE(SCM_VM_RT) 
{
#line 690 "./vminsn.scm"
{if (!(SCM_CHECKED_FALSEP(VAL0))){{RETURN_OP();}}NEXT;}}

label_RNEQ:
CASE(SCM_VM_RNEQ) 
{
#line 691 "./vminsn.scm"
{ScmObj v;POP_ARG(v);
{if (!(SCM_EQ(VAL0,v))){{VAL0=(SCM_FALSE);(vm)->numVals=(1);RETURN_OP();}}NEXT;}}}

label_RNEQV:
CASE(SCM_VM_RNEQV) 
{
#line 693 "./vminsn.scm"
{ScmObj v;POP_ARG(v);
{if (!(Scm_EqvP(VAL0,v))){{VAL0=(SCM_FALSE);(vm)->numVals=(1);RETURN_OP();}}NEXT;}}}

label_RNNULL:
CASE(SCM_VM_RNNULL) 
{
#line 695 "./vminsn.scm"
{if (!(SCM_NULLP(VAL0))){{VAL0=(SCM_FALSE);(vm)->numVals=(1);RETURN_OP();}}NEXT;}}

label_RECEIVE:
CASE(SCM_VM_RECEIVE) 
{
#line 736 "./vminsn.scm"
{int reqargs=SCM_VM_INSN_ARG0(code);int restarg=SCM_VM_INSN_ARG1(code);int size;int i=0;int argsize;ScmObj rest=SCM_NIL;ScmObj tail=SCM_NIL;ScmWord* nextpc;if (((vm)->numVals)<(reqargs)){{Scm_Error("received fewer values than expected");}}if ((!(restarg))&&(((vm)->numVals)>(reqargs))){{Scm_Error("received more values than expected");}}argsize=((reqargs)+(((restarg)?(1):(0))));((void )(argsize));((void )(nextpc));((void )(size));size=((CONT_FRAME_SIZE)+(ENV_SIZE((reqargs)+(restarg))));
CHECK_STACK_PARANOIA(size);
FETCH_LOCATION(nextpc);INCR_PC;
#line 740 "./vminsn.scm"
PUSH_CONT(nextpc);if ((reqargs)>(0)){PUSH_ARG(VAL0);(i)++;}else if((restarg)&&(((vm)->numVals)>(0))){SCM_APPEND1(rest,tail,VAL0);(i)++;}for (; (i)<(reqargs); (i)++){PUSH_ARG(((vm)->vals)[(i)-(1)]);}if (restarg){{for (; (i)<((vm)->numVals); (i)++){SCM_APPEND1(rest,tail,((vm)->vals)[(i)-(1)]);}PUSH_ARG(rest);}}FINISH_ENV(SCM_FALSE,ENV);(vm)->numVals=(1);NEXT;}}

label_TAIL_RECEIVE:
CASE(SCM_VM_TAIL_RECEIVE) 
{
#line 748 "./vminsn.scm"
{int reqargs=SCM_VM_INSN_ARG0(code);int restarg=SCM_VM_INSN_ARG1(code);int size;int i=0;int argsize;ScmObj rest=SCM_NIL;ScmObj tail=SCM_NIL;ScmWord* nextpc;if (((vm)->numVals)<(reqargs)){{Scm_Error("received fewer values than expected");}}if ((!(restarg))&&(((vm)->numVals)>(reqargs))){{Scm_Error("received more values than expected");}}argsize=((reqargs)+(((restarg)?(1):(0))));((void )(argsize));((void )(nextpc));((void )(size));size=(ENV_SIZE((reqargs)+(restarg)));if ((reqargs)>(0)){PUSH_ARG(VAL0);(i)++;}else if((restarg)&&(((vm)->numVals)>(0))){SCM_APPEND1(rest,tail,VAL0);(i)++;}for (; (i)<(reqargs); (i)++){PUSH_ARG(((vm)->vals)[(i)-(1)]);}if (restarg){{for (; (i)<((vm)->numVals); (i)++){SCM_APPEND1(rest,tail,((vm)->vals)[(i)-(1)]);}PUSH_ARG(rest);}}FINISH_ENV(SCM_FALSE,ENV);(vm)->numVals=(1);NEXT;}}

label_RECEIVE_ALL:
CASE(SCM_VM_RECEIVE_ALL) 
{
#line 759 "./vminsn.scm"
{ScmWord* nextpc;
CHECK_STACK_PARANOIA(CONT_FRAME_SIZE);
FETCH_LOCATION(nextpc);INCR_PC;
#line 763 "./vminsn.scm"
PUSH_CONT(nextpc);
goto label_TAIL_RECEIVE_ALL;}}

label_TAIL_RECEIVE_ALL:
CASE(SCM_VM_TAIL_RECEIVE_ALL) 
{
#line 769 "./vminsn.scm"
{CHECK_STACK_PARANOIA(ENV_SIZE(((vm)->numVals)+(1)));
PUSH_ARG(VAL0);
{int i=0;int cise__1433=((vm)->numVals)-(1);for (; (i)<(cise__1433); (i)++){
PUSH_ARG(((vm)->vals)[i]);}}
FINISH_ENV(SCM_FALSE,ENV);NEXT;}}

label_VALUES_N:
CASE(SCM_VM_VALUES_N) 
{
#line 781 "./vminsn.scm"
{
VM_ASSERT(ENV);
{int nvals=((int )((ENV)->size));
(vm)->numVals=(nvals);
for (; (nvals)>(1); (nvals)--){
POP_ARG(((vm)->vals)[(nvals)-(1)]);}
POP_ARG(VAL0);NEXT;}}}

label_LSET:
CASE(SCM_VM_LSET) 
{
#line 795 "./vminsn.scm"
{int G1434=SCM_VM_INSN_ARG0(code);int G1435=
SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1436=ENV;for (; (G1434)>(0); (G1434)--){VM_ASSERT((G1436)!=(NULL));G1436=((G1436)->up);}VM_ASSERT((G1436)!=(NULL));VM_ASSERT(((G1436)->size)>(G1435));SCM_FLONUM_ENSURE_MEM(VAL0);{ScmObj G1437=ENV_DATA(G1436,G1435);VM_ASSERT(SCM_BOXP(G1437));SCM_BOX_SET(G1437,VAL0);}(vm)->numVals=(1);NEXT;}}

label_GSET:
CASE(SCM_VM_GSET) 
{
#line 824 "./vminsn.scm"
{ScmObj loc;
FETCH_OPERAND(loc);
SCM_FLONUM_ENSURE_MEM(VAL0);
if (
SCM_GLOCP(loc)){SCM_GLOC_SET(SCM_GLOC(loc),VAL0);}else if(
SCM_IDENTIFIERP(loc)){
{ScmGloc* gloc=NULL;
Scm_IdentifierGlobalSet(SCM_IDENTIFIER(loc),VAL0,&(gloc));
#line 833 "./vminsn.scm"
*(PC)=(SCM_WORD(gloc));}} else {
Scm_Error("GSET: can't be here");}INCR_PC;
#line 836 "./vminsn.scm"
(vm)->numVals=(1);NEXT;}}

label_LREF:
CASE(SCM_VM_LREF) 
{
#line 843 "./vminsn.scm"
{int G1438=SCM_VM_INSN_ARG0(code);int G1439=
SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1440=ENV;for (; (G1438)>(0); (G1438)--){G1440=((G1440)->up);}{VAL0=(ENV_DATA(G1440,G1439));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF0:
CASE(SCM_VM_LREF0) 
{
#line 853 "./vminsn.scm"
{ScmObj G1441=ENV_DATA(ENV,0);{VAL0=(G1441);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF1:
CASE(SCM_VM_LREF1) 
{
#line 854 "./vminsn.scm"
{ScmObj G1442=ENV_DATA(ENV,1);{VAL0=(G1442);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF2:
CASE(SCM_VM_LREF2) 
{
#line 855 "./vminsn.scm"
{ScmObj G1443=ENV_DATA(ENV,2);{VAL0=(G1443);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF3:
CASE(SCM_VM_LREF3) 
{
#line 856 "./vminsn.scm"
{ScmObj G1444=ENV_DATA(ENV,3);{VAL0=(G1444);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF10:
CASE(SCM_VM_LREF10) 
{
#line 857 "./vminsn.scm"
{ScmObj G1445=ENV_DATA((ENV)->up,0);{VAL0=(G1445);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF11:
CASE(SCM_VM_LREF11) 
{
#line 858 "./vminsn.scm"
{ScmObj G1446=ENV_DATA((ENV)->up,1);{VAL0=(G1446);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF12:
CASE(SCM_VM_LREF12) 
{
#line 859 "./vminsn.scm"
{ScmObj G1447=ENV_DATA((ENV)->up,2);{VAL0=(G1447);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF20:
CASE(SCM_VM_LREF20) 
{
#line 860 "./vminsn.scm"
{ScmObj G1448=ENV_DATA(((ENV)->up)->up,0);{VAL0=(G1448);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF21:
CASE(SCM_VM_LREF21) 
{
#line 861 "./vminsn.scm"
{ScmObj G1449=ENV_DATA(((ENV)->up)->up,1);{VAL0=(G1449);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF30:
CASE(SCM_VM_LREF30) 
{
#line 862 "./vminsn.scm"
{ScmObj G1450=ENV_DATA((((ENV)->up)->up)->up,0);{VAL0=(G1450);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF_PUSH:
CASE(SCM_VM_LREF_PUSH) 
{
#line 843 "./vminsn.scm"
{int G1451=SCM_VM_INSN_ARG0(code);int G1452=
SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1453=ENV;for (; (G1451)>(0); (G1451)--){G1453=((G1453)->up);}{PUSH_ARG(ENV_DATA(G1453,G1452));NEXT;}}}

label_LREF0_PUSH:
CASE(SCM_VM_LREF0_PUSH) 
{
#line 853 "./vminsn.scm"
{ScmObj G1454=ENV_DATA(ENV,0);{PUSH_ARG(G1454);NEXT;}}}

label_LREF1_PUSH:
CASE(SCM_VM_LREF1_PUSH) 
{
#line 854 "./vminsn.scm"
{ScmObj G1455=ENV_DATA(ENV,1);{PUSH_ARG(G1455);NEXT;}}}

label_LREF2_PUSH:
CASE(SCM_VM_LREF2_PUSH) 
{
#line 855 "./vminsn.scm"
{ScmObj G1456=ENV_DATA(ENV,2);{PUSH_ARG(G1456);NEXT;}}}

label_LREF3_PUSH:
CASE(SCM_VM_LREF3_PUSH) 
{
#line 856 "./vminsn.scm"
{ScmObj G1457=ENV_DATA(ENV,3);{PUSH_ARG(G1457);NEXT;}}}

label_LREF10_PUSH:
CASE(SCM_VM_LREF10_PUSH) 
{
#line 857 "./vminsn.scm"
{ScmObj G1458=ENV_DATA((ENV)->up,0);{PUSH_ARG(G1458);NEXT;}}}

label_LREF11_PUSH:
CASE(SCM_VM_LREF11_PUSH) 
{
#line 858 "./vminsn.scm"
{ScmObj G1459=ENV_DATA((ENV)->up,1);{PUSH_ARG(G1459);NEXT;}}}

label_LREF12_PUSH:
CASE(SCM_VM_LREF12_PUSH) 
{
#line 859 "./vminsn.scm"
{ScmObj G1460=ENV_DATA((ENV)->up,2);{PUSH_ARG(G1460);NEXT;}}}

label_LREF20_PUSH:
CASE(SCM_VM_LREF20_PUSH) 
{
#line 860 "./vminsn.scm"
{ScmObj G1461=ENV_DATA(((ENV)->up)->up,0);{PUSH_ARG(G1461);NEXT;}}}

label_LREF21_PUSH:
CASE(SCM_VM_LREF21_PUSH) 
{
#line 861 "./vminsn.scm"
{ScmObj G1462=ENV_DATA(((ENV)->up)->up,1);{PUSH_ARG(G1462);NEXT;}}}

label_LREF30_PUSH:
CASE(SCM_VM_LREF30_PUSH) 
{
#line 862 "./vminsn.scm"
{ScmObj G1463=ENV_DATA((((ENV)->up)->up)->up,0);{PUSH_ARG(G1463);NEXT;}}}

label_LREF_RET:
CASE(SCM_VM_LREF_RET) 
{
#line 843 "./vminsn.scm"
{int G1464=SCM_VM_INSN_ARG0(code);int G1465=
SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1466=ENV;for (; (G1464)>(0); (G1464)--){G1466=((G1466)->up);}{VAL0=(ENV_DATA(G1466,G1465));(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF0_RET:
CASE(SCM_VM_LREF0_RET) 
{
#line 853 "./vminsn.scm"
{ScmObj G1467=ENV_DATA(ENV,0);{VAL0=(G1467);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF1_RET:
CASE(SCM_VM_LREF1_RET) 
{
#line 854 "./vminsn.scm"
{ScmObj G1468=ENV_DATA(ENV,1);{VAL0=(G1468);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF2_RET:
CASE(SCM_VM_LREF2_RET) 
{
#line 855 "./vminsn.scm"
{ScmObj G1469=ENV_DATA(ENV,2);{VAL0=(G1469);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF3_RET:
CASE(SCM_VM_LREF3_RET) 
{
#line 856 "./vminsn.scm"
{ScmObj G1470=ENV_DATA(ENV,3);{VAL0=(G1470);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF10_RET:
CASE(SCM_VM_LREF10_RET) 
{
#line 857 "./vminsn.scm"
{ScmObj G1471=ENV_DATA((ENV)->up,0);{VAL0=(G1471);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF11_RET:
CASE(SCM_VM_LREF11_RET) 
{
#line 858 "./vminsn.scm"
{ScmObj G1472=ENV_DATA((ENV)->up,1);{VAL0=(G1472);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF12_RET:
CASE(SCM_VM_LREF12_RET) 
{
#line 859 "./vminsn.scm"
{ScmObj G1473=ENV_DATA((ENV)->up,2);{VAL0=(G1473);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF20_RET:
CASE(SCM_VM_LREF20_RET) 
{
#line 860 "./vminsn.scm"
{ScmObj G1474=ENV_DATA(((ENV)->up)->up,0);{VAL0=(G1474);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF21_RET:
CASE(SCM_VM_LREF21_RET) 
{
#line 861 "./vminsn.scm"
{ScmObj G1475=ENV_DATA(((ENV)->up)->up,1);{VAL0=(G1475);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_LREF30_RET:
CASE(SCM_VM_LREF30_RET) 
{
#line 862 "./vminsn.scm"
{ScmObj G1476=ENV_DATA((((ENV)->up)->up)->up,0);{VAL0=(G1476);(vm)->numVals=(1);RETURN_OP();NEXT;}}}

label_GREF:
CASE(SCM_VM_GREF) 
{
#line 893 "./vminsn.scm"
{ScmObj v;ScmGloc* gloc=NULL;
#line 895 "./vminsn.scm"
FETCH_OPERAND(v);
if (!(SCM_GLOCP(v))){
VM_ASSERT(SCM_IDENTIFIERP(v));
v=(Scm_IdentifierGlobalRef(SCM_IDENTIFIER(v),&(gloc)));
#line 900 "./vminsn.scm"
*(PC)=(SCM_WORD(gloc));} else {
#line 903 "./vminsn.scm"
v=(Scm_GlocGetValue(SCM_GLOC(v)));}INCR_PC;
#line 905 "./vminsn.scm"
{VAL0=(v);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_GREF_PUSH:
CASE(SCM_VM_GREF_PUSH) 
{
#line 893 "./vminsn.scm"
{ScmObj v;ScmGloc* gloc=NULL;
#line 895 "./vminsn.scm"
FETCH_OPERAND(v);
if (!(SCM_GLOCP(v))){
VM_ASSERT(SCM_IDENTIFIERP(v));
v=(Scm_IdentifierGlobalRef(SCM_IDENTIFIER(v),&(gloc)));
#line 900 "./vminsn.scm"
*(PC)=(SCM_WORD(gloc));} else {
#line 903 "./vminsn.scm"
v=(Scm_GlocGetValue(SCM_GLOC(v)));}INCR_PC;
#line 905 "./vminsn.scm"
{PUSH_ARG(v);NEXT;}}}

label_GREF_CALL:
CASE(SCM_VM_GREF_CALL) 
{
#line 893 "./vminsn.scm"
{ScmObj v;ScmGloc* gloc=NULL;
#line 895 "./vminsn.scm"
FETCH_OPERAND(v);
if (!(SCM_GLOCP(v))){
VM_ASSERT(SCM_IDENTIFIERP(v));
v=(Scm_IdentifierGlobalRef(SCM_IDENTIFIER(v),&(gloc)));
#line 900 "./vminsn.scm"
*(PC)=(SCM_WORD(gloc));} else {
#line 903 "./vminsn.scm"
v=(Scm_GlocGetValue(SCM_GLOC(v)));}INCR_PC;
#line 905 "./vminsn.scm"
{VAL0=(v);}}}
{goto label_CALL;}

label_GREF_TAIL_CALL:
CASE(SCM_VM_GREF_TAIL_CALL) 
{
#line 893 "./vminsn.scm"
{ScmObj v;ScmGloc* gloc=NULL;
#line 895 "./vminsn.scm"
FETCH_OPERAND(v);
if (!(SCM_GLOCP(v))){
VM_ASSERT(SCM_IDENTIFIERP(v));
v=(Scm_IdentifierGlobalRef(SCM_IDENTIFIER(v),&(gloc)));
#line 900 "./vminsn.scm"
*(PC)=(SCM_WORD(gloc));} else {
#line 903 "./vminsn.scm"
v=(Scm_GlocGetValue(SCM_GLOC(v)));}INCR_PC;
#line 905 "./vminsn.scm"
{VAL0=(v);}}}
{goto label_TAIL_CALL;}

label_PUSH_GREF:
CASE(SCM_VM_PUSH_GREF) 
{PUSH_ARG(VAL0);}
{goto label_GREF;}

label_PUSH_GREF_CALL:
CASE(SCM_VM_PUSH_GREF_CALL) 
{PUSH_ARG(VAL0);}
{goto label_GREF_CALL;}

label_PUSH_GREF_TAIL_CALL:
CASE(SCM_VM_PUSH_GREF_TAIL_CALL) 
{PUSH_ARG(VAL0);}
{goto label_GREF_TAIL_CALL;}

label_PROMISE:
CASE(SCM_VM_PROMISE) 
{
#line 925 "./vminsn.scm"
{VAL0=(Scm_MakePromise(SCM_PROMISE_UNFORCED,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_VALUES_APPLY:
CASE(SCM_VM_VALUES_APPLY) 
{ScmObj cise__1478;
#line 936 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);
CHECK_STACK(ENV_SIZE(nargs));
{int i=0;int cise__1477=nargs;for (; (i)<(cise__1477); (i)++){
if ((i)>=((SCM_VM_MAX_VALUES)-(1))){{
SCM_FOR_EACH(cise__1478,
((vm)->vals)[(SCM_VM_MAX_VALUES)-(1)]) {{ScmObj vv=SCM_CAR(cise__1478);
#line 940 "./vminsn.scm"
PUSH_ARG(vv);}}
#line 942 "./vminsn.scm"
break;}}
PUSH_ARG(((vm)->vals)[i]);}}
goto label_TAIL_CALL;}}

label_CONS:
CASE(SCM_VM_CONS) 
{
#line 956 "./vminsn.scm"
{ScmObj ca;POP_ARG(ca);{VAL0=(Scm_Cons(ca,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CONS_PUSH:
CASE(SCM_VM_CONS_PUSH) 
{
#line 956 "./vminsn.scm"
{ScmObj ca;POP_ARG(ca);{PUSH_ARG(Scm_Cons(ca,VAL0));NEXT;}}}

label_CAR:
CASE(SCM_VM_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=VAL0;if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CAR_PUSH:
CASE(SCM_VM_CAR_PUSH) 
{
#line 960 "./vminsn.scm"
{ScmObj v=VAL0;if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{PUSH_ARG(SCM_CAR(v));NEXT;}}}

label_LREF0_CAR:
CASE(SCM_VM_LREF0_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF1_CAR:
CASE(SCM_VM_LREF1_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF2_CAR:
CASE(SCM_VM_LREF2_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,2);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF3_CAR:
CASE(SCM_VM_LREF3_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,3);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF10_CAR:
CASE(SCM_VM_LREF10_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF11_CAR:
CASE(SCM_VM_LREF11_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF12_CAR:
CASE(SCM_VM_LREF12_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,2);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF20_CAR:
CASE(SCM_VM_LREF20_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(((ENV)->up)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF21_CAR:
CASE(SCM_VM_LREF21_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA(((ENV)->up)->up,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF30_CAR:
CASE(SCM_VM_LREF30_CAR) 
{
#line 960 "./vminsn.scm"
{ScmObj v=ENV_DATA((((ENV)->up)->up)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CAR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CDR:
CASE(SCM_VM_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=VAL0;if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CDR_PUSH:
CASE(SCM_VM_CDR_PUSH) 
{
#line 965 "./vminsn.scm"
{ScmObj v=VAL0;if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{PUSH_ARG(SCM_CDR(v));NEXT;}}}

label_LREF0_CDR:
CASE(SCM_VM_LREF0_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF1_CDR:
CASE(SCM_VM_LREF1_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF2_CDR:
CASE(SCM_VM_LREF2_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,2);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF3_CDR:
CASE(SCM_VM_LREF3_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(ENV,3);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF10_CDR:
CASE(SCM_VM_LREF10_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF11_CDR:
CASE(SCM_VM_LREF11_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF12_CDR:
CASE(SCM_VM_LREF12_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA((ENV)->up,2);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF20_CDR:
CASE(SCM_VM_LREF20_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(((ENV)->up)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF21_CDR:
CASE(SCM_VM_LREF21_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA(((ENV)->up)->up,1);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LREF30_CDR:
CASE(SCM_VM_LREF30_CDR) 
{
#line 965 "./vminsn.scm"
{ScmObj v=ENV_DATA((((ENV)->up)->up)->up,0);if (!(SCM_PAIRP(v))){{SCM_TYPE_ERROR(v,"pair");}}{VAL0=(SCM_CDR(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CAAR:
CASE(SCM_VM_CAAR) 
{
#line 977 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CAR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{VAL0=(SCM_CAR(obj2));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_CAAR_PUSH:
CASE(SCM_VM_CAAR_PUSH) 
{
#line 977 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CAR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{PUSH_ARG(SCM_CAR(obj2));NEXT;}}}}

label_CADR:
CASE(SCM_VM_CADR) 
{
#line 979 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CDR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{VAL0=(SCM_CAR(obj2));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_CADR_PUSH:
CASE(SCM_VM_CADR_PUSH) 
{
#line 979 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CDR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{PUSH_ARG(SCM_CAR(obj2));NEXT;}}}}

label_CDAR:
CASE(SCM_VM_CDAR) 
{
#line 981 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CAR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{VAL0=(SCM_CDR(obj2));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_CDAR_PUSH:
CASE(SCM_VM_CDAR_PUSH) 
{
#line 981 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CAR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{PUSH_ARG(SCM_CDR(obj2));NEXT;}}}}

label_CDDR:
CASE(SCM_VM_CDDR) 
{
#line 983 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CDR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{VAL0=(SCM_CDR(obj2));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_CDDR_PUSH:
CASE(SCM_VM_CDDR_PUSH) 
{
#line 983 "./vminsn.scm"
{ScmObj obj=VAL0;if (!(SCM_PAIRP(obj))){{SCM_TYPE_ERROR(obj,"pair");}}{ScmObj obj2=SCM_CDR(obj);if (!(SCM_PAIRP(obj2))){{SCM_TYPE_ERROR(obj2,"pair");}}{PUSH_ARG(SCM_CDR(obj2));NEXT;}}}}

label_LIST:
CASE(SCM_VM_LIST) 
{
#line 987 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj cp=SCM_NIL;ScmObj arg;
if ((nargs)>(0)){{
SCM_FLONUM_ENSURE_MEM(VAL0);
cp=(Scm_Cons(VAL0,cp));
while((--(nargs))>(0)){
POP_ARG(arg);
cp=(Scm_Cons(arg,cp));}}}
{VAL0=(cp);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LIST_STAR:
CASE(SCM_VM_LIST_STAR) 
{
#line 997 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj cp=SCM_NIL;ScmObj arg;
VM_ASSERT((nargs)>=(1));
SCM_FLONUM_ENSURE_MEM(VAL0);
cp=(VAL0);
while((--(nargs))>(0)){
POP_ARG(arg);
cp=(Scm_Cons(arg,cp));}
{VAL0=(cp);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LENGTH:
CASE(SCM_VM_LENGTH) 
{
#line 1007 "./vminsn.scm"
{int len=Scm_Length(VAL0);
if ((len)<(0)){{Scm_Error("proper list required, but got %S",VAL0);}}
{long cise__1479=len;{VAL0=(SCM_MAKE_INT(cise__1479));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_MEMQ:
CASE(SCM_VM_MEMQ) 
{
#line 1011 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(Scm_Memq(v,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_MEMV:
CASE(SCM_VM_MEMV) 
{
#line 1012 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(Scm_Memv(v,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_ASSQ:
CASE(SCM_VM_ASSQ) 
{
#line 1013 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(Scm_Assq(v,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_ASSV:
CASE(SCM_VM_ASSV) 
{
#line 1014 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(Scm_Assv(v,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_EQ:
CASE(SCM_VM_EQ) 
{
#line 1015 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(SCM_MAKE_BOOL(SCM_EQ(v,VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_EQV:
CASE(SCM_VM_EQV) 
{
#line 1016 "./vminsn.scm"
{ScmObj v;POP_ARG(v);{VAL0=(SCM_MAKE_BOOL(Scm_EqvP(v,VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_APPEND:
CASE(SCM_VM_APPEND) 
{
#line 1019 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj cp=SCM_NIL;ScmObj args=SCM_NIL;ScmObj a;
#line 1022 "./vminsn.scm"
switch (nargs) {
case 0 : {break;
#line 860 "../lib/gauche/cgen/cise.scm"
break;}
#line 1024 "./vminsn.scm"
case 1 : {cp=(VAL0);break;
#line 860 "../lib/gauche/cgen/cise.scm"
break;}
#line 1025 "./vminsn.scm"
case 2 : {SCM_FLONUM_ENSURE_MEM(VAL0);
POP_ARG(a);
cp=(Scm_Append2(a,VAL0));
break;
#line 860 "../lib/gauche/cgen/cise.scm"
break;}default: {
#line 1030 "./vminsn.scm"
args=(Scm_Cons(VAL0,SCM_NIL));
#line 1033 "./vminsn.scm"
while((--(nargs))>(0)){
POP_ARG(a);
args=(Scm_Cons(a,args));}
cp=(Scm_Append(args));
#line 860 "../lib/gauche/cgen/cise.scm"
break;}}
#line 1037 "./vminsn.scm"
{VAL0=(cp);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_NOT:
CASE(SCM_VM_NOT) 
{
#line 1039 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_CHECKED_FALSEP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_REVERSE:
CASE(SCM_VM_REVERSE) 
{
#line 1040 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(Scm_Reverse(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_APPLY:
CASE(SCM_VM_APPLY) 
{
#line 1045 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj cp;
SCM_FLONUM_ENSURE_MEM(VAL0);
while((--(nargs))>(1)){
POP_ARG(cp);
VAL0=(Scm_Cons(cp,VAL0));}
cp=(VAL0);
POP_ARG(VAL0);
TAIL_CALL_INSTRUCTION();
VAL0=(Scm_VMApply(VAL0,cp));NEXT;}}

label_TAIL_APPLY:
CASE(SCM_VM_TAIL_APPLY) 
{
#line 1085 "./vminsn.scm"
{ScmObj rest=VAL0;int nargc=
(SCM_VM_INSN_ARG(code))-(2);ScmObj proc=
*(((SP)-(nargc))-(1));
VAL0=(proc);
(ARGP)++;
#line 1092 "./vminsn.scm"
if (SCM_NULLP(rest)){{goto label_TAIL_CALL;}}
#line 1096 "./vminsn.scm"
if (!(SCM_PAIRP(rest))){{
Scm_Error("Rest argument is not proper: %S",rest);}}
VAL0=(proc);
#line 1100 "./vminsn.scm"
*((SP)++)=(rest);
DISCARD_ENV();
goto tail_apply_entry;}}

label_IS_A:
CASE(SCM_VM_IS_A) 
{
#line 1106 "./vminsn.scm"
{ScmObj obj;POP_ARG(obj);
if (!(SCM_CLASSP(VAL0))){{SCM_TYPE_ERROR(VAL0,"class");}}
{ScmClass* c=SCM_CLASS(VAL0);
#line 1110 "./vminsn.scm"
if (!(SCM_FALSEP((Scm_ClassOf(obj))->redefined))){
Scm__VMProtectStack(vm);
{VAL0=(Scm_VMIsA(obj,c));(vm)->numVals=(1);NEXT_PUSHCHECK;}} else {
{VAL0=(SCM_MAKE_BOOL(SCM_ISA(obj,c)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_NULLP:
CASE(SCM_VM_NULLP) 
{
#line 1115 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_NULLP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_PAIRP:
CASE(SCM_VM_PAIRP) 
{
#line 1116 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_PAIRP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CHARP:
CASE(SCM_VM_CHARP) 
{
#line 1117 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_CHARP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_EOFP:
CASE(SCM_VM_EOFP) 
{
#line 1118 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_EOFP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_STRINGP:
CASE(SCM_VM_STRINGP) 
{
#line 1119 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_STRINGP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_SYMBOLP:
CASE(SCM_VM_SYMBOLP) 
{
#line 1120 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_SYMBOLP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_VECTORP:
CASE(SCM_VM_VECTORP) 
{
#line 1121 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_VECTORP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_NUMBERP:
CASE(SCM_VM_NUMBERP) 
{
#line 1122 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_NUMBERP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_REALP:
CASE(SCM_VM_REALP) 
{
#line 1123 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL(SCM_REALP(v)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_IDENTIFIERP:
CASE(SCM_VM_IDENTIFIERP) 
{
#line 1124 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(SCM_MAKE_BOOL((SCM_SYMBOLP(v))||(SCM_IDENTIFIERP(v))));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_SETTER:
CASE(SCM_VM_SETTER) 
{
#line 1126 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(Scm_Setter(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_VALUES:
CASE(SCM_VM_VALUES) 
{
#line 1128 "./vminsn.scm"
{
#line 369 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);int i=
(nargs)-(1);ScmObj v=VAL0;
#line 372 "./vminsn.scm"
if ((nargs)>=(SCM_VM_MAX_VALUES)){{Scm_Error("values got too many args");}}
VM_ASSERT(((nargs)-(1))<=((SP)-((vm)->stackBase)));
if ((nargs)>(0)){{
for (; (i)>(0); (i)--){
((vm)->vals)[(i)-(1)]=(v);
POP_ARG(v);}}}
VAL0=(v);
(vm)->numVals=(nargs);}NEXT;}}

label_VALUES_RET:
CASE(SCM_VM_VALUES_RET) 
{
#line 1129 "./vminsn.scm"
{
#line 369 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);int i=
(nargs)-(1);ScmObj v=VAL0;
#line 372 "./vminsn.scm"
if ((nargs)>=(SCM_VM_MAX_VALUES)){{Scm_Error("values got too many args");}}
VM_ASSERT(((nargs)-(1))<=((SP)-((vm)->stackBase)));
if ((nargs)>(0)){{
for (; (i)>(0); (i)--){
((vm)->vals)[(i)-(1)]=(v);
POP_ARG(v);}}}
VAL0=(v);
(vm)->numVals=(nargs);}
#line 1129 "./vminsn.scm"
RETURN_OP();NEXT;}}

label_VEC:
CASE(SCM_VM_VEC) 
{
#line 1132 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);int i=
(nargs)-(1);ScmObj vec=
Scm_MakeVector(nargs,SCM_UNDEFINED);
if ((nargs)>(0)){{
{ScmObj arg=VAL0;
for (; (i)>(0); (i)--){
SCM_FLONUM_ENSURE_MEM(arg);
SCM_VECTOR_ELEMENT(vec,i)=(arg);
POP_ARG(arg);}
SCM_FLONUM_ENSURE_MEM(arg);
SCM_VECTOR_ELEMENT(vec,0)=(arg);}}}
{VAL0=(vec);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LIST2VEC:
CASE(SCM_VM_LIST2VEC) 
{
#line 1146 "./vminsn.scm"
{ScmObj v=VAL0;{VAL0=(Scm_ListToVector(v,0,-1));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_APP_VEC:
CASE(SCM_VM_APP_VEC) 
{ScmObj cise__1480;
#line 1149 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj cp=SCM_NIL;ScmObj args=SCM_NIL;ScmObj a;
if ((nargs)>(0)){{
SCM_FLONUM_ENSURE_MEM(VAL0);
cp=(VAL0);
while((--(nargs))>(0)){
POP_ARG(a);
args=(Scm_Cons(a,args));}
SCM_FOR_EACH(cise__1480,Scm_ReverseX(args)) {{ScmObj a=SCM_CAR(cise__1480);
if ((Scm_Length(a))<(0)){{Scm_Error("list required, but got %S",a);}}
cp=(Scm_Append2(a,cp));}}}}
{VAL0=(Scm_ListToVector(cp,0,-1));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_VEC_LEN:
CASE(SCM_VM_VEC_LEN) 
{
#line 1162 "./vminsn.scm"
{ScmObj v=VAL0;
if (!(SCM_VECTORP(v))){{SCM_TYPE_ERROR(v,"vector");}}
{long cise__1481=SCM_VECTOR_SIZE(v);{VAL0=(SCM_MAKE_INT(cise__1481));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_VEC_REF:
CASE(SCM_VM_VEC_REF) 
{
#line 1167 "./vminsn.scm"
{ScmObj k=VAL0;
{ScmObj vec;POP_ARG(vec);
if (!(SCM_VECTORP(vec))){{SCM_TYPE_ERROR(vec,"vector");}}
if (!(SCM_INTP(k))){{SCM_TYPE_ERROR(k,"fixnum");}}
if (((SCM_INT_VALUE(k))<(0))||(
(SCM_INT_VALUE(k))>=(SCM_VECTOR_SIZE(vec)))){{
Scm_Error("vector-ref index out of range: %S",k);}}
{VAL0=(SCM_VECTOR_ELEMENT(vec,SCM_INT_VALUE(k)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_VEC_SET:
CASE(SCM_VM_VEC_SET) 
{
#line 1177 "./vminsn.scm"
{ScmObj vec;ScmObj ind;
POP_ARG(ind);
POP_ARG(vec);
if (!(SCM_VECTORP(vec))){{SCM_TYPE_ERROR(vec,"vector");}}
if (!(SCM_INTP(ind))){{SCM_TYPE_ERROR(ind,"fixnum");}}
if (SCM_VECTOR_IMMUTABLE_P(vec)){{
Scm_Error("vector is immutable: %S",vec);}}
{int k=SCM_INT_VALUE(ind);ScmObj v=VAL0;
if (((k)<(0))||((k)>=(SCM_VECTOR_SIZE(vec)))){{
Scm_Error("vector-set! index out of range: %d",k);}}
SCM_FLONUM_ENSURE_MEM(v);
SCM_VECTOR_ELEMENT(vec,k)=(v);
{VAL0=(SCM_UNDEFINED);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_VEC_REFI:
CASE(SCM_VM_VEC_REFI) 
{
#line 1193 "./vminsn.scm"
{ScmObj vec=VAL0;
if (!(SCM_VECTORP(vec))){{SCM_TYPE_ERROR(vec,"vector");}}
{int k=SCM_VM_INSN_ARG(code);
if (((k)<(0))||((k)>=(SCM_VECTOR_SIZE(vec)))){{
Scm_Error("vector-ref index out of range: %d",k);}}
{VAL0=(SCM_VECTOR_ELEMENT(vec,k));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_VEC_SETI:
CASE(SCM_VM_VEC_SETI) 
{
#line 1201 "./vminsn.scm"
{ScmObj vec;POP_ARG(vec);
if (!(SCM_VECTORP(vec))){{SCM_TYPE_ERROR(vec,"vector");}}
if (SCM_VECTOR_IMMUTABLE_P(vec)){{
Scm_Error("vector is immutable: %S",vec);}}
{int k=SCM_VM_INSN_ARG(code);ScmObj v=VAL0;
if (((k)<(0))||((k)>=(SCM_VECTOR_SIZE(vec)))){{
Scm_Error("vector-set! index out of range: %d",k);}}
SCM_FLONUM_ENSURE_MEM(v);
SCM_VECTOR_ELEMENT(vec,k)=(v);
{VAL0=(SCM_UNDEFINED);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_UVEC_REF:
CASE(SCM_VM_UVEC_REF) 
{
#line 1213 "./vminsn.scm"
{ScmObj k=VAL0;int utype=
SCM_VM_INSN_ARG(code);
#line 1217 "./vminsn.scm"
{ScmObj vec;POP_ARG(vec);
if (!(SCM_INTP(k))){{SCM_TYPE_ERROR(k,"fixnum");}}
if (!(SCM_UVECTORP(vec))){{SCM_TYPE_ERROR(vec,"uvector");}}
{VAL0=(Scm_VMUVectorRef(SCM_UVECTOR(vec),utype,SCM_INT_VALUE(k),SCM_UNBOUND));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMEQ2:
CASE(SCM_VM_NUMEQ2) 
{
#line 1236 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if (
(SCM_INTP(VAL0))&&(SCM_INTP(arg))){{VAL0=(SCM_MAKE_BOOL((VAL0)==(arg)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}else if(
(SCM_FLONUMP(VAL0))&&(SCM_FLONUMP(arg))){
{VAL0=(SCM_MAKE_BOOL((SCM_FLONUM_VALUE(VAL0))==(SCM_FLONUM_VALUE(arg))));(vm)->numVals=(1);NEXT_PUSHCHECK;}} else {
{VAL0=(SCM_MAKE_BOOL(Scm_NumEq(arg,VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMLT2:
CASE(SCM_VM_NUMLT2) 
{
#line 1243 "./vminsn.scm"
{ScmObj G1482;POP_ARG(G1482);{ScmObj G1483=VAL0;int r;if ((SCM_INTP(G1482))&&(SCM_INTP(G1483))){r=((((signed long )(((intptr_t )(G1482)))))<(((signed long )(((intptr_t )(G1483))))));}else if((SCM_FLONUMP(G1482))&&(SCM_FLONUMP(G1483))){r=((SCM_FLONUM_VALUE(G1482))<(SCM_FLONUM_VALUE(G1483)));} else {r=(Scm_NumLT(G1482,G1483));}{VAL0=(SCM_MAKE_BOOL(r));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMLE2:
CASE(SCM_VM_NUMLE2) 
{
#line 1244 "./vminsn.scm"
{ScmObj G1484;POP_ARG(G1484);{ScmObj G1485=VAL0;int r;if ((SCM_INTP(G1484))&&(SCM_INTP(G1485))){r=((((signed long )(((intptr_t )(G1484)))))<=(((signed long )(((intptr_t )(G1485))))));}else if((SCM_FLONUMP(G1484))&&(SCM_FLONUMP(G1485))){r=((SCM_FLONUM_VALUE(G1484))<=(SCM_FLONUM_VALUE(G1485)));} else {r=(Scm_NumLE(G1484,G1485));}{VAL0=(SCM_MAKE_BOOL(r));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMGT2:
CASE(SCM_VM_NUMGT2) 
{
#line 1245 "./vminsn.scm"
{ScmObj G1486;POP_ARG(G1486);{ScmObj G1487=VAL0;int r;if ((SCM_INTP(G1486))&&(SCM_INTP(G1487))){r=((((signed long )(((intptr_t )(G1486)))))>(((signed long )(((intptr_t )(G1487))))));}else if((SCM_FLONUMP(G1486))&&(SCM_FLONUMP(G1487))){r=((SCM_FLONUM_VALUE(G1486))>(SCM_FLONUM_VALUE(G1487)));} else {r=(Scm_NumGT(G1486,G1487));}{VAL0=(SCM_MAKE_BOOL(r));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMGE2:
CASE(SCM_VM_NUMGE2) 
{
#line 1246 "./vminsn.scm"
{ScmObj G1488;POP_ARG(G1488);{ScmObj G1489=VAL0;int r;if ((SCM_INTP(G1488))&&(SCM_INTP(G1489))){r=((((signed long )(((intptr_t )(G1488)))))>=(((signed long )(((intptr_t )(G1489))))));}else if((SCM_FLONUMP(G1488))&&(SCM_FLONUMP(G1489))){r=((SCM_FLONUM_VALUE(G1488))>=(SCM_FLONUM_VALUE(G1489)));} else {r=(Scm_NumGE(G1488,G1489));}{VAL0=(SCM_MAKE_BOOL(r));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMADD2:
CASE(SCM_VM_NUMADD2) 
{
#line 1249 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if (
(SCM_INTP(arg))&&(SCM_INTP(VAL0))){
{long cise__1491=(SCM_INT_VALUE(arg))+(SCM_INT_VALUE(VAL0));ScmObj cise__1492;if (SCM_SMALL_INT_FITS(cise__1491)){cise__1492=(SCM_MAKE_INT(cise__1491));} else {cise__1492=(Scm_MakeInteger(cise__1491));}{VAL0=(cise__1492);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
(SCM_FLONUMP(arg))&&(SCM_FLONUMP(VAL0))){
{double cise__1490=(SCM_FLONUM_VALUE(arg))+(SCM_FLONUM_VALUE(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1490));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMSUB2:
CASE(SCM_VM_NUMSUB2) 
{
#line 1258 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if (
(SCM_INTP(arg))&&(SCM_INTP(VAL0))){
{long cise__1494=(SCM_INT_VALUE(arg))-(SCM_INT_VALUE(VAL0));ScmObj cise__1495;if (SCM_SMALL_INT_FITS(cise__1494)){cise__1495=(SCM_MAKE_INT(cise__1494));} else {cise__1495=(Scm_MakeInteger(cise__1494));}{VAL0=(cise__1495);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
(SCM_FLONUMP(arg))&&(SCM_FLONUMP(VAL0))){
{double cise__1493=(SCM_FLONUM_VALUE(arg))-(SCM_FLONUM_VALUE(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1493));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Sub(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMMUL2:
CASE(SCM_VM_NUMMUL2) 
{
#line 1267 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
#line 1273 "./vminsn.scm"
if (SCM_FLONUMP(arg)){
if ((((SCM_MAKE_INT(0))==(VAL0))&&(
!(SCM_IS_INF(SCM_FLONUM_VALUE(arg)))))&&(
!(SCM_IS_NAN(SCM_FLONUM_VALUE(arg))))){
{VAL0=(SCM_MAKE_INT(0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}else if(
SCM_REALP(VAL0)){
{double cise__1496=(Scm_GetDouble(arg))*(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1496));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Mul(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
if (SCM_FLONUMP(VAL0)){
if ((((SCM_MAKE_INT(0))==(arg))&&(
!(SCM_IS_INF(SCM_FLONUM_VALUE(VAL0)))))&&(
!(SCM_IS_NAN(SCM_FLONUM_VALUE(VAL0))))){
{VAL0=(SCM_MAKE_INT(0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}else if(
SCM_REALP(arg)){
{double cise__1497=(Scm_GetDouble(arg))*(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1497));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Mul(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Mul(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_NUMDIV2:
CASE(SCM_VM_NUMDIV2) 
{
#line 1292 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if (((SCM_FLONUMP(arg))&&(SCM_REALP(VAL0)))||(
(SCM_FLONUMP(VAL0))&&(SCM_REALP(arg)))){
{double cise__1498=(Scm_GetDouble(arg))/(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1498));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Div(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_LREF_VAL0_NUMADD2:
CASE(SCM_VM_LREF_VAL0_NUMADD2) 
{
#line 1298 "./vminsn.scm"
{
#line 1249 "./vminsn.scm"
{int G1499=SCM_VM_INSN_ARG0(code);int G1500=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1501=ENV;ScmObj arg;switch (G1499) {case 4 : {G1501=((G1501)->up);}/*FALLTHROUGH*/case 3 : {G1501=((G1501)->up);}/*FALLTHROUGH*/case 2 : {G1501=((G1501)->up);}/*FALLTHROUGH*/case 1 : {G1501=((G1501)->up);}/*FALLTHROUGH*/case 0 : {arg=(ENV_DATA(G1501,G1500));break;}/*FALLTHROUGH*/default: {while(((G1499)--)>(0)){G1501=((G1501)->up);}arg=(ENV_DATA(G1501,G1500));break;}/*FALLTHROUGH*/}
if (
(SCM_INTP(arg))&&(SCM_INTP(VAL0))){
{long cise__1503=(SCM_INT_VALUE(arg))+(SCM_INT_VALUE(VAL0));ScmObj cise__1504;if (SCM_SMALL_INT_FITS(cise__1503)){cise__1504=(SCM_MAKE_INT(cise__1503));} else {cise__1504=(Scm_MakeInteger(cise__1503));}{VAL0=(cise__1504);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
(SCM_FLONUMP(arg))&&(SCM_FLONUMP(VAL0))){
{double cise__1502=(SCM_FLONUM_VALUE(arg))+(SCM_FLONUM_VALUE(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1502));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_NEGATE:
CASE(SCM_VM_NEGATE) 
{
#line 1301 "./vminsn.scm"
{ScmObj v=VAL0;
if (
SCM_INTP(v)){{long cise__1506=-(SCM_INT_VALUE(v));ScmObj cise__1507;if (SCM_SMALL_INT_FITS(cise__1506)){cise__1507=(SCM_MAKE_INT(cise__1506));} else {cise__1507=(Scm_MakeInteger(cise__1506));}{VAL0=(cise__1507);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(v)){{double cise__1505=-(Scm_GetDouble(v));{VAL0=(Scm_VMReturnFlonum(cise__1505));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Negate(v));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMIADD2:
CASE(SCM_VM_NUMIADD2) 
{
#line 1308 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if ((SCM_REALP(arg))&&(SCM_REALP(VAL0))){
{double cise__1508=(Scm_GetDouble(arg))+(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1508));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(Scm_Inexact(arg),
Scm_Inexact(VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMISUB2:
CASE(SCM_VM_NUMISUB2) 
{
#line 1315 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if ((SCM_REALP(arg))&&(SCM_REALP(VAL0))){
{double cise__1509=(Scm_GetDouble(arg))-(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1509));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Sub(Scm_Inexact(arg),Scm_Inexact(VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMIMUL2:
CASE(SCM_VM_NUMIMUL2) 
{
#line 1321 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if ((SCM_REALP(arg))&&(SCM_REALP(VAL0))){
{double cise__1510=(Scm_GetDouble(arg))*(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1510));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Mul(Scm_Inexact(arg),Scm_Inexact(VAL0)));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMIDIV2:
CASE(SCM_VM_NUMIDIV2) 
{
#line 1327 "./vminsn.scm"
{ScmObj arg;POP_ARG(arg);
if ((SCM_FLONUMP(arg))&&(SCM_FLONUMP(VAL0))){
{double cise__1511=(Scm_GetDouble(arg))/(Scm_GetDouble(VAL0));{VAL0=(Scm_VMReturnFlonum(cise__1511));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_VMDivInexact(arg,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMADDI:
CASE(SCM_VM_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=VAL0;
if (SCM_INTP(arg)){{long cise__1513=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1514;if (SCM_SMALL_INT_FITS(cise__1513)){cise__1514=(SCM_MAKE_INT(cise__1513));} else {cise__1514=(Scm_MakeInteger(cise__1513));}{VAL0=(cise__1514);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1512=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1512));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF0_NUMADDI:
CASE(SCM_VM_LREF0_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,0);
if (SCM_INTP(arg)){{long cise__1516=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1517;if (SCM_SMALL_INT_FITS(cise__1516)){cise__1517=(SCM_MAKE_INT(cise__1516));} else {cise__1517=(Scm_MakeInteger(cise__1516));}{VAL0=(cise__1517);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1515=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1515));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF1_NUMADDI:
CASE(SCM_VM_LREF1_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,1);
if (SCM_INTP(arg)){{long cise__1519=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1520;if (SCM_SMALL_INT_FITS(cise__1519)){cise__1520=(SCM_MAKE_INT(cise__1519));} else {cise__1520=(Scm_MakeInteger(cise__1519));}{VAL0=(cise__1520);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1518=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1518));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF2_NUMADDI:
CASE(SCM_VM_LREF2_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,2);
if (SCM_INTP(arg)){{long cise__1522=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1523;if (SCM_SMALL_INT_FITS(cise__1522)){cise__1523=(SCM_MAKE_INT(cise__1522));} else {cise__1523=(Scm_MakeInteger(cise__1522));}{VAL0=(cise__1523);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1521=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1521));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF3_NUMADDI:
CASE(SCM_VM_LREF3_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,3);
if (SCM_INTP(arg)){{long cise__1525=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1526;if (SCM_SMALL_INT_FITS(cise__1525)){cise__1526=(SCM_MAKE_INT(cise__1525));} else {cise__1526=(Scm_MakeInteger(cise__1525));}{VAL0=(cise__1526);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1524=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1524));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF10_NUMADDI:
CASE(SCM_VM_LREF10_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,0);
if (SCM_INTP(arg)){{long cise__1528=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1529;if (SCM_SMALL_INT_FITS(cise__1528)){cise__1529=(SCM_MAKE_INT(cise__1528));} else {cise__1529=(Scm_MakeInteger(cise__1528));}{VAL0=(cise__1529);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1527=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1527));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF11_NUMADDI:
CASE(SCM_VM_LREF11_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,1);
if (SCM_INTP(arg)){{long cise__1531=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1532;if (SCM_SMALL_INT_FITS(cise__1531)){cise__1532=(SCM_MAKE_INT(cise__1531));} else {cise__1532=(Scm_MakeInteger(cise__1531));}{VAL0=(cise__1532);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1530=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1530));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF12_NUMADDI:
CASE(SCM_VM_LREF12_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,2);
if (SCM_INTP(arg)){{long cise__1534=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1535;if (SCM_SMALL_INT_FITS(cise__1534)){cise__1535=(SCM_MAKE_INT(cise__1534));} else {cise__1535=(Scm_MakeInteger(cise__1534));}{VAL0=(cise__1535);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1533=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1533));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF20_NUMADDI:
CASE(SCM_VM_LREF20_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(((ENV)->up)->up,0);
if (SCM_INTP(arg)){{long cise__1537=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1538;if (SCM_SMALL_INT_FITS(cise__1537)){cise__1538=(SCM_MAKE_INT(cise__1537));} else {cise__1538=(Scm_MakeInteger(cise__1537));}{VAL0=(cise__1538);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1536=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1536));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF21_NUMADDI:
CASE(SCM_VM_LREF21_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(((ENV)->up)->up,1);
if (SCM_INTP(arg)){{long cise__1540=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1541;if (SCM_SMALL_INT_FITS(cise__1540)){cise__1541=(SCM_MAKE_INT(cise__1540));} else {cise__1541=(Scm_MakeInteger(cise__1540));}{VAL0=(cise__1541);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1539=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1539));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF30_NUMADDI:
CASE(SCM_VM_LREF30_NUMADDI) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((((ENV)->up)->up)->up,0);
if (SCM_INTP(arg)){{long cise__1543=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1544;if (SCM_SMALL_INT_FITS(cise__1543)){cise__1544=(SCM_MAKE_INT(cise__1543));} else {cise__1544=(Scm_MakeInteger(cise__1543));}{VAL0=(cise__1544);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1542=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{VAL0=(Scm_VMReturnFlonum(cise__1542));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Add(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_LREF0_NUMADDI_PUSH:
CASE(SCM_VM_LREF0_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,0);
if (SCM_INTP(arg)){{long cise__1546=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1547;if (SCM_SMALL_INT_FITS(cise__1546)){cise__1547=(SCM_MAKE_INT(cise__1546));} else {cise__1547=(Scm_MakeInteger(cise__1546));}{PUSH_ARG(cise__1547);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1545=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1545));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF1_NUMADDI_PUSH:
CASE(SCM_VM_LREF1_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,1);
if (SCM_INTP(arg)){{long cise__1549=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1550;if (SCM_SMALL_INT_FITS(cise__1549)){cise__1550=(SCM_MAKE_INT(cise__1549));} else {cise__1550=(Scm_MakeInteger(cise__1549));}{PUSH_ARG(cise__1550);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1548=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1548));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF2_NUMADDI_PUSH:
CASE(SCM_VM_LREF2_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,2);
if (SCM_INTP(arg)){{long cise__1552=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1553;if (SCM_SMALL_INT_FITS(cise__1552)){cise__1553=(SCM_MAKE_INT(cise__1552));} else {cise__1553=(Scm_MakeInteger(cise__1552));}{PUSH_ARG(cise__1553);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1551=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1551));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF3_NUMADDI_PUSH:
CASE(SCM_VM_LREF3_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(ENV,3);
if (SCM_INTP(arg)){{long cise__1555=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1556;if (SCM_SMALL_INT_FITS(cise__1555)){cise__1556=(SCM_MAKE_INT(cise__1555));} else {cise__1556=(Scm_MakeInteger(cise__1555));}{PUSH_ARG(cise__1556);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1554=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1554));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF10_NUMADDI_PUSH:
CASE(SCM_VM_LREF10_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,0);
if (SCM_INTP(arg)){{long cise__1558=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1559;if (SCM_SMALL_INT_FITS(cise__1558)){cise__1559=(SCM_MAKE_INT(cise__1558));} else {cise__1559=(Scm_MakeInteger(cise__1558));}{PUSH_ARG(cise__1559);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1557=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1557));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF11_NUMADDI_PUSH:
CASE(SCM_VM_LREF11_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,1);
if (SCM_INTP(arg)){{long cise__1561=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1562;if (SCM_SMALL_INT_FITS(cise__1561)){cise__1562=(SCM_MAKE_INT(cise__1561));} else {cise__1562=(Scm_MakeInteger(cise__1561));}{PUSH_ARG(cise__1562);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1560=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1560));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF12_NUMADDI_PUSH:
CASE(SCM_VM_LREF12_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((ENV)->up,2);
if (SCM_INTP(arg)){{long cise__1564=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1565;if (SCM_SMALL_INT_FITS(cise__1564)){cise__1565=(SCM_MAKE_INT(cise__1564));} else {cise__1565=(Scm_MakeInteger(cise__1564));}{PUSH_ARG(cise__1565);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1563=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1563));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF20_NUMADDI_PUSH:
CASE(SCM_VM_LREF20_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(((ENV)->up)->up,0);
if (SCM_INTP(arg)){{long cise__1567=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1568;if (SCM_SMALL_INT_FITS(cise__1567)){cise__1568=(SCM_MAKE_INT(cise__1567));} else {cise__1568=(Scm_MakeInteger(cise__1567));}{PUSH_ARG(cise__1568);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1566=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1566));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF21_NUMADDI_PUSH:
CASE(SCM_VM_LREF21_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA(((ENV)->up)->up,1);
if (SCM_INTP(arg)){{long cise__1570=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1571;if (SCM_SMALL_INT_FITS(cise__1570)){cise__1571=(SCM_MAKE_INT(cise__1570));} else {cise__1571=(Scm_MakeInteger(cise__1570));}{PUSH_ARG(cise__1571);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1569=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1569));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_LREF30_NUMADDI_PUSH:
CASE(SCM_VM_LREF30_NUMADDI_PUSH) 
{
#line 1333 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=ENV_DATA((((ENV)->up)->up)->up,0);
if (SCM_INTP(arg)){{long cise__1573=(imm)+(SCM_INT_VALUE(arg));ScmObj cise__1574;if (SCM_SMALL_INT_FITS(cise__1573)){cise__1574=(SCM_MAKE_INT(cise__1573));} else {cise__1574=(Scm_MakeInteger(cise__1573));}{PUSH_ARG(cise__1574);NEXT;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1572=(SCM_FLONUM_VALUE(arg))+(((double )(imm)));{PUSH_ARG(Scm_VMReturnFlonum(cise__1572));NEXT;}}} else {
{PUSH_ARG(Scm_Add(SCM_MAKE_INT(imm),arg));NEXT;}}}}}

label_NUMSUBI:
CASE(SCM_VM_NUMSUBI) 
{
#line 1344 "./vminsn.scm"
{long imm=SCM_VM_INSN_ARG(code);
{ScmObj arg=VAL0;
if (SCM_INTP(arg)){{long cise__1576=(imm)-(SCM_INT_VALUE(arg));ScmObj cise__1577;if (SCM_SMALL_INT_FITS(cise__1576)){cise__1577=(SCM_MAKE_INT(cise__1576));} else {cise__1577=(Scm_MakeInteger(cise__1576));}{VAL0=(cise__1577);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}else if(
SCM_FLONUMP(arg)){
{double cise__1575=(((double )(imm)))-(SCM_FLONUM_VALUE(arg));{VAL0=(Scm_VMReturnFlonum(cise__1575));(vm)->numVals=(1);NEXT_PUSHCHECK;}}} else {
{VAL0=(Scm_Sub(SCM_MAKE_INT(imm),arg));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}}

label_NUMMODI:
CASE(SCM_VM_NUMMODI) 
{
#line 1353 "./vminsn.scm"
{ScmSmallInt divisor=SCM_VM_INSN_ARG(code);
{ScmObj arg=VAL0;{VAL0=(Scm_Modulo(arg,SCM_MAKE_INT(divisor),FALSE));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_NUMREMI:
CASE(SCM_VM_NUMREMI) 
{
#line 1356 "./vminsn.scm"
{ScmSmallInt divisor=SCM_VM_INSN_ARG(code);
{ScmObj arg=VAL0;{VAL0=(Scm_Modulo(arg,SCM_MAKE_INT(divisor),TRUE));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_ASHI:
CASE(SCM_VM_ASHI) 
{
#line 1360 "./vminsn.scm"
{ScmSmallInt cnt=SCM_VM_INSN_ARG(code);
{ScmObj arg=VAL0;{VAL0=(Scm_Ash(arg,cnt));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_LOGAND:
CASE(SCM_VM_LOGAND) 
{
#line 1363 "./vminsn.scm"
{ScmObj x;POP_ARG(x);{VAL0=(Scm_LogAnd(x,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LOGIOR:
CASE(SCM_VM_LOGIOR) 
{
#line 1365 "./vminsn.scm"
{ScmObj x;POP_ARG(x);{VAL0=(Scm_LogIor(x,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LOGXOR:
CASE(SCM_VM_LOGXOR) 
{
#line 1367 "./vminsn.scm"
{ScmObj x;POP_ARG(x);{VAL0=(Scm_LogXor(x,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_LOGANDC:
CASE(SCM_VM_LOGANDC) 
{
#line 1369 "./vminsn.scm"
{ScmObj obj;
{ScmObj x=VAL0;FETCH_OPERAND(obj);INCR_PC;{VAL0=(Scm_LogAnd(x,obj));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_LOGIORC:
CASE(SCM_VM_LOGIORC) 
{
#line 1372 "./vminsn.scm"
{ScmObj obj;
{ScmObj x=VAL0;FETCH_OPERAND(obj);INCR_PC;{VAL0=(Scm_LogIor(x,obj));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_LOGXORC:
CASE(SCM_VM_LOGXORC) 
{
#line 1375 "./vminsn.scm"
{ScmObj obj;
{ScmObj x=VAL0;FETCH_OPERAND(obj);INCR_PC;{VAL0=(Scm_LogXor(x,obj));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_READ_CHAR:
CASE(SCM_VM_READ_CHAR) 
{
#line 1379 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);int ch=0;ScmPort* port;
if ((nargs)==(1)){
if (!(SCM_IPORTP(VAL0))){{SCM_TYPE_ERROR(VAL0,"input port");}}
port=(SCM_PORT(VAL0));} else {
#line 1384 "./vminsn.scm"
port=(SCM_CURIN);}
ch=(Scm_Getc(port));
{VAL0=((((ch)<(0))?(SCM_EOF):(SCM_MAKE_CHAR(ch))));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_PEEK_CHAR:
CASE(SCM_VM_PEEK_CHAR) 
{
#line 1389 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);int ch=0;ScmPort* port;
if ((nargs)==(1)){
if (!(SCM_IPORTP(VAL0))){{SCM_TYPE_ERROR(VAL0,"input port");}}
port=(SCM_PORT(VAL0));} else {
#line 1394 "./vminsn.scm"
port=(SCM_CURIN);}
ch=(Scm_Peekc(port));
{VAL0=((((ch)<(0))?(SCM_EOF):(SCM_MAKE_CHAR(ch))));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_WRITE_CHAR:
CASE(SCM_VM_WRITE_CHAR) 
{
#line 1399 "./vminsn.scm"
{int nargs=SCM_VM_INSN_ARG(code);ScmObj ch;ScmPort* port;
if ((nargs)==(2)){
if (!(SCM_OPORTP(VAL0))){{SCM_TYPE_ERROR(VAL0,"output port");}}
port=(SCM_PORT(VAL0));
POP_ARG(ch);} else {
port=(SCM_CUROUT),ch=(VAL0);}
#line 1406 "./vminsn.scm"
if (!(SCM_CHARP(ch))){{SCM_TYPE_ERROR(ch,"character");}}
SCM_PUTC(SCM_CHAR_VALUE(ch),port);
{VAL0=(SCM_UNDEFINED);(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_CURIN:
CASE(SCM_VM_CURIN) 
{
#line 1411 "./vminsn.scm"
{VAL0=(SCM_OBJ(SCM_CURIN));(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_CUROUT:
CASE(SCM_VM_CUROUT) 
{
#line 1413 "./vminsn.scm"
{VAL0=(SCM_OBJ(SCM_CUROUT));(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_CURERR:
CASE(SCM_VM_CURERR) 
{
#line 1415 "./vminsn.scm"
{VAL0=(SCM_OBJ(SCM_CURERR));(vm)->numVals=(1);NEXT_PUSHCHECK;}}

label_SLOT_REF:
CASE(SCM_VM_SLOT_REF) 
{
#line 1418 "./vminsn.scm"
{ScmObj obj;POP_ARG(obj);
TAIL_CALL_INSTRUCTION();
SCM_FLONUM_ENSURE_MEM(VAL0);
{VAL0=(Scm_VMSlotRef(obj,VAL0,FALSE));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_SLOT_SET:
CASE(SCM_VM_SLOT_SET) 
{
#line 1424 "./vminsn.scm"
{ScmObj slot;
POP_ARG(slot);
{ScmObj obj;POP_ARG(obj);
TAIL_CALL_INSTRUCTION();
SCM_FLONUM_ENSURE_MEM(slot);
SCM_FLONUM_ENSURE_MEM(VAL0);
{VAL0=(Scm_VMSlotSet(obj,slot,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_SLOT_REFC:
CASE(SCM_VM_SLOT_REFC) 
{
#line 1433 "./vminsn.scm"
{ScmObj slot;
FETCH_OPERAND(slot);INCR_PC;
#line 1436 "./vminsn.scm"
TAIL_CALL_INSTRUCTION();
SCM_FLONUM_ENSURE_MEM(VAL0);
{VAL0=(Scm_VMSlotRef(VAL0,slot,FALSE));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}

label_SLOT_SETC:
CASE(SCM_VM_SLOT_SETC) 
{
#line 1441 "./vminsn.scm"
{ScmObj slot;
FETCH_OPERAND(slot);INCR_PC;
#line 1444 "./vminsn.scm"
{ScmObj obj;POP_ARG(obj);
TAIL_CALL_INSTRUCTION();
SCM_FLONUM_ENSURE_MEM(VAL0);
{VAL0=(Scm_VMSlotSet(obj,slot,VAL0));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_PUSH_HANDLERS:
CASE(SCM_VM_PUSH_HANDLERS) 
{
#line 1461 "./vminsn.scm"
{long nargs=SCM_VM_INSN_ARG(code);ScmObj before;ScmObj after=VAL0;ScmObj args=SCM_NIL;
#line 1465 "./vminsn.scm"
VM_ASSERT(((SP)-((vm)->stackBase))>=((1)+(nargs)));
if ((nargs)>(0)){{
SCM_FLONUM_ENSURE_MEM(VAL0);
args=(Scm_Cons(VAL0,SCM_NIL));
while((--(nargs))>(0)){
{ScmObj v;
POP_ARG(v);
SCM_FLONUM_ENSURE_MEM(v);
args=(Scm_Cons(v,args));}}
POP_ARG(after);}}
POP_ARG(before);
SCM_FLONUM_ENSURE_MEM(before);
SCM_FLONUM_ENSURE_MEM(after);
push_dynamic_handlers(vm,before,after,args);NEXT;}}

label_POP_HANDLERS:
CASE(SCM_VM_POP_HANDLERS) 
{
#line 1482 "./vminsn.scm"
{
pop_dynamic_handlers(vm);NEXT;}}

label_BOX:
CASE(SCM_VM_BOX) 
{
#line 1494 "./vminsn.scm"
{int param=SCM_VM_INSN_ARG(code);
if ((param)==(0)){
SCM_FLONUM_ENSURE_MEM(VAL0);
{ScmBox* b=Scm_MakeBox(VAL0);
VAL0=(SCM_OBJ(b));}}else if(
(param)>(0)){
{int off=(param)-(1);
VM_ASSERT(((ENV)->size)>(off));
{ScmObj v=ENV_DATA(ENV,off);
SCM_FLONUM_ENSURE_MEM(v);
{ScmBox* b=Scm_MakeBox(v);
ENV_DATA(ENV,off)=(SCM_OBJ(b));}}}}NEXT;}}

label_ENV_SET:
CASE(SCM_VM_ENV_SET) 
{
#line 814 "./vminsn.scm"
{int off=SCM_VM_INSN_ARG(code);
VM_ASSERT(((ENV)->size)>(off));
SCM_FLONUM_ENSURE_MEM(VAL0);
ENV_DATA(ENV,off)=(VAL0);NEXT;}}

label_UNBOX:
CASE(SCM_VM_UNBOX) 
{
#line 1511 "./vminsn.scm"
{ScmObj v=VAL0;
VAL0=(SCM_BOX_VALUE(v));NEXT;}}

label_LREF_UNBOX:
CASE(SCM_VM_LREF_UNBOX) 
{
#line 1511 "./vminsn.scm"
{int G1578=SCM_VM_INSN_ARG0(code);int G1579=SCM_VM_INSN_ARG1(code);ScmEnvFrame* G1580=ENV;ScmObj v;switch (G1578) {case 4 : {G1580=((G1580)->up);}/*FALLTHROUGH*/case 3 : {G1580=((G1580)->up);}/*FALLTHROUGH*/case 2 : {G1580=((G1580)->up);}/*FALLTHROUGH*/case 1 : {G1580=((G1580)->up);}/*FALLTHROUGH*/case 0 : {v=(ENV_DATA(G1580,G1579));break;}/*FALLTHROUGH*/default: {while(((G1578)--)>(0)){G1580=((G1580)->up);}v=(ENV_DATA(G1580,G1579));break;}/*FALLTHROUGH*/}
VAL0=(SCM_BOX_VALUE(v));NEXT;}}

label_LOCAL_ENV_SHIFT:
CASE(SCM_VM_LOCAL_ENV_SHIFT) 
{
#line 1522 "./vminsn.scm"
{
local_env_shift(vm,SCM_VM_INSN_ARG(code));NEXT;}}

label_XLREF:
CASE(SCM_VM_XLREF) 
{
#line 882 "./vminsn.scm"
{ScmObj dep_s;
FETCH_OPERAND(dep_s);INCR_PC;
#line 885 "./vminsn.scm"
{int G1581=SCM_INT_VALUE(dep_s);int G1582=
SCM_VM_INSN_ARG(code);ScmEnvFrame* G1583=ENV;for (; (G1581)>(0); (G1581)--){G1583=((G1583)->up);}{VAL0=(ENV_DATA(G1583,G1582));(vm)->numVals=(1);NEXT_PUSHCHECK;}}}}

label_XLSET:
CASE(SCM_VM_XLSET) 
{
#line 801 "./vminsn.scm"
{ScmObj dep_s;
FETCH_OPERAND(dep_s);INCR_PC;
#line 804 "./vminsn.scm"
{int G1584=SCM_INT_VALUE(dep_s);int G1585=
SCM_VM_INSN_ARG(code);ScmEnvFrame* G1586=ENV;for (; (G1584)>(0); (G1584)--){VM_ASSERT((G1586)!=(NULL));G1586=((G1586)->up);}VM_ASSERT((G1586)!=(NULL));VM_ASSERT(((G1586)->size)>(G1585));SCM_FLONUM_ENSURE_MEM(VAL0);{ScmObj G1587=ENV_DATA(G1586,G1585);VM_ASSERT(SCM_BOXP(G1587));SCM_BOX_SET(G1587,VAL0);}(vm)->numVals=(1);NEXT;}}}

label_EXTEND_DENV:
CASE(SCM_VM_EXTEND_DENV) 
{
#line 1539 "./vminsn.scm"
{int op=SCM_VM_INSN_ARG(code);ScmObj key;ScmWord* next;
#line 1541 "./vminsn.scm"
SCM_FLONUM_ENSURE_MEM(VAL0);
POP_ARG(key);
FETCH_LOCATION(next);INCR_PC;
#line 1545 "./vminsn.scm"
PUSH_CONT(next);
if ((op)==(0)){
Scm_VMPushDynamicEnv(key,VAL0);} else {
Scm_VMPushDynamicEnv(key,Scm_Cons(VAL0,
Scm_VMFindDynamicEnv(key,SCM_NIL)));}NEXT;}}

label_TAIL_EXTEND_DENV:
CASE(SCM_VM_TAIL_EXTEND_DENV) 
{
#line 1553 "./vminsn.scm"
{int op=SCM_VM_INSN_ARG(code);ScmObj key;
SCM_FLONUM_ENSURE_MEM(VAL0);
POP_ARG(key);
if ((op)==(0)){
Scm_VMPushDynamicEnv(key,VAL0);} else {
Scm_VMPushDynamicEnv(key,Scm_Cons(VAL0,
Scm_VMFindDynamicEnv(key,SCM_NIL)));}NEXT;}}

label_XINSN:
CASE(SCM_VM_XINSN) 
{
#line 1567 "./vminsn.scm"

#if (SCM_TARGET_X86_64)&&((SIZEOF_LONG)>=(8))&&(!(GAUCHE_WINDOWS))

#line 1570 "./vminsn.scm"
{void* jitcode;INCR_PC;
#line 1572 "./vminsn.scm"
FETCH_LOCATION(jitcode);INCR_PC;
#line 1574 "./vminsn.scm"
asm volatile("mov %[vm], %%r15; call *%[jitcode]"::[vm]"r"(vm),[jitcode]"r"(jitcode):"r12","r15");NEXT;}
#else /* !(SCM_TARGET_X86_64)&&((SIZEOF_LONG)>=(8))&&(!(GAUCHE_WINDOWS)) */

#line 1582 "./vminsn.scm"
Scm_Panic("XINSN instruction should never be seen on this platform.");
#endif /* (SCM_TARGET_X86_64)&&((SIZEOF_LONG)>=(8))&&(!(GAUCHE_WINDOWS)) */
}
#endif /*VMLOOP*/


