X-Git-Url: http://nitlanguage.org diff --git a/c_src/icode_dump._sep.c b/c_src/icode_dump._sep.c index b6808bc..e6f259b 100644 --- a/c_src/icode_dump._sep.c +++ b/c_src/icode_dump._sep.c @@ -27,32 +27,19 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:27 */ fra.me.REG[2] = CALL_icode_base___IRoutine___params(fra.me.REG[0])(fra.me.REG[0]); REGB0 = CALL_abstract_collection___Collection___is_empty(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); - /* ./analysis//icode_dump.nit:27 */ if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:28 */ fra.me.REG[2] = NEW_Array_array___Array___init(); - fra.me.REG[3] = CALL_icode_base___IRoutine___params(fra.me.REG[0])(fra.me.REG[0]); - fra.me.REG[3] = CALL_abstract_collection___Collection___iterator(fra.me.REG[3])(fra.me.REG[3]); /* ./analysis//icode_dump.nit:29 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[3])(fra.me.REG[3]); - if (UNTAG_Bool(REGB0)) { - fra.me.REG[4] = CALL_abstract_collection___Iterator___item(fra.me.REG[3])(fra.me.REG[3]); - fra.me.REG[4] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]); - /* ./analysis//icode_dump.nit:30 */ - array___Array___add(fra.me.REG[2], fra.me.REG[4]); - } else { - /* ./analysis//icode_dump.nit:29 */ - goto label1; - } - CALL_abstract_collection___Iterator___next(fra.me.REG[3])(fra.me.REG[3]); - } - label1: while(0); + fra.me.REG[3] = CALL_icode_base___IRoutine___params(fra.me.REG[0])(fra.me.REG[0]); + CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_icode_dump___IRoutine___dump_1)); + /* ./analysis//icode_dump.nit:32 */ REGB0 = TAG_Int(3); fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:32 */ if (!once_value_2) { fra.me.REG[4] = BOX_NativeString("Parameters: "); REGB0 = TAG_Int(12); @@ -60,7 +47,8 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_2 = fra.me.REG[4]; register_static_object(&once_value_2); } else fra.me.REG[4] = once_value_2; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); if (!once_value_3) { fra.me.REG[4] = BOX_NativeString(", "); REGB0 = TAG_Int(2); @@ -68,8 +56,9 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_3 = fra.me.REG[4]; register_static_object(&once_value_3); } else fra.me.REG[4] = once_value_3; + fra.me.REG[4] = fra.me.REG[4]; fra.me.REG[4] = CALL_string___Collection___join(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]); - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); if (!once_value_4) { fra.me.REG[4] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -77,13 +66,15 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_4 = fra.me.REG[4]; register_static_object(&once_value_4); } else fra.me.REG[4] = once_value_4; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); } + /* ./analysis//icode_dump.nit:34 */ fra.me.REG[3] = CALL_icode_base___IRoutine___result(fra.me.REG[0])(fra.me.REG[0]); - REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); /* ./analysis//icode_dump.nit:35 */ + REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); @@ -97,9 +88,9 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:36 */ REGB0 = TAG_Int(3); fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:36 */ if (!once_value_5) { fra.me.REG[2] = BOX_NativeString("Result: "); REGB0 = TAG_Int(8); @@ -107,9 +98,10 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_5 = fra.me.REG[2]; register_static_object(&once_value_5); } else fra.me.REG[2] = once_value_5; - array___Array___add(fra.me.REG[4], fra.me.REG[2]); + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); if (!once_value_6) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -117,18 +109,21 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_6 = fra.me.REG[3]; register_static_object(&once_value_6); } else fra.me.REG[3] = once_value_6; - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]); } + /* ./analysis//icode_dump.nit:38 */ REGB0 = CALL_allocate_iregister_slots___IRoutine___std_slots_nb(fra.me.REG[0])(fra.me.REG[0]); REGB1 = TAG_Int(0); + /* ./../lib/standard//kernel.nit:214 */ REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1)); /* ./analysis//icode_dump.nit:38 */ if (UNTAG_Bool(REGB1)) { + /* ./analysis//icode_dump.nit:39 */ REGB1 = TAG_Int(3); fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:39 */ if (!once_value_7) { fra.me.REG[3] = BOX_NativeString("StdSlots: "); REGB1 = TAG_Int(10); @@ -136,10 +131,11 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_7 = fra.me.REG[3]; register_static_object(&once_value_7); } else fra.me.REG[3] = once_value_7; - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); REGB1 = CALL_allocate_iregister_slots___IRoutine___std_slots_nb(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(REGB1)(REGB1); - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); if (!once_value_8) { fra.me.REG[3] = BOX_NativeString(""); REGB1 = TAG_Int(0); @@ -147,18 +143,21 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_8 = fra.me.REG[3]; register_static_object(&once_value_8); } else fra.me.REG[3] = once_value_8; - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]); } + /* ./analysis//icode_dump.nit:41 */ REGB1 = CALL_allocate_iregister_slots___IRoutine___tag_slots_nb(fra.me.REG[0])(fra.me.REG[0]); REGB0 = TAG_Int(0); + /* ./../lib/standard//kernel.nit:214 */ REGB0 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB0)); /* ./analysis//icode_dump.nit:41 */ if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:42 */ REGB0 = TAG_Int(3); fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:42 */ if (!once_value_9) { fra.me.REG[3] = BOX_NativeString("TagSlots: "); REGB0 = TAG_Int(10); @@ -166,10 +165,11 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_9 = fra.me.REG[3]; register_static_object(&once_value_9); } else fra.me.REG[3] = once_value_9; - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); REGB0 = CALL_allocate_iregister_slots___IRoutine___tag_slots_nb(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(REGB0)(REGB0); - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); if (!once_value_10) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -177,13 +177,15 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ once_value_10 = fra.me.REG[3]; register_static_object(&once_value_10); } else fra.me.REG[3] = once_value_10; - array___Array___add(fra.me.REG[4], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]); } + /* ./analysis//icode_dump.nit:44 */ fra.me.REG[4] = CALL_icode_base___IRoutine___closure_decls(fra.me.REG[0])(fra.me.REG[0]); - REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); /* ./analysis//icode_dump.nit:45 */ + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); @@ -197,28 +199,60 @@ void icode_dump___IRoutine___dump(val_t p0, val_t p1){ } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { - fra.me.REG[4] = CALL_abstract_collection___Collection___iterator(fra.me.REG[4])(fra.me.REG[4]); /* ./analysis//icode_dump.nit:46 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[4])(fra.me.REG[4]); - if (UNTAG_Bool(REGB0)) { - fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[4])(fra.me.REG[4]); - /* ./analysis//icode_dump.nit:47 */ - CALL_icode_dump___IClosureDecl___dump(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]); - } else { - /* ./analysis//icode_dump.nit:46 */ - goto label11; - } - CALL_abstract_collection___Iterator___next(fra.me.REG[4])(fra.me.REG[4]); + REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_icode_dump, 46); } - label11: while(0); + CALL_abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_icode_dump___IRoutine___dump_11)); } - fra.me.REG[0] = CALL_icode_base___IRoutine___body(fra.me.REG[0])(fra.me.REG[0]); /* ./analysis//icode_dump.nit:50 */ + fra.me.REG[0] = CALL_icode_base___IRoutine___body(fra.me.REG[0])(fra.me.REG[0]); CALL_icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); stack_frame_head = fra.me.prev; return; } + void OC_icode_dump___IRoutine___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me;} fra; + fun_t CREG[1]; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___IRoutine___dump; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:30 */ + fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(closctx->REG[2])(closctx->REG[2], fra.me.REG[0]); + stack_frame_head = fra.me.prev; + return; + } + void OC_icode_dump___IRoutine___dump_11(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me;} fra; + fun_t CREG[1]; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___IRoutine___dump; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:47 */ + CALL_icode_dump___IClosureDecl___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]); + stack_frame_head = fra.me.prev; + return; + } void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; @@ -238,9 +272,9 @@ void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:58 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:58 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("Closure: "); REGB0 = TAG_Int(9); @@ -248,9 +282,10 @@ void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -258,12 +293,13 @@ void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + /* ./analysis//icode_dump.nit:59 */ fra.me.REG[2] = CALL_icode_base___IClosureDecl___default(fra.me.REG[0])(fra.me.REG[0]); REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); - /* ./analysis//icode_dump.nit:59 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL); @@ -279,13 +315,11 @@ void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ if (UNTAG_Bool(REGB0)) { /* ./analysis//icode_dump.nit:60 */ CALL_icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:61 */ fra.me.REG[0] = CALL_icode_base___IClosureDecl___default(fra.me.REG[0])(fra.me.REG[0]); REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL); - /* ./analysis//icode_dump.nit:61 */ if (UNTAG_Bool(REGB0)) { - fprintf(stderr, "Reciever is null"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 61); - nit_exit(1); + nit_abort("Reciever is null", NULL, LOCATE_icode_dump, 61); } CALL_icode_dump___IRoutine___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); /* ./analysis//icode_dump.nit:62 */ @@ -294,6 +328,75 @@ void icode_dump___IClosureDecl___dump(val_t p0, val_t p1){ stack_frame_head = fra.me.prev; return; } +val_t icode_dump___ICodeDumper___dump_locations(val_t p0){ + struct {struct stack_frame_t me;} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 68; + fra.me.meth = LOCATE_icode_dump___ICodeDumper___dump_locations; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[0] = p0; + /* ./analysis//icode_dump.nit:68 */ + REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____dump_locations(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_dump_locations", LOCATE_icode_dump, 68); + } + REGB0 = ATTR_icode_dump___ICodeDumper____dump_locations(fra.me.REG[0]); + stack_frame_head = fra.me.prev; + return REGB0; +} +val_t icode_dump___ICodeDumper___dump_line_numbers(val_t p0){ + struct {struct stack_frame_t me;} fra; + val_t REGB0; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 69; + fra.me.meth = LOCATE_icode_dump___ICodeDumper___dump_line_numbers; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[0] = p0; + /* ./analysis//icode_dump.nit:69 */ + REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0])!=NIT_NULL); + if (UNTAG_Bool(REGB0)) { + } else { + nit_abort("Uninitialized attribute %s", "_dump_line_numbers", LOCATE_icode_dump, 69); + } + REGB0 = ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0]); + stack_frame_head = fra.me.prev; + return REGB0; +} +void icode_dump___ICodeDumper___init(val_t p0, val_t p1, val_t p2, int* init_table){ + int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ICodeDumper].i; + struct {struct stack_frame_t me;} fra; + val_t REGB0; + val_t REGB1; + val_t tmp; + if (init_table[itpos0]) return; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 73; + fra.me.meth = LOCATE_icode_dump___ICodeDumper___init; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[0] = p0; + REGB0 = p1; + REGB1 = p2; + /* ./analysis//icode_dump.nit:74 */ + ATTR_icode_dump___ICodeDumper____dump_locations(fra.me.REG[0]) = REGB0; + /* ./analysis//icode_dump.nit:75 */ + ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0]) = REGB1; + stack_frame_head = fra.me.prev; + init_table[itpos0] = 1; + return; +} val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; val_t REGB0; @@ -312,7 +415,7 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ static val_t once_value_12; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 71; + fra.me.line = 78; fra.me.meth = LOCATE_icode_dump___ICodeDumper___register; fra.me.has_broke = 0; fra.me.REG_size = 7; @@ -325,32 +428,29 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ fra.me.REG[6] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:82 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:75 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 75); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 82); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:83 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:76 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 76); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 83); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); goto label1; } else { + /* ./analysis//icode_dump.nit:85 */ fra.me.REG[3] = CALL_allocate_iregister_slots___IRegister___slot_index(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:86 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); - /* ./analysis//icode_dump.nit:79 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); @@ -358,20 +458,23 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ REGB1 = TAG_Bool(false); REGB0 = REGB1; } else { + /* ./../lib/standard//kernel.nit:207 */ REGB1 = TAG_Bool((fra.me.REG[3])==(NIT_NULL)); + /* ./analysis//icode_dump.nit:86 */ REGB0 = REGB1; - /* ./analysis//icode_dump.nit:79 */ } } if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:87 */ REGB0 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); - /* ./analysis//icode_dump.nit:80 */ + /* ./analysis//icode_dump.nit:87 */ ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]) = REGB1; + /* ./analysis//icode_dump.nit:88 */ REGB1 = TAG_Int(3); fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:81 */ if (!once_value_2) { fra.me.REG[5] = BOX_NativeString("r"); REGB1 = TAG_Int(1); @@ -379,17 +482,16 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_2 = fra.me.REG[5]; register_static_object(&once_value_2); } else fra.me.REG[5] = once_value_2; - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_value"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 81); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump, 88); } REGB1 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); fra.me.REG[5] = CALL_string___Object___to_s(REGB1)(REGB1); - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); if (!once_value_3) { fra.me.REG[5] = BOX_NativeString(""); REGB1 = TAG_Int(0); @@ -397,33 +499,34 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_3 = fra.me.REG[5]; register_static_object(&once_value_3); } else fra.me.REG[5] = once_value_3; - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); + /* ./analysis//icode_dump.nit:89 */ REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:82 */ if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 82); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 89); } fra.me.REG[5] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); CALL_abstract_collection___Map_____braeq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[4]); + /* ./analysis//icode_dump.nit:90 */ fra.me.REG[2] = fra.me.REG[4]; - /* ./analysis//icode_dump.nit:83 */ goto label1; } else { + /* ./analysis//icode_dump.nit:92 */ REGB1 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); REGB0 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ REGB0 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB0)); - /* ./analysis//icode_dump.nit:85 */ + /* ./analysis//icode_dump.nit:92 */ ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]) = REGB0; + /* ./analysis//icode_dump.nit:94 */ REGB0 = CALL_allocate_iregister_slots___IRegister___in_tag_slots(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:87 */ if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:95 */ REGB0 = TAG_Int(5); fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:88 */ if (!once_value_4) { fra.me.REG[5] = BOX_NativeString("BREG"); REGB0 = TAG_Int(4); @@ -431,9 +534,10 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_4 = fra.me.REG[5]; register_static_object(&once_value_4); } else fra.me.REG[5] = once_value_4; - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); if (!once_value_5) { fra.me.REG[5] = BOX_NativeString("(r"); REGB0 = TAG_Int(2); @@ -441,17 +545,16 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_5 = fra.me.REG[5]; register_static_object(&once_value_5); } else fra.me.REG[5] = once_value_5; - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_value"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 88); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump, 95); } REGB0 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); fra.me.REG[5] = CALL_string___Object___to_s(REGB0)(REGB0); - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); if (!once_value_6) { fra.me.REG[5] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -459,15 +562,16 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_6 = fra.me.REG[5]; register_static_object(&once_value_6); } else fra.me.REG[5] = once_value_6; - array___Array___add(fra.me.REG[4], fra.me.REG[5]); + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]); fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); } else { + /* ./analysis//icode_dump.nit:96 */ REGB0 = CALL_allocate_iregister_slots___IRegister___is_local(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:89 */ if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:97 */ REGB0 = TAG_Int(5); fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:90 */ if (!once_value_7) { fra.me.REG[6] = BOX_NativeString("LREG"); REGB0 = TAG_Int(4); @@ -475,9 +579,10 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_7 = fra.me.REG[6]; register_static_object(&once_value_7); } else fra.me.REG[6] = once_value_7; - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + fra.me.REG[6] = fra.me.REG[6]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); if (!once_value_8) { fra.me.REG[6] = BOX_NativeString("(r"); REGB0 = TAG_Int(2); @@ -485,17 +590,16 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_8 = fra.me.REG[6]; register_static_object(&once_value_8); } else fra.me.REG[6] = once_value_8; - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + fra.me.REG[6] = fra.me.REG[6]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_value"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 90); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump, 97); } REGB0 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); fra.me.REG[6] = CALL_string___Object___to_s(REGB0)(REGB0); - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); if (!once_value_9) { fra.me.REG[6] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -503,13 +607,14 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_9 = fra.me.REG[6]; register_static_object(&once_value_9); } else fra.me.REG[6] = once_value_9; - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + fra.me.REG[6] = fra.me.REG[6]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]); fra.me.REG[4] = fra.me.REG[5]; } else { + /* ./analysis//icode_dump.nit:99 */ REGB0 = TAG_Int(5); fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:92 */ if (!once_value_10) { fra.me.REG[6] = BOX_NativeString("REG"); REGB0 = TAG_Int(3); @@ -517,9 +622,10 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_10 = fra.me.REG[6]; register_static_object(&once_value_10); } else fra.me.REG[6] = once_value_10; - array___Array___add(fra.me.REG[5], fra.me.REG[6]); + fra.me.REG[6] = fra.me.REG[6]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[5], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); if (!once_value_11) { fra.me.REG[3] = BOX_NativeString("(r"); REGB0 = TAG_Int(2); @@ -527,17 +633,16 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_11 = fra.me.REG[3]; register_static_object(&once_value_11); } else fra.me.REG[3] = once_value_11; - array___Array___add(fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_value"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 92); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump, 99); } REGB0 = ATTR_icode_dump___ICodeDumper____last_value(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(REGB0)(REGB0); - array___Array___add(fra.me.REG[5], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); if (!once_value_12) { fra.me.REG[3] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -545,23 +650,22 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ once_value_12 = fra.me.REG[3]; register_static_object(&once_value_12); } else fra.me.REG[3] = once_value_12; - array___Array___add(fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]); fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]); fra.me.REG[4] = fra.me.REG[5]; } } + /* ./analysis//icode_dump.nit:101 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:94 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 94); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 101); } fra.me.REG[0] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); CALL_abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[4]); + /* ./analysis//icode_dump.nit:102 */ fra.me.REG[2] = fra.me.REG[4]; - /* ./analysis//icode_dump.nit:95 */ goto label1; } } @@ -570,7 +674,7 @@ val_t icode_dump___ICodeDumper___register(val_t p0, val_t p1){ return fra.me.REG[2]; } val_t icode_dump___ICodeDumper___register_all(val_t p0, val_t p1){ - struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; val_t REGB1; val_t tmp; @@ -578,19 +682,18 @@ val_t icode_dump___ICodeDumper___register_all(val_t p0, val_t p1){ static val_t once_value_4; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 100; + fra.me.line = 107; fra.me.meth = LOCATE_icode_dump___ICodeDumper___register_all; fra.me.has_broke = 0; - fra.me.REG_size = 5; + fra.me.REG_size = 4; fra.me.REG[0] = NIT_NULL; fra.me.REG[1] = NIT_NULL; fra.me.REG[2] = NIT_NULL; fra.me.REG[3] = NIT_NULL; - fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:110 */ REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); - /* ./analysis//icode_dump.nit:103 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL); @@ -610,40 +713,54 @@ val_t icode_dump___ICodeDumper___register_all(val_t p0, val_t p1){ once_value_1 = fra.me.REG[2]; register_static_object(&once_value_1); } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; goto label2; } + /* ./analysis//icode_dump.nit:111 */ fra.me.REG[3] = NEW_Array_array___Array___init(); - fra.me.REG[1] = CALL_abstract_collection___Collection___iterator(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:105 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[1])(fra.me.REG[1]); - if (UNTAG_Bool(REGB0)) { - fra.me.REG[4] = CALL_abstract_collection___Iterator___item(fra.me.REG[1])(fra.me.REG[1]); - fra.me.REG[4] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[4]); - /* ./analysis//icode_dump.nit:106 */ - array___Array___add(fra.me.REG[3], fra.me.REG[4]); - } else { - /* ./analysis//icode_dump.nit:105 */ - goto label3; - } - CALL_abstract_collection___Iterator___next(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:112 */ + REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_icode_dump, 112); } - label3: while(0); - /* ./analysis//icode_dump.nit:108 */ + CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_icode_dump___ICodeDumper___register_all_3)); + /* ./analysis//icode_dump.nit:115 */ if (!once_value_4) { - fra.me.REG[1] = BOX_NativeString(", "); + fra.me.REG[0] = BOX_NativeString(", "); REGB0 = TAG_Int(2); - fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0); - once_value_4 = fra.me.REG[1]; + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_4 = fra.me.REG[0]; register_static_object(&once_value_4); - } else fra.me.REG[1] = once_value_4; - fra.me.REG[1] = CALL_string___Collection___join(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]); - fra.me.REG[2] = fra.me.REG[1]; + } else fra.me.REG[0] = once_value_4; + fra.me.REG[0] = fra.me.REG[0]; + fra.me.REG[0] = CALL_string___Collection___join(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]); + fra.me.REG[2] = fra.me.REG[0]; goto label2; label2: while(0); stack_frame_head = fra.me.prev; return fra.me.REG[2]; } + void OC_icode_dump___ICodeDumper___register_all_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me;} fra; + fun_t CREG[1]; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___ICodeDumper___register_all; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:113 */ + fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(closctx->REG[0])(closctx->REG[0], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(closctx->REG[3])(closctx->REG[3], fra.me.REG[0]); + stack_frame_head = fra.me.prev; + return; + } val_t icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; val_t REGB0; @@ -653,7 +770,7 @@ val_t icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 113; + fra.me.line = 120; fra.me.meth = LOCATE_icode_dump___ICodeDumper___closdecl; fra.me.has_broke = 0; fra.me.REG_size = 5; @@ -664,37 +781,35 @@ val_t icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){ fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:124 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:117 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 117); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 124); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:125 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:118 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 118); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 125); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); goto label1; } else { + /* ./analysis//icode_dump.nit:127 */ REGB0 = ATTR_icode_dump___ICodeDumper____last_clos(fra.me.REG[0]); REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); - /* ./analysis//icode_dump.nit:120 */ + /* ./analysis//icode_dump.nit:127 */ ATTR_icode_dump___ICodeDumper____last_clos(fra.me.REG[0]) = REGB1; + /* ./analysis//icode_dump.nit:128 */ REGB1 = TAG_Int(3); fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:121 */ if (!once_value_2) { fra.me.REG[4] = BOX_NativeString("clos"); REGB1 = TAG_Int(4); @@ -702,17 +817,16 @@ val_t icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){ once_value_2 = fra.me.REG[4]; register_static_object(&once_value_2); } else fra.me.REG[4] = once_value_2; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_clos(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_clos"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 121); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_clos", LOCATE_icode_dump, 128); } REGB1 = ATTR_icode_dump___ICodeDumper____last_clos(fra.me.REG[0]); fra.me.REG[4] = CALL_string___Object___to_s(REGB1)(REGB1); - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); if (!once_value_3) { fra.me.REG[4] = BOX_NativeString(""); REGB1 = TAG_Int(0); @@ -720,20 +834,19 @@ val_t icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){ once_value_3 = fra.me.REG[4]; register_static_object(&once_value_3); } else fra.me.REG[4] = once_value_3; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); + /* ./analysis//icode_dump.nit:129 */ REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:122 */ if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 122); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 129); } fra.me.REG[0] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); CALL_abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]); + /* ./analysis//icode_dump.nit:130 */ fra.me.REG[2] = fra.me.REG[3]; - /* ./analysis//icode_dump.nit:123 */ goto label1; } label1: while(0); @@ -749,7 +862,7 @@ val_t icode_dump___ICodeDumper___lab(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 128; + fra.me.line = 135; fra.me.meth = LOCATE_icode_dump___ICodeDumper___lab; fra.me.has_broke = 0; fra.me.REG_size = 5; @@ -760,37 +873,35 @@ val_t icode_dump___ICodeDumper___lab(val_t p0, val_t p1){ fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:139 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:132 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 132); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 139); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:140 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:133 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 133); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 140); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); goto label1; } else { + /* ./analysis//icode_dump.nit:142 */ REGB0 = ATTR_icode_dump___ICodeDumper____last_label(fra.me.REG[0]); REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); - /* ./analysis//icode_dump.nit:135 */ + /* ./analysis//icode_dump.nit:142 */ ATTR_icode_dump___ICodeDumper____last_label(fra.me.REG[0]) = REGB1; + /* ./analysis//icode_dump.nit:143 */ REGB1 = TAG_Int(3); fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:136 */ if (!once_value_2) { fra.me.REG[4] = BOX_NativeString("[l"); REGB1 = TAG_Int(2); @@ -798,17 +909,16 @@ val_t icode_dump___ICodeDumper___lab(val_t p0, val_t p1){ once_value_2 = fra.me.REG[4]; register_static_object(&once_value_2); } else fra.me.REG[4] = once_value_2; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_label(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_label"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 136); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_label", LOCATE_icode_dump, 143); } REGB1 = ATTR_icode_dump___ICodeDumper____last_label(fra.me.REG[0]); fra.me.REG[4] = CALL_string___Object___to_s(REGB1)(REGB1); - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); if (!once_value_3) { fra.me.REG[4] = BOX_NativeString("]"); REGB1 = TAG_Int(1); @@ -816,20 +926,19 @@ val_t icode_dump___ICodeDumper___lab(val_t p0, val_t p1){ once_value_3 = fra.me.REG[4]; register_static_object(&once_value_3); } else fra.me.REG[4] = once_value_3; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); + /* ./analysis//icode_dump.nit:144 */ REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:137 */ if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 137); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 144); } fra.me.REG[0] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); CALL_abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]); + /* ./analysis//icode_dump.nit:145 */ fra.me.REG[2] = fra.me.REG[3]; - /* ./analysis//icode_dump.nit:138 */ goto label1; } label1: while(0); @@ -845,7 +954,7 @@ val_t icode_dump___ICodeDumper___line(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 143; + fra.me.line = 150; fra.me.meth = LOCATE_icode_dump___ICodeDumper___line; fra.me.has_broke = 0; fra.me.REG_size = 5; @@ -856,37 +965,35 @@ val_t icode_dump___ICodeDumper___line(val_t p0, val_t p1){ fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:153 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:146 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 146); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 153); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:154 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:147 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 147); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 154); } fra.me.REG[2] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); goto label1; } else { + /* ./analysis//icode_dump.nit:156 */ REGB0 = ATTR_icode_dump___ICodeDumper____last_line(fra.me.REG[0]); REGB1 = TAG_Int(1); + /* ./../lib/standard//kernel.nit:215 */ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); - /* ./analysis//icode_dump.nit:149 */ + /* ./analysis//icode_dump.nit:156 */ ATTR_icode_dump___ICodeDumper____last_line(fra.me.REG[0]) = REGB1; + /* ./analysis//icode_dump.nit:157 */ REGB1 = TAG_Int(3); fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:150 */ if (!once_value_2) { fra.me.REG[4] = BOX_NativeString(""); REGB1 = TAG_Int(0); @@ -894,17 +1001,16 @@ val_t icode_dump___ICodeDumper___line(val_t p0, val_t p1){ once_value_2 = fra.me.REG[4]; register_static_object(&once_value_2); } else fra.me.REG[4] = once_value_2; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____last_line(fra.me.REG[0])!=NIT_NULL); if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_last_line"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 150); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_last_line", LOCATE_icode_dump, 157); } REGB1 = ATTR_icode_dump___ICodeDumper____last_line(fra.me.REG[0]); fra.me.REG[4] = CALL_string___Object___to_s(REGB1)(REGB1); - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); if (!once_value_3) { fra.me.REG[4] = BOX_NativeString(""); REGB1 = TAG_Int(0); @@ -912,20 +1018,19 @@ val_t icode_dump___ICodeDumper___line(val_t p0, val_t p1){ once_value_3 = fra.me.REG[4]; register_static_object(&once_value_3); } else fra.me.REG[4] = once_value_3; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); + /* ./analysis//icode_dump.nit:158 */ REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:151 */ if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 151); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 158); } fra.me.REG[0] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); CALL_abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]); + /* ./analysis//icode_dump.nit:159 */ fra.me.REG[2] = fra.me.REG[3]; - /* ./analysis//icode_dump.nit:152 */ goto label1; } label1: while(0); @@ -938,7 +1043,7 @@ val_t icode_dump___ICodeDumper___has_lab(val_t p0, val_t p1){ val_t tmp; fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 156; + fra.me.line = 163; fra.me.meth = LOCATE_icode_dump___ICodeDumper___has_lab; fra.me.has_broke = 0; fra.me.REG_size = 2; @@ -946,13 +1051,11 @@ val_t icode_dump___ICodeDumper___has_lab(val_t p0, val_t p1){ fra.me.REG[1] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:166 */ REGB0 = TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:159 */ if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_ids"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 159); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump, 166); } fra.me.REG[0] = ATTR_icode_dump___ICodeDumper____ids(fra.me.REG[0]); REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); @@ -962,64 +1065,90 @@ val_t icode_dump___ICodeDumper___has_lab(val_t p0, val_t p1){ return REGB0; } void icode_dump___ICodeDumper___write(val_t p0, val_t p1){ - struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; val_t REGB1; + val_t REGB2; val_t tmp; static val_t once_value_1; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 162; + fra.me.line = 169; fra.me.meth = LOCATE_icode_dump___ICodeDumper___write; fra.me.has_broke = 0; - fra.me.REG_size = 5; + fra.me.REG_size = 4; fra.me.REG[0] = NIT_NULL; fra.me.REG[1] = NIT_NULL; fra.me.REG[2] = NIT_NULL; fra.me.REG[3] = NIT_NULL; - fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:172 */ REGB0 = TAG_Int(0); REGB1 = TAG_Bool(ATTR_icode_dump___ICodeDumper____indent_level(fra.me.REG[0])!=NIT_NULL); - /* ./analysis//icode_dump.nit:165 */ if (UNTAG_Bool(REGB1)) { } else { - fprintf(stderr, "Uninitialized attribute %s", "_indent_level"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 165); - nit_exit(1); + nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_icode_dump, 172); } REGB1 = ATTR_icode_dump___ICodeDumper____indent_level(fra.me.REG[0]); - fra.me.REG[2] = NEW_Range_range___Range___without_last(REGB0, REGB1); - fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]); + /* ./../lib/standard//kernel.nit:332 */ while(1) { - REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]); - if (UNTAG_Bool(REGB1)) { - REGB1 = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]); - REGB1 = TAG_Int(0); - fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB1); - /* ./analysis//icode_dump.nit:166 */ + /* ./../lib/standard//kernel.nit:212 */ + REGB2 = TAG_Bool(UNTAG_Int(REGB0)vft[INIT_TABLE_POS_ICodeDumper].i; - struct {struct stack_frame_t me;} fra; - val_t tmp; - if (init_table[itpos0]) return; - fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; - fra.me.file = LOCATE_icode_dump; - fra.me.line = 0; - fra.me.meth = LOCATE_icode_dump___ICodeDumper___init; - fra.me.has_broke = 0; - fra.me.REG_size = 0; - stack_frame_head = fra.me.prev; - init_table[itpos0] = 1; - return; -} void icode_dump___ICode___dump(val_t p0, val_t p1){ - struct {struct stack_frame_t me; val_t MORE_REG[6];} fra; + struct {struct stack_frame_t me; val_t MORE_REG[7];} fra; val_t REGB0; val_t REGB1; val_t tmp; static val_t once_value_1; /* Once value */ - static val_t once_value_2; /* Once value */ + static val_t once_value_2; /* Once value */ static val_t once_value_3; /* Once value */ static val_t once_value_4; /* Once value */ static val_t once_value_5; /* Once value */ @@ -1094,12 +1212,15 @@ void icode_dump___ICode___dump(val_t p0, val_t p1){ static val_t once_value_10; /* Once value */ static val_t once_value_11; /* Once value */ static val_t once_value_12; /* Once value */ + static val_t once_value_13; /* Once value */ + static val_t once_value_14; /* Once value */ + static val_t once_value_15; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 181; + fra.me.line = 188; fra.me.meth = LOCATE_icode_dump___ICode___dump; fra.me.has_broke = 0; - fra.me.REG_size = 7; + fra.me.REG_size = 8; fra.me.REG[0] = NIT_NULL; fra.me.REG[1] = NIT_NULL; fra.me.REG[2] = NIT_NULL; @@ -1107,10 +1228,12 @@ void icode_dump___ICode___dump(val_t p0, val_t p1){ fra.me.REG[4] = NIT_NULL; fra.me.REG[5] = NIT_NULL; fra.me.REG[6] = NIT_NULL; + fra.me.REG[7] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:191 */ fra.me.REG[2] = CALL_icode_base___ICode___result(fra.me.REG[0])(fra.me.REG[0]); - /* ./analysis//icode_dump.nit:185 */ + /* ./analysis//icode_dump.nit:192 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -1118,48 +1241,96 @@ void icode_dump___ICode___dump(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - fra.me.REG[4] = CALL_icode_base___ICode___location(fra.me.REG[0])(fra.me.REG[0]); - REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); - /* ./analysis//icode_dump.nit:187 */ + fra.me.REG[3] = fra.me.REG[3]; + /* ./analysis//icode_dump.nit:193 */ + if (!once_value_2) { + fra.me.REG[4] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); + once_value_2 = fra.me.REG[4]; + register_static_object(&once_value_2); + } else fra.me.REG[4] = once_value_2; + fra.me.REG[4] = fra.me.REG[4]; + /* ./analysis//icode_dump.nit:194 */ + fra.me.REG[5] = CALL_icode_base___ICode___location(fra.me.REG[0])(fra.me.REG[0]); + /* ./analysis//icode_dump.nit:195 */ + REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { - REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); + REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL); if (UNTAG_Bool(REGB1)) { REGB1 = TAG_Bool(false); REGB0 = REGB1; } else { - REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL); REGB0 = REGB1; } } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { + REGB0 = CALL_icode_dump___ICodeDumper___dump_locations(fra.me.REG[1])(fra.me.REG[1]); + } else { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; + } + if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:196 */ REGB0 = TAG_Int(3); - fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:188 */ - if (!once_value_2) { - fra.me.REG[6] = BOX_NativeString(" ... "); - REGB0 = TAG_Int(12); - fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0); - once_value_2 = fra.me.REG[6]; - register_static_object(&once_value_2); - } else fra.me.REG[6] = once_value_2; - array___Array___add(fra.me.REG[5], fra.me.REG[6]); - fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]); - array___Array___add(fra.me.REG[5], fra.me.REG[4]); + fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0); if (!once_value_3) { - fra.me.REG[4] = BOX_NativeString(""); - REGB0 = TAG_Int(0); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_3 = fra.me.REG[4]; + fra.me.REG[7] = BOX_NativeString(" ... "); + REGB0 = TAG_Int(12); + fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB0); + once_value_3 = fra.me.REG[7]; register_static_object(&once_value_3); - } else fra.me.REG[4] = once_value_3; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); + } else fra.me.REG[7] = once_value_3; + fra.me.REG[7] = fra.me.REG[7]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]); fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]); - fra.me.REG[3] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + if (!once_value_4) { + fra.me.REG[5] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_4 = fra.me.REG[5]; + register_static_object(&once_value_4); + } else fra.me.REG[5] = once_value_4; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]); + fra.me.REG[3] = fra.me.REG[6]; + } + /* ./analysis//icode_dump.nit:198 */ + REGB0 = CALL_icode_dump___ICodeDumper___dump_line_numbers(fra.me.REG[1])(fra.me.REG[1]); + if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:199 */ + REGB0 = TAG_Int(3); + fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_5) { + fra.me.REG[5] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_5 = fra.me.REG[5]; + register_static_object(&once_value_5); + } else fra.me.REG[5] = once_value_5; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[5] = CALL_icode_dump___ICodeDumper___line(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + if (!once_value_6) { + fra.me.REG[5] = BOX_NativeString(": "); + REGB0 = TAG_Int(2); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_6 = fra.me.REG[5]; + register_static_object(&once_value_6); + } else fra.me.REG[5] = once_value_6; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]); + fra.me.REG[4] = fra.me.REG[6]; } + /* ./analysis//icode_dump.nit:201 */ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); - /* ./analysis//icode_dump.nit:190 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL); @@ -1172,101 +1343,108 @@ void icode_dump___ICode___dump(val_t p0, val_t p1){ } } if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:202 */ REGB0 = TAG_Int(7); - fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:191 */ - if (!once_value_4) { - fra.me.REG[4] = BOX_NativeString(""); - REGB0 = TAG_Int(0); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_4 = fra.me.REG[4]; - register_static_object(&once_value_4); - } else fra.me.REG[4] = once_value_4; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - fra.me.REG[4] = CALL_icode_dump___ICodeDumper___line(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - if (!once_value_5) { - fra.me.REG[4] = BOX_NativeString(": "); - REGB0 = TAG_Int(2); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_5 = fra.me.REG[4]; - register_static_object(&once_value_5); - } else fra.me.REG[4] = once_value_5; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - fra.me.REG[4] = CALL_icode_dump___ICode___dump_intern(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - if (!once_value_6) { - fra.me.REG[4] = BOX_NativeString(""); - REGB0 = TAG_Int(0); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_6 = fra.me.REG[4]; - register_static_object(&once_value_6); - } else fra.me.REG[4] = once_value_6; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - array___Array___add(fra.me.REG[5], fra.me.REG[3]); + fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0); if (!once_value_7) { - fra.me.REG[4] = BOX_NativeString(""); + fra.me.REG[5] = BOX_NativeString(""); REGB0 = TAG_Int(0); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_7 = fra.me.REG[4]; + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_7 = fra.me.REG[5]; register_static_object(&once_value_7); - } else fra.me.REG[4] = once_value_7; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]); - CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]); - } else { - REGB0 = TAG_Int(9); - fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:193 */ + } else fra.me.REG[5] = once_value_7; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]); if (!once_value_8) { - fra.me.REG[4] = BOX_NativeString(""); + fra.me.REG[5] = BOX_NativeString(""); REGB0 = TAG_Int(0); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_8 = fra.me.REG[4]; + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_8 = fra.me.REG[5]; register_static_object(&once_value_8); - } else fra.me.REG[4] = once_value_8; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - fra.me.REG[4] = CALL_icode_dump___ICodeDumper___line(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[5], fra.me.REG[4]); + } else fra.me.REG[5] = once_value_8; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[5] = CALL_icode_dump___ICode___dump_intern(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); if (!once_value_9) { - fra.me.REG[4] = BOX_NativeString(": "); - REGB0 = TAG_Int(2); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_9 = fra.me.REG[4]; + fra.me.REG[5] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_9 = fra.me.REG[5]; register_static_object(&once_value_9); - } else fra.me.REG[4] = once_value_9; - array___Array___add(fra.me.REG[5], fra.me.REG[4]); - fra.me.REG[2] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); - array___Array___add(fra.me.REG[5], fra.me.REG[2]); + } else fra.me.REG[5] = once_value_9; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); if (!once_value_10) { + fra.me.REG[5] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_10 = fra.me.REG[5]; + register_static_object(&once_value_10); + } else fra.me.REG[5] = once_value_10; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]); + CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]); + } else { + /* ./analysis//icode_dump.nit:204 */ + REGB0 = TAG_Int(9); + fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_11) { + fra.me.REG[5] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0); + once_value_11 = fra.me.REG[5]; + register_static_object(&once_value_11); + } else fra.me.REG[5] = once_value_11; + fra.me.REG[5] = fra.me.REG[5]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]); + if (!once_value_12) { + fra.me.REG[4] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); + once_value_12 = fra.me.REG[4]; + register_static_object(&once_value_12); + } else fra.me.REG[4] = once_value_12; + fra.me.REG[4] = fra.me.REG[4]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]); + fra.me.REG[2] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]); + if (!once_value_13) { fra.me.REG[2] = BOX_NativeString(" := "); REGB0 = TAG_Int(4); fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); - once_value_10 = fra.me.REG[2]; - register_static_object(&once_value_10); - } else fra.me.REG[2] = once_value_10; - array___Array___add(fra.me.REG[5], fra.me.REG[2]); + once_value_13 = fra.me.REG[2]; + register_static_object(&once_value_13); + } else fra.me.REG[2] = once_value_13; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]); fra.me.REG[0] = CALL_icode_dump___ICode___dump_intern(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); - array___Array___add(fra.me.REG[5], fra.me.REG[0]); - if (!once_value_11) { + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]); + if (!once_value_14) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); - once_value_11 = fra.me.REG[0]; - register_static_object(&once_value_11); - } else fra.me.REG[0] = once_value_11; - array___Array___add(fra.me.REG[5], fra.me.REG[0]); - array___Array___add(fra.me.REG[5], fra.me.REG[3]); - if (!once_value_12) { + once_value_14 = fra.me.REG[0]; + register_static_object(&once_value_14); + } else fra.me.REG[0] = once_value_14; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + if (!once_value_15) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0); - once_value_12 = fra.me.REG[3]; - register_static_object(&once_value_12); - } else fra.me.REG[3] = once_value_12; - array___Array___add(fra.me.REG[5], fra.me.REG[3]); - fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]); - CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]); + once_value_15 = fra.me.REG[3]; + register_static_object(&once_value_15); + } else fra.me.REG[3] = once_value_15; + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]); + fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]); + CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]); } stack_frame_head = fra.me.prev; return; @@ -1278,7 +1456,7 @@ val_t icode_dump___ICode___dump_intern(val_t p0, val_t p1){ static val_t once_value_1; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 197; + fra.me.line = 208; fra.me.meth = LOCATE_icode_dump___ICode___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 2; @@ -1286,7 +1464,7 @@ val_t icode_dump___ICode___dump_intern(val_t p0, val_t p1){ fra.me.REG[1] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; - /* ./analysis//icode_dump.nit:198 */ + /* ./analysis//icode_dump.nit:209 */ if (!once_value_1) { fra.me.REG[1] = BOX_NativeString("???"); REGB0 = TAG_Int(3); @@ -1294,6 +1472,7 @@ val_t icode_dump___ICode___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[1]; register_static_object(&once_value_1); } else fra.me.REG[1] = once_value_1; + fra.me.REG[1] = fra.me.REG[1]; goto label2; label2: while(0); stack_frame_head = fra.me.prev; @@ -1304,11 +1483,9 @@ void icode_dump___ICodeN___dump(val_t p0, val_t p1){ val_t REGB0; val_t REGB1; val_t tmp; - static val_t once_value_1; /* Once value */ - static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 202; + fra.me.line = 213; fra.me.meth = LOCATE_icode_dump___ICodeN___dump; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1318,13 +1495,15 @@ void icode_dump___ICodeN___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:213 */ fra.me.REG[2] = fra.me.REG[0]; fra.me.REG[3] = fra.me.REG[1]; - /* ./analysis//icode_dump.nit:204 */ + /* ./analysis//icode_dump.nit:215 */ CALL_SUPER_icode_dump___ICodeN___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); + /* ./analysis//icode_dump.nit:216 */ fra.me.REG[2] = CALL_icode_base___ICodeN___closure_defs(fra.me.REG[2])(fra.me.REG[2]); + /* ./analysis//icode_dump.nit:217 */ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); - /* ./analysis//icode_dump.nit:206 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL); @@ -1338,69 +1517,85 @@ void icode_dump___ICodeN___dump(val_t p0, val_t p1){ } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { - fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:207 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]); + /* ./analysis//icode_dump.nit:218 */ + REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL); + if (UNTAG_Bool(REGB0)) { + nit_abort("Reciever is null", NULL, LOCATE_icode_dump, 218); + } + CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_icode_dump___ICodeN___dump_1)); + } + stack_frame_head = fra.me.prev; + return; +} + void OC_icode_dump___ICodeN___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me; val_t MORE_REG[1];} fra; + val_t REGB0; + val_t REGB1; + fun_t CREG[1]; + val_t tmp; + static val_t once_value_2; /* Once value */ + static val_t once_value_3; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___ICodeN___dump; + fra.me.has_broke = 0; + fra.me.REG_size = 2; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:219 */ + REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL); if (UNTAG_Bool(REGB0)) { - fra.me.REG[1] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]); - REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); - /* ./analysis//icode_dump.nit:208 */ - if (UNTAG_Bool(REGB0)) { + } else { + REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL); + if (UNTAG_Bool(REGB1)) { + REGB1 = TAG_Bool(false); + REGB0 = REGB1; } else { - REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL); - if (UNTAG_Bool(REGB1)) { - REGB1 = TAG_Bool(false); - REGB0 = REGB1; - } else { - REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL); - REGB0 = REGB1; - } + REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], NIT_NULL); + REGB0 = REGB1; } + } + if (UNTAG_Bool(REGB0)) { + /* ./analysis//icode_dump.nit:220 */ + if (!once_value_2) { + fra.me.REG[1] = BOX_NativeString("CLOSURE = NULL"); + REGB0 = TAG_Int(14); + fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0); + once_value_2 = fra.me.REG[1]; + register_static_object(&once_value_2); + } else fra.me.REG[1] = once_value_2; + fra.me.REG[1] = fra.me.REG[1]; + CALL_icode_dump___ICodeDumper___write(closctx->REG[3])(closctx->REG[3], fra.me.REG[1]); + } else { + /* ./analysis//icode_dump.nit:222 */ + if (!once_value_3) { + fra.me.REG[1] = BOX_NativeString("CLOSURE"); + REGB0 = TAG_Int(7); + fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0); + once_value_3 = fra.me.REG[1]; + register_static_object(&once_value_3); + } else fra.me.REG[1] = once_value_3; + fra.me.REG[1] = fra.me.REG[1]; + CALL_icode_dump___ICodeDumper___write(closctx->REG[3])(closctx->REG[3], fra.me.REG[1]); + /* ./analysis//icode_dump.nit:223 */ + CALL_icode_dump___ICodeDumper___indent(closctx->REG[3])(closctx->REG[3]); + /* ./analysis//icode_dump.nit:224 */ + REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL); if (UNTAG_Bool(REGB0)) { - /* ./analysis//icode_dump.nit:209 */ - if (!once_value_1) { - fra.me.REG[0] = BOX_NativeString("CLOSURE = NULL"); - REGB0 = TAG_Int(14); - fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); - once_value_1 = fra.me.REG[0]; - register_static_object(&once_value_1); - } else fra.me.REG[0] = once_value_1; - CALL_icode_dump___ICodeDumper___write(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]); - } else { - /* ./analysis//icode_dump.nit:211 */ - if (!once_value_2) { - fra.me.REG[0] = BOX_NativeString("CLOSURE"); - REGB0 = TAG_Int(7); - fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); - once_value_2 = fra.me.REG[0]; - register_static_object(&once_value_2); - } else fra.me.REG[0] = once_value_2; - CALL_icode_dump___ICodeDumper___write(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]); - /* ./analysis//icode_dump.nit:212 */ - CALL_icode_dump___ICodeDumper___indent(fra.me.REG[3])(fra.me.REG[3]); - REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL); - /* ./analysis//icode_dump.nit:213 */ - if (UNTAG_Bool(REGB0)) { - fprintf(stderr, "Reciever is null"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 213); - nit_exit(1); - } - CALL_icode_dump___IRoutine___dump(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - /* ./analysis//icode_dump.nit:214 */ - CALL_icode_dump___ICodeDumper___unindent(fra.me.REG[3])(fra.me.REG[3]); + nit_abort("Reciever is null", NULL, LOCATE_icode_dump, 224); } - } else { - /* ./analysis//icode_dump.nit:207 */ - goto label3; + CALL_icode_dump___IRoutine___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[3]); + /* ./analysis//icode_dump.nit:225 */ + CALL_icode_dump___ICodeDumper___unindent(closctx->REG[3])(closctx->REG[3]); } - CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]); + stack_frame_head = fra.me.prev; + return; } - label3: while(0); - } - stack_frame_head = fra.me.prev; - return; -} void icode_dump___ISeq___dump(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; @@ -1410,7 +1605,7 @@ void icode_dump___ISeq___dump(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 222; + fra.me.line = 233; fra.me.meth = LOCATE_icode_dump___ISeq___dump; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1420,25 +1615,13 @@ void icode_dump___ISeq___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:235 */ fra.me.REG[2] = CALL_icode_base___ISeq___icodes(fra.me.REG[0])(fra.me.REG[0]); - fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:224 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]); - if (UNTAG_Bool(REGB0)) { - fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:225 */ - CALL_icode_dump___ICode___dump(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]); - } else { - /* ./analysis//icode_dump.nit:224 */ - goto label1; - } - CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]); - } - label1: while(0); + CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_icode_dump___ISeq___dump_1)); + /* ./analysis//icode_dump.nit:238 */ fra.me.REG[0] = CALL_icode_base___ISeq___iescape_mark(fra.me.REG[0])(fra.me.REG[0]); + /* ./analysis//icode_dump.nit:239 */ REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL); - /* ./analysis//icode_dump.nit:228 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL); @@ -1467,9 +1650,10 @@ void icode_dump___ISeq___dump(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(":"); REGB0 = TAG_Int(1); @@ -1477,13 +1661,34 @@ void icode_dump___ISeq___dump(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); } stack_frame_head = fra.me.prev; return; } + void OC_icode_dump___ISeq___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me;} fra; + fun_t CREG[1]; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___ISeq___dump; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:236 */ + CALL_icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]); + stack_frame_head = fra.me.prev; + return; + } void icode_dump___IIf___dump(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; @@ -1494,7 +1699,7 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ static val_t once_value_4; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 233; + fra.me.line = 244; fra.me.meth = LOCATE_icode_dump___IIf___dump; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1504,9 +1709,9 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:246 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:235 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("IF("); REGB0 = TAG_Int(3); @@ -1514,10 +1719,11 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString(") {"); REGB0 = TAG_Int(3); @@ -1525,17 +1731,18 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); - /* ./analysis//icode_dump.nit:236 */ + /* ./analysis//icode_dump.nit:247 */ CALL_icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:248 */ fra.me.REG[2] = CALL_icode_base___IIf___then_seq(fra.me.REG[0])(fra.me.REG[0]); - /* ./analysis//icode_dump.nit:237 */ CALL_icode_dump___ICode___dump(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]); - /* ./analysis//icode_dump.nit:238 */ + /* ./analysis//icode_dump.nit:249 */ CALL_icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:239 */ + /* ./analysis//icode_dump.nit:250 */ if (!once_value_3) { fra.me.REG[2] = BOX_NativeString("} ELSE {"); REGB0 = TAG_Int(8); @@ -1543,15 +1750,16 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ once_value_3 = fra.me.REG[2]; register_static_object(&once_value_3); } else fra.me.REG[2] = once_value_3; + fra.me.REG[2] = fra.me.REG[2]; CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); - /* ./analysis//icode_dump.nit:240 */ + /* ./analysis//icode_dump.nit:251 */ CALL_icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:252 */ fra.me.REG[0] = CALL_icode_base___IIf___else_seq(fra.me.REG[0])(fra.me.REG[0]); - /* ./analysis//icode_dump.nit:241 */ CALL_icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); - /* ./analysis//icode_dump.nit:242 */ + /* ./analysis//icode_dump.nit:253 */ CALL_icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:243 */ + /* ./analysis//icode_dump.nit:254 */ if (!once_value_4) { fra.me.REG[0] = BOX_NativeString("}"); REGB0 = TAG_Int(1); @@ -1559,6 +1767,7 @@ void icode_dump___IIf___dump(val_t p0, val_t p1){ once_value_4 = fra.me.REG[0]; register_static_object(&once_value_4); } else fra.me.REG[0] = once_value_4; + fra.me.REG[0] = fra.me.REG[0]; CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); stack_frame_head = fra.me.prev; return; @@ -1574,7 +1783,7 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ static val_t once_value_5; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 248; + fra.me.line = 259; fra.me.meth = LOCATE_icode_dump___ILoop___dump; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1584,7 +1793,7 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; - /* ./analysis//icode_dump.nit:250 */ + /* ./analysis//icode_dump.nit:261 */ if (!once_value_1) { fra.me.REG[2] = BOX_NativeString("LOOP {"); REGB0 = TAG_Int(6); @@ -1592,28 +1801,16 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ once_value_1 = fra.me.REG[2]; register_static_object(&once_value_1); } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); - /* ./analysis//icode_dump.nit:251 */ + /* ./analysis//icode_dump.nit:262 */ CALL_icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:263 */ fra.me.REG[2] = CALL_icode_base___ISeq___icodes(fra.me.REG[0])(fra.me.REG[0]); - fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:252 */ - while(1) { - REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]); - if (UNTAG_Bool(REGB0)) { - fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:253 */ - CALL_icode_dump___ICode___dump(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]); - } else { - /* ./analysis//icode_dump.nit:252 */ - goto label2; - } - CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]); - } - label2: while(0); - /* ./analysis//icode_dump.nit:255 */ + CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_icode_dump___ILoop___dump_2)); + /* ./analysis//icode_dump.nit:266 */ CALL_icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:256 */ + /* ./analysis//icode_dump.nit:267 */ if (!once_value_3) { fra.me.REG[2] = BOX_NativeString("}"); REGB0 = TAG_Int(1); @@ -1621,10 +1818,12 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ once_value_3 = fra.me.REG[2]; register_static_object(&once_value_3); } else fra.me.REG[2] = once_value_3; + fra.me.REG[2] = fra.me.REG[2]; CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + /* ./analysis//icode_dump.nit:268 */ fra.me.REG[0] = CALL_icode_base___ISeq___iescape_mark(fra.me.REG[0])(fra.me.REG[0]); + /* ./analysis//icode_dump.nit:269 */ REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL); - /* ./analysis//icode_dump.nit:258 */ if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL); @@ -1653,9 +1852,10 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ once_value_4 = fra.me.REG[3]; register_static_object(&once_value_4); } else fra.me.REG[3] = once_value_4; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_5) { fra.me.REG[0] = BOX_NativeString(":"); REGB0 = TAG_Int(1); @@ -1663,13 +1863,34 @@ void icode_dump___ILoop___dump(val_t p0, val_t p1){ once_value_5 = fra.me.REG[0]; register_static_object(&once_value_5); } else fra.me.REG[0] = once_value_5; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); } stack_frame_head = fra.me.prev; return; } + void OC_icode_dump___ILoop___dump_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){ + struct {struct stack_frame_t me;} fra; + fun_t CREG[1]; + val_t tmp; + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 0; + fra.me.meth = LOCATE_icode_dump___ILoop___dump; + fra.me.has_broke = 0; + fra.me.REG_size = 1; + fra.me.REG[0] = NIT_NULL; + fra.me.closure_ctx = closctx_param; + fra.me.closure_funs = CREG; + fra.me.REG[0] = p0; + CREG[0] = clos_fun0; + /* ./analysis//icode_dump.nit:264 */ + CALL_icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]); + stack_frame_head = fra.me.prev; + return; + } val_t icode_dump___IEscape___dump_intern(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; @@ -1678,7 +1899,7 @@ val_t icode_dump___IEscape___dump_intern(val_t p0, val_t p1){ static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 263; + fra.me.line = 274; fra.me.meth = LOCATE_icode_dump___IEscape___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1688,9 +1909,9 @@ val_t icode_dump___IEscape___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:276 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:265 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("ESCAPE "); REGB0 = TAG_Int(7); @@ -1698,10 +1919,11 @@ val_t icode_dump___IEscape___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___IEscape___iescape_mark(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_2) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -1709,7 +1931,8 @@ val_t icode_dump___IEscape___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[0]; register_static_object(&once_value_2); } else fra.me.REG[0] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label3; label3: while(0); @@ -1725,7 +1948,7 @@ val_t icode_dump___IAbort___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 270; + fra.me.line = 281; fra.me.meth = LOCATE_icode_dump___IAbort___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 3; @@ -1734,9 +1957,9 @@ val_t icode_dump___IAbort___dump_intern(val_t p0, val_t p1){ fra.me.REG[2] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:283 */ REGB0 = TAG_Int(3); fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:272 */ if (!once_value_1) { fra.me.REG[2] = BOX_NativeString("ABORT (\""); REGB0 = TAG_Int(8); @@ -1744,7 +1967,8 @@ val_t icode_dump___IAbort___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[2]; register_static_object(&once_value_1); } else fra.me.REG[2] = once_value_1; - array___Array___add(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); fra.me.REG[0] = CALL_icode_base___IAbort___texts(fra.me.REG[0])(fra.me.REG[0]); if (!once_value_2) { fra.me.REG[2] = BOX_NativeString("\", \""); @@ -1753,8 +1977,9 @@ val_t icode_dump___IAbort___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[2]; register_static_object(&once_value_2); } else fra.me.REG[2] = once_value_2; + fra.me.REG[2] = fra.me.REG[2]; fra.me.REG[2] = CALL_string___Collection___join(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]); - array___Array___add(fra.me.REG[1], fra.me.REG[2]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); if (!once_value_3) { fra.me.REG[2] = BOX_NativeString("\")"); REGB0 = TAG_Int(2); @@ -1762,7 +1987,8 @@ val_t icode_dump___IAbort___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[2]; register_static_object(&once_value_3); } else fra.me.REG[2] = once_value_3; - array___Array___add(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); goto label4; label4: while(0); @@ -1778,7 +2004,7 @@ val_t icode_dump___ICall___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 277; + fra.me.line = 288; fra.me.meth = LOCATE_icode_dump___ICall___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1788,9 +2014,9 @@ val_t icode_dump___ICall___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:290 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:279 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("CALL "); REGB0 = TAG_Int(5); @@ -1798,10 +2024,11 @@ val_t icode_dump___ICall___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -1809,10 +2036,11 @@ val_t icode_dump___ICall___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -1820,7 +2048,8 @@ val_t icode_dump___ICall___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -1837,7 +2066,7 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ static val_t once_value_4; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 284; + fra.me.line = 295; fra.me.meth = LOCATE_icode_dump___INew___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1847,9 +2076,9 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:297 */ REGB0 = TAG_Int(7); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:286 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("NEW "); REGB0 = TAG_Int(4); @@ -1857,10 +2086,11 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___INew___stype(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("."); REGB0 = TAG_Int(1); @@ -1868,10 +2098,11 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_3) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -1879,10 +2110,11 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[3]; register_static_object(&once_value_3); } else fra.me.REG[3] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_4) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -1890,7 +2122,8 @@ val_t icode_dump___INew___dump_intern(val_t p0, val_t p1){ once_value_4 = fra.me.REG[0]; register_static_object(&once_value_4); } else fra.me.REG[0] = once_value_4; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label5; label5: while(0); @@ -1906,7 +2139,7 @@ val_t icode_dump___ISuper___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 291; + fra.me.line = 302; fra.me.meth = LOCATE_icode_dump___ISuper___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1916,9 +2149,9 @@ val_t icode_dump___ISuper___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:304 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:293 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("SUPER "); REGB0 = TAG_Int(6); @@ -1926,10 +2159,11 @@ val_t icode_dump___ISuper___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -1937,10 +2171,11 @@ val_t icode_dump___ISuper___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -1948,7 +2183,8 @@ val_t icode_dump___ISuper___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -1964,7 +2200,7 @@ val_t icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 298; + fra.me.line = 309; fra.me.meth = LOCATE_icode_dump___IStaticCall___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -1974,9 +2210,9 @@ val_t icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:311 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:300 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("STATIC_CALL "); REGB0 = TAG_Int(12); @@ -1984,10 +2220,11 @@ val_t icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -1995,10 +2232,11 @@ val_t icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2006,7 +2244,8 @@ val_t icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2021,7 +2260,7 @@ val_t icode_dump___IAllocateInstance___dump_intern(val_t p0, val_t p1){ static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 305; + fra.me.line = 316; fra.me.meth = LOCATE_icode_dump___IAllocateInstance___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 3; @@ -2030,9 +2269,9 @@ val_t icode_dump___IAllocateInstance___dump_intern(val_t p0, val_t p1){ fra.me.REG[2] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:318 */ REGB0 = TAG_Int(3); fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:307 */ if (!once_value_1) { fra.me.REG[2] = BOX_NativeString("ALLOCATE NEW_"); REGB0 = TAG_Int(13); @@ -2040,10 +2279,11 @@ val_t icode_dump___IAllocateInstance___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[2]; register_static_object(&once_value_1); } else fra.me.REG[2] = once_value_1; - array___Array___add(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); fra.me.REG[0] = CALL_icode_base___IAllocateInstance___stype(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]); - array___Array___add(fra.me.REG[1], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); if (!once_value_2) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2051,7 +2291,8 @@ val_t icode_dump___IAllocateInstance___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[0]; register_static_object(&once_value_2); } else fra.me.REG[0] = once_value_2; - array___Array___add(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); goto label3; label3: while(0); @@ -2067,7 +2308,7 @@ val_t icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 312; + fra.me.line = 323; fra.me.meth = LOCATE_icode_dump___ICheckInstance___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2077,9 +2318,9 @@ val_t icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:325 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:314 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("CHECK_INSTANCE CHECKNEW_"); REGB0 = TAG_Int(24); @@ -2087,10 +2328,11 @@ val_t icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICheckInstance___stype(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2098,10 +2340,11 @@ val_t icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2109,7 +2352,8 @@ val_t icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2125,7 +2369,7 @@ val_t icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 319; + fra.me.line = 330; fra.me.meth = LOCATE_icode_dump___IInitAttributes___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2135,9 +2379,9 @@ val_t icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:332 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:321 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("INIT_ATTRIBUTES INIT_ATTRIBUTES_"); REGB0 = TAG_Int(32); @@ -2145,10 +2389,11 @@ val_t icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IInitAttributes___stype(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2156,10 +2401,11 @@ val_t icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2167,7 +2413,8 @@ val_t icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2183,7 +2430,7 @@ val_t icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 326; + fra.me.line = 337; fra.me.meth = LOCATE_icode_dump___IClosCall___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2193,9 +2440,9 @@ val_t icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:339 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:328 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("CLOS_CALL "); REGB0 = TAG_Int(10); @@ -2203,10 +2450,11 @@ val_t icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IClosCall___closure_decl(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2214,10 +2462,11 @@ val_t icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2225,7 +2474,8 @@ val_t icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2241,7 +2491,7 @@ val_t icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 333; + fra.me.line = 344; fra.me.meth = LOCATE_icode_dump___IAttrRead___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2251,9 +2501,9 @@ val_t icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:346 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:335 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("ATTR_READ "); REGB0 = TAG_Int(10); @@ -2261,10 +2511,11 @@ val_t icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAttrRead___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2272,10 +2523,11 @@ val_t icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2283,7 +2535,8 @@ val_t icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2300,7 +2553,7 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ static val_t once_value_4; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 340; + fra.me.line = 351; fra.me.meth = LOCATE_icode_dump___IAttrWrite___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2310,9 +2563,9 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:353 */ REGB0 = TAG_Int(7); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:342 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("ATTR_WRITE "); REGB0 = TAG_Int(11); @@ -2320,10 +2573,11 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAttrWrite___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2331,10 +2585,11 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICode2___expr1(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_3) { fra.me.REG[3] = BOX_NativeString(") := "); REGB0 = TAG_Int(5); @@ -2342,10 +2597,11 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[3]; register_static_object(&once_value_3); } else fra.me.REG[3] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode2___expr2(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_4) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2353,7 +2609,8 @@ val_t icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){ once_value_4 = fra.me.REG[0]; register_static_object(&once_value_4); } else fra.me.REG[0] = once_value_4; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label5; label5: while(0); @@ -2369,7 +2626,7 @@ val_t icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 347; + fra.me.line = 358; fra.me.meth = LOCATE_icode_dump___IAttrIsset___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2379,9 +2636,9 @@ val_t icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:360 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:349 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("ATTR_ISSET "); REGB0 = TAG_Int(11); @@ -2389,10 +2646,11 @@ val_t icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___IAttrIsset___property(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString("("); REGB0 = TAG_Int(1); @@ -2400,10 +2658,11 @@ val_t icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(")"); REGB0 = TAG_Int(1); @@ -2411,7 +2670,8 @@ val_t icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2427,7 +2687,7 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 354; + fra.me.line = 365; fra.me.meth = LOCATE_icode_dump___ITypeCheck___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2437,9 +2697,9 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:367 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:356 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("CHECKTYPE "); REGB0 = TAG_Int(10); @@ -2447,10 +2707,11 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString(" isa "); REGB0 = TAG_Int(5); @@ -2458,10 +2719,11 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ITypeCheck___stype(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2469,7 +2731,8 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2477,95 +2740,297 @@ val_t icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){ return fra.me.REG[2]; } val_t icode_dump___INative___dump_intern(val_t p0, val_t p1){ - struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; + struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; val_t tmp; - static val_t once_value_1; /* Once value */ - static val_t once_value_2; /* Once value */ - static val_t once_value_4; /* Once value */ - static val_t once_value_5; /* Once value */ - static val_t once_value_6; /* Once value */ + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 361; + fra.me.line = 372; fra.me.meth = LOCATE_icode_dump___INative___dump_intern; fra.me.has_broke = 0; - fra.me.REG_size = 5; + fra.me.REG_size = 4; fra.me.REG[0] = NIT_NULL; fra.me.REG[1] = NIT_NULL; fra.me.REG[2] = NIT_NULL; fra.me.REG[3] = NIT_NULL; - fra.me.REG[4] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; - fra.me.REG[2] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); - REGB0 = CALL_abstract_collection___Collection___is_empty(fra.me.REG[2])(fra.me.REG[2]); - /* ./analysis//icode_dump.nit:363 */ - if (UNTAG_Bool(REGB0)) { - REGB0 = TAG_Int(3); - fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:364 */ - if (!once_value_1) { - fra.me.REG[3] = BOX_NativeString("NATIVE \""); - REGB0 = TAG_Int(8); - fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0); - once_value_1 = fra.me.REG[3]; - register_static_object(&once_value_1); - } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); - fra.me.REG[3] = CALL_icode_base___INative___code(fra.me.REG[0])(fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); - if (!once_value_2) { - fra.me.REG[3] = BOX_NativeString("\""); - REGB0 = TAG_Int(1); - fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0); - once_value_2 = fra.me.REG[3]; - register_static_object(&once_value_2); - } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); - fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); - goto label3; - } else { - REGB0 = TAG_Int(5); - fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:366 */ - if (!once_value_4) { - fra.me.REG[4] = BOX_NativeString("NATIVE \""); - REGB0 = TAG_Int(8); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_4 = fra.me.REG[4]; - register_static_object(&once_value_4); - } else fra.me.REG[4] = once_value_4; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); - fra.me.REG[4] = CALL_icode_base___INative___code(fra.me.REG[0])(fra.me.REG[0]); - array___Array___add(fra.me.REG[3], fra.me.REG[4]); - if (!once_value_5) { - fra.me.REG[4] = BOX_NativeString("\"("); - REGB0 = TAG_Int(2); - fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0); - once_value_5 = fra.me.REG[4]; - register_static_object(&once_value_5); - } else fra.me.REG[4] = once_value_5; - array___Array___add(fra.me.REG[3], fra.me.REG[4]); - fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); - fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[3], fra.me.REG[0]); - if (!once_value_6) { - fra.me.REG[0] = BOX_NativeString(")"); - REGB0 = TAG_Int(1); - fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); - once_value_6 = fra.me.REG[0]; - register_static_object(&once_value_6); - } else fra.me.REG[0] = once_value_6; - array___Array___add(fra.me.REG[3], fra.me.REG[0]); - fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]); - fra.me.REG[2] = fra.me.REG[3]; - goto label3; - } - label3: while(0); + /* ./analysis//icode_dump.nit:374 */ + REGB0 = TAG_Int(5); + fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[3] = BOX_NativeString("NATIVE \""); + REGB0 = TAG_Int(8); + fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0); + once_value_1 = fra.me.REG[3]; + register_static_object(&once_value_1); + } else fra.me.REG[3] = once_value_1; + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = CALL_icode_base___INative___method(fra.me.REG[0])(fra.me.REG[0]); + fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); + if (!once_value_2) { + fra.me.REG[3] = BOX_NativeString("\"("); + REGB0 = TAG_Int(2); + fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0); + once_value_2 = fra.me.REG[3]; + register_static_object(&once_value_2); + } else fra.me.REG[3] = once_value_2; + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[0] = CALL_icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]); + fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); + if (!once_value_3) { + fra.me.REG[0] = BOX_NativeString(")"); + REGB0 = TAG_Int(1); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_3 = fra.me.REG[0]; + register_static_object(&once_value_3); + } else fra.me.REG[0] = once_value_3; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); + goto label4; + label4: while(0); stack_frame_head = fra.me.prev; return fra.me.REG[2]; } +val_t icode_dump___IIntValue___dump_intern(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 379; + fra.me.meth = LOCATE_icode_dump___IIntValue___dump_intern; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:381 */ + REGB0 = TAG_Int(3); + fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[2] = BOX_NativeString("INTVALUE "); + REGB0 = TAG_Int(9); + fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); + once_value_1 = fra.me.REG[2]; + register_static_object(&once_value_1); + } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[0] = CALL_icode_base___IIntValue___value(fra.me.REG[0])(fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + if (!once_value_2) { + fra.me.REG[0] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_2 = fra.me.REG[0]; + register_static_object(&once_value_2); + } else fra.me.REG[0] = once_value_2; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); + goto label3; + label3: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} +val_t icode_dump___IBoolValue___dump_intern(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 386; + fra.me.meth = LOCATE_icode_dump___IBoolValue___dump_intern; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:388 */ + REGB0 = TAG_Int(3); + fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[2] = BOX_NativeString("BOOLVALUE "); + REGB0 = TAG_Int(10); + fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); + once_value_1 = fra.me.REG[2]; + register_static_object(&once_value_1); + } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + REGB0 = CALL_icode_base___IBoolValue___value(fra.me.REG[0])(fra.me.REG[0]); + fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + if (!once_value_2) { + fra.me.REG[0] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_2 = fra.me.REG[0]; + register_static_object(&once_value_2); + } else fra.me.REG[0] = once_value_2; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); + goto label3; + label3: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} +val_t icode_dump___IStringValue___dump_intern(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 393; + fra.me.meth = LOCATE_icode_dump___IStringValue___dump_intern; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:395 */ + REGB0 = TAG_Int(3); + fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[2] = BOX_NativeString("STRINGVALUE "); + REGB0 = TAG_Int(12); + fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); + once_value_1 = fra.me.REG[2]; + register_static_object(&once_value_1); + } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[0] = CALL_icode_base___IStringValue___value(fra.me.REG[0])(fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + if (!once_value_2) { + fra.me.REG[0] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_2 = fra.me.REG[0]; + register_static_object(&once_value_2); + } else fra.me.REG[0] = once_value_2; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); + goto label3; + label3: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} +val_t icode_dump___ICharValue___dump_intern(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 400; + fra.me.meth = LOCATE_icode_dump___ICharValue___dump_intern; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:402 */ + REGB0 = TAG_Int(3); + fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[2] = BOX_NativeString("CHARVALUE "); + REGB0 = TAG_Int(10); + fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); + once_value_1 = fra.me.REG[2]; + register_static_object(&once_value_1); + } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[0] = CALL_icode_base___ICharValue___value(fra.me.REG[0])(fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + if (!once_value_2) { + fra.me.REG[0] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_2 = fra.me.REG[0]; + register_static_object(&once_value_2); + } else fra.me.REG[0] = once_value_2; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); + goto label3; + label3: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} +val_t icode_dump___IFloatValue___dump_intern(val_t p0, val_t p1){ + struct {struct stack_frame_t me; val_t MORE_REG[2];} fra; + val_t REGB0; + val_t tmp; + static val_t once_value_1; /* Once value */ + static val_t once_value_2; /* Once value */ + fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; + fra.me.file = LOCATE_icode_dump; + fra.me.line = 407; + fra.me.meth = LOCATE_icode_dump___IFloatValue___dump_intern; + fra.me.has_broke = 0; + fra.me.REG_size = 3; + fra.me.REG[0] = NIT_NULL; + fra.me.REG[1] = NIT_NULL; + fra.me.REG[2] = NIT_NULL; + fra.me.REG[0] = p0; + fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:409 */ + REGB0 = TAG_Int(3); + fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0); + if (!once_value_1) { + fra.me.REG[2] = BOX_NativeString("FLOATVALUE "); + REGB0 = TAG_Int(11); + fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0); + once_value_1 = fra.me.REG[2]; + register_static_object(&once_value_1); + } else fra.me.REG[2] = once_value_1; + fra.me.REG[2] = fra.me.REG[2]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); + fra.me.REG[0] = CALL_icode_base___IFloatValue___value(fra.me.REG[0])(fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + if (!once_value_2) { + fra.me.REG[0] = BOX_NativeString(""); + REGB0 = TAG_Int(0); + fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0); + once_value_2 = fra.me.REG[0]; + register_static_object(&once_value_2); + } else fra.me.REG[0] = once_value_2; + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); + fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]); + goto label3; + label3: while(0); + stack_frame_head = fra.me.prev; + return fra.me.REG[1]; +} val_t icode_dump___IMove___dump_intern(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra; val_t REGB0; @@ -2574,7 +3039,7 @@ val_t icode_dump___IMove___dump_intern(val_t p0, val_t p1){ static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 372; + fra.me.line = 414; fra.me.meth = LOCATE_icode_dump___IMove___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2584,9 +3049,9 @@ val_t icode_dump___IMove___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:416 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:374 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2594,10 +3059,11 @@ val_t icode_dump___IMove___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_2) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2605,7 +3071,8 @@ val_t icode_dump___IMove___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[0]; register_static_object(&once_value_2); } else fra.me.REG[0] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label3; label3: while(0); @@ -2621,7 +3088,7 @@ val_t icode_dump___IIs___dump_intern(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 379; + fra.me.line = 421; fra.me.meth = LOCATE_icode_dump___IIs___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2631,9 +3098,9 @@ val_t icode_dump___IIs___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:423 */ REGB0 = TAG_Int(5); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:381 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2641,10 +3108,11 @@ val_t icode_dump___IIs___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICode2___expr1(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString(" is "); REGB0 = TAG_Int(4); @@ -2652,10 +3120,11 @@ val_t icode_dump___IIs___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode2___expr2(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_3) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2663,7 +3132,8 @@ val_t icode_dump___IIs___dump_intern(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label4; label4: while(0); @@ -2678,7 +3148,7 @@ val_t icode_dump___INot___dump_intern(val_t p0, val_t p1){ static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 386; + fra.me.line = 428; fra.me.meth = LOCATE_icode_dump___INot___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2688,9 +3158,9 @@ val_t icode_dump___INot___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:430 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:388 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("NOT "); REGB0 = TAG_Int(4); @@ -2698,10 +3168,11 @@ val_t icode_dump___INot___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_2) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2709,7 +3180,8 @@ val_t icode_dump___INot___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[0]; register_static_object(&once_value_2); } else fra.me.REG[0] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label3; label3: while(0); @@ -2725,7 +3197,7 @@ void icode_dump___IOnce___dump(val_t p0, val_t p1){ static val_t once_value_3; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 393; + fra.me.line = 435; fra.me.meth = LOCATE_icode_dump___IOnce___dump; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2735,9 +3207,9 @@ void icode_dump___IOnce___dump(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:437 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:395 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2745,17 +3217,16 @@ void icode_dump___IOnce___dump(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[3] = CALL_icode_base___ICode___result(fra.me.REG[0])(fra.me.REG[0]); REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_IRegister, ID_IRegister)) /*cast IRegister*/; if (UNTAG_Bool(REGB0)) { } else { - fprintf(stderr, "Cast failed"); - fprintf(stderr, " (%s:%d)\n", LOCATE_icode_dump, 395); - nit_exit(1); + nit_abort("Cast failed", NULL, LOCATE_icode_dump, 437); } fra.me.REG[3] = CALL_icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]); - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); if (!once_value_2) { fra.me.REG[3] = BOX_NativeString(" := ONCE {"); REGB0 = TAG_Int(10); @@ -2763,17 +3234,18 @@ void icode_dump___IOnce___dump(val_t p0, val_t p1){ once_value_2 = fra.me.REG[3]; register_static_object(&once_value_2); } else fra.me.REG[3] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]); - /* ./analysis//icode_dump.nit:396 */ + /* ./analysis//icode_dump.nit:438 */ CALL_icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]); + /* ./analysis//icode_dump.nit:439 */ fra.me.REG[0] = CALL_icode_base___IOnce___body(fra.me.REG[0])(fra.me.REG[0]); - /* ./analysis//icode_dump.nit:397 */ CALL_icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); - /* ./analysis//icode_dump.nit:398 */ + /* ./analysis//icode_dump.nit:440 */ CALL_icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]); - /* ./analysis//icode_dump.nit:399 */ + /* ./analysis//icode_dump.nit:441 */ if (!once_value_3) { fra.me.REG[0] = BOX_NativeString("}"); REGB0 = TAG_Int(1); @@ -2781,6 +3253,7 @@ void icode_dump___IOnce___dump(val_t p0, val_t p1){ once_value_3 = fra.me.REG[0]; register_static_object(&once_value_3); } else fra.me.REG[0] = once_value_3; + fra.me.REG[0] = fra.me.REG[0]; CALL_icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); stack_frame_head = fra.me.prev; return; @@ -2793,7 +3266,7 @@ val_t icode_dump___IHasClos___dump_intern(val_t p0, val_t p1){ static val_t once_value_2; /* Once value */ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_icode_dump; - fra.me.line = 404; + fra.me.line = 446; fra.me.meth = LOCATE_icode_dump___IHasClos___dump_intern; fra.me.has_broke = 0; fra.me.REG_size = 4; @@ -2803,9 +3276,9 @@ val_t icode_dump___IHasClos___dump_intern(val_t p0, val_t p1){ fra.me.REG[3] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; + /* ./analysis//icode_dump.nit:448 */ REGB0 = TAG_Int(3); fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0); - /* ./analysis//icode_dump.nit:406 */ if (!once_value_1) { fra.me.REG[3] = BOX_NativeString("HASCLOS "); REGB0 = TAG_Int(8); @@ -2813,10 +3286,11 @@ val_t icode_dump___IHasClos___dump_intern(val_t p0, val_t p1){ once_value_1 = fra.me.REG[3]; register_static_object(&once_value_1); } else fra.me.REG[3] = once_value_1; - array___Array___add(fra.me.REG[2], fra.me.REG[3]); + fra.me.REG[3] = fra.me.REG[3]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]); fra.me.REG[0] = CALL_icode_base___IHasClos___closure_decl(fra.me.REG[0])(fra.me.REG[0]); fra.me.REG[0] = CALL_icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]); - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); if (!once_value_2) { fra.me.REG[0] = BOX_NativeString(""); REGB0 = TAG_Int(0); @@ -2824,7 +3298,8 @@ val_t icode_dump___IHasClos___dump_intern(val_t p0, val_t p1){ once_value_2 = fra.me.REG[0]; register_static_object(&once_value_2); } else fra.me.REG[0] = once_value_2; - array___Array___add(fra.me.REG[2], fra.me.REG[0]); + fra.me.REG[0] = fra.me.REG[0]; + CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]); fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]); goto label3; label3: while(0);