void global___remove_out_of_init_get_test___GetterTestRemover___visit_icode(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra; val_t REGB0; val_t REGB1; val_t tmp; fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_global___remove_out_of_init_get_test; fra.me.line = 75; fra.me.meth = LOCATE_global___remove_out_of_init_get_test___GetterTestRemover___visit_icode; fra.me.has_broke = 0; fra.me.REG_size = 5; fra.me.nitni_local_ref_head = NULL; 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; /* global/remove_out_of_init_get_test.nit:75 */ fra.me.REG[2] = fra.me.REG[0]; fra.me.REG[3] = fra.me.REG[1]; /* global/remove_out_of_init_get_test.nit:78 */ REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_icode___icode_base___IAttrIsset, ID_icode___icode_base___IAttrIsset)) /*cast IAttrIsset*/; if (UNTAG_Bool(REGB0)) { /* global/remove_out_of_init_get_test.nit:79 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_global___remove_out_of_init_get_test, 79); } fra.me.REG[3] = CALL_icode___icode_base___ICode___result(fra.me.REG[3])(fra.me.REG[3]); /* global/remove_out_of_init_get_test.nit:80 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB1)) { REGB1 = TAG_Bool(0); REGB0 = REGB1; } else { REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); REGB0 = REGB1; } } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { } else { nit_abort("Assert failed", NULL, LOCATE_global___remove_out_of_init_get_test, 80); } /* global/remove_out_of_init_get_test.nit:81 */ REGB0 = TAG_Bool(1); fra.me.REG[4] = NEW_IBoolValue_icode___icode_base___IBoolValue___init(REGB0); /* global/remove_out_of_init_get_test.nit:82 */ CALL_icode___icode_base___ICode___result__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]); /* global/remove_out_of_init_get_test.nit:83 */ fra.me.REG[3] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_global___remove_out_of_init_get_test, 83); } CALL_standard___collection___list___ListIterator___insert_before(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]); /* global/remove_out_of_init_get_test.nit:84 */ fra.me.REG[4] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_global___remove_out_of_init_get_test, 84); } CALL_standard___collection___list___ListIterator___delete(fra.me.REG[4])(fra.me.REG[4]); /* global/remove_out_of_init_get_test.nit:85 */ REGB0 = CALL_global___remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(fra.me.REG[2])(fra.me.REG[2]); REGB1 = TAG_Int(1); /* ../lib/standard/kernel.nit:238 */ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1)); /* global/remove_out_of_init_get_test.nit:85 */ ATTR_global___remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra.me.REG[2]) = REGB1; } /* global/remove_out_of_init_get_test.nit:88 */ CALL_SUPER_global___remove_out_of_init_get_test___GetterTestRemover___visit_icode(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); stack_frame_head = fra.me.prev; return; }
void analysis___inline_methods___InlineMethodVisitor___visit_icode(val_t p0, val_t p1){ struct {struct stack_frame_t me; val_t MORE_REG[9];} fra; val_t REGB0; val_t REGB1; val_t tmp; fra.me.prev = stack_frame_head; stack_frame_head = &fra.me; fra.me.file = LOCATE_analysis___inline_methods; fra.me.line = 27; fra.me.meth = LOCATE_analysis___inline_methods___InlineMethodVisitor___visit_icode; fra.me.has_broke = 0; fra.me.REG_size = 10; fra.me.nitni_local_ref_head = NULL; 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[5] = NIT_NULL; fra.me.REG[6] = NIT_NULL; fra.me.REG[7] = NIT_NULL; fra.me.REG[8] = NIT_NULL; fra.me.REG[9] = NIT_NULL; fra.me.REG[0] = p0; fra.me.REG[1] = p1; /* analysis/inline_methods.nit:27 */ fra.me.REG[2] = fra.me.REG[0]; fra.me.REG[3] = fra.me.REG[1]; /* analysis/inline_methods.nit:29 */ REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_icode___icode_base___ICall, ID_icode___icode_base___ICall)) /*cast ICall*/; if (UNTAG_Bool(REGB0)) { REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 29); } REGB0 = CALL_icode___icode_base___IAbsCall___is_explicit_from_extern(fra.me.REG[3])(fra.me.REG[3]); REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); } else { REGB1 = TAG_Bool(false); REGB0 = REGB1; } if (UNTAG_Bool(REGB0)) { /* analysis/inline_methods.nit:30 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 30); } fra.me.REG[4] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[3])(fra.me.REG[3]); /* analysis/inline_methods.nit:31 */ fra.me.REG[4] = CALL_icode___icode_base___MMMethod___iroutine(fra.me.REG[4])(fra.me.REG[4]); /* analysis/inline_methods.nit:32 */ REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL); if (UNTAG_Bool(REGB1)) { REGB1 = TAG_Bool(false); REGB0 = REGB1; } else { REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL); REGB0 = REGB1; } } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 32); } REGB0 = CALL_analysis___inline_methods___ICall___is_inlinable(fra.me.REG[3])(fra.me.REG[3]); } else { REGB1 = TAG_Bool(false); REGB0 = REGB1; } if (UNTAG_Bool(REGB0)) { /* analysis/inline_methods.nit:33 */ REGB0 = TAG_Bool(ATTR_analysis___inline_methods___InlineMethodVisitor____icb(fra.me.REG[2])!=NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { nit_abort("Uninitialized attribute %s", "_icb", LOCATE_analysis___inline_methods, 33); } fra.me.REG[5] = ATTR_analysis___inline_methods___InlineMethodVisitor____icb(fra.me.REG[2]); /* analysis/inline_methods.nit:34 */ fra.me.REG[6] = CALL_icode___icode_builder___ICodeBuilder___iroutine(fra.me.REG[5])(fra.me.REG[5]); REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[6],fra.me.REG[4])); if (UNTAG_Bool(REGB0)) { } else { REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]); REGB0 = REGB1; } if (UNTAG_Bool(REGB0)) { /* analysis/inline_methods.nit:37 */ fra.me.REG[6] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 37); } CALL_standard___collection___list___ListIterator___delete(fra.me.REG[6])(fra.me.REG[6]); /* analysis/inline_methods.nit:38 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 38); } fra.me.REG[6] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[3])(fra.me.REG[3]); REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 38); } fra.me.REG[7] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[3])(fra.me.REG[3]); fra.me.REG[7] = NEW_IStaticCall_icode___icode_base___IStaticCall___init(fra.me.REG[6], fra.me.REG[7]); /* analysis/inline_methods.nit:39 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 39); } fra.me.REG[6] = CALL_icode___icode_base___ICodeN___closure_defs(fra.me.REG[3])(fra.me.REG[3]); CALL_icode___icode_base___ICodeN___closure_defs__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]); /* analysis/inline_methods.nit:40 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 40); } fra.me.REG[6] = CALL_icode___icode_base___ICode___result(fra.me.REG[3])(fra.me.REG[3]); CALL_icode___icode_base___ICode___result__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]); /* analysis/inline_methods.nit:41 */ fra.me.REG[6] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 41); } CALL_standard___collection___list___ListIterator___insert_before(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]); /* analysis/inline_methods.nit:42 */ fra.me.REG[7] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 42); } CALL_standard___collection___list___ListIterator___delete(fra.me.REG[7])(fra.me.REG[7]); } else { /* analysis/inline_methods.nit:44 */ fra.me.REG[7] = NEW_ISeq_icode___icode_base___ISeq___init(); /* analysis/inline_methods.nit:45 */ fra.me.REG[6] = CALL_icode___icode_builder___ICodeBuilder___seq(fra.me.REG[5])(fra.me.REG[5]); /* analysis/inline_methods.nit:46 */ CALL_icode___icode_builder___ICodeBuilder___seq__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]); /* analysis/inline_methods.nit:47 */ fra.me.REG[8] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 47); } CALL_standard___collection___list___ListIterator___insert_before(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[7]); /* analysis/inline_methods.nit:48 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 48); } fra.me.REG[8] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[3])(fra.me.REG[3]); REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 48); } fra.me.REG[9] = CALL_icode___icode_base___ICodeN___closure_defs(fra.me.REG[3])(fra.me.REG[3]); fra.me.REG[9] = CALL_icode___icode_tools___ICodeBuilder___inline_routine(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4], fra.me.REG[8], fra.me.REG[9]); /* analysis/inline_methods.nit:49 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 49); } fra.me.REG[3] = CALL_icode___icode_base___ICode___result(fra.me.REG[3])(fra.me.REG[3]); /* analysis/inline_methods.nit:50 */ REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL); if (UNTAG_Bool(REGB1)) { REGB1 = TAG_Bool(false); REGB0 = REGB1; } else { REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL); REGB0 = REGB1; } } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { /* analysis/inline_methods.nit:51 */ REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL); if (UNTAG_Bool(REGB0)) { } else { REGB1 = TAG_Bool(fra.me.REG[9]==NIT_NULL); if (UNTAG_Bool(REGB1)) { REGB1 = TAG_Bool(false); REGB0 = REGB1; } else { REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[9])(fra.me.REG[9], NIT_NULL); REGB0 = REGB1; } } REGB0 = TAG_Bool(!UNTAG_Bool(REGB0)); if (UNTAG_Bool(REGB0)) { } else { nit_abort("Assert failed", NULL, LOCATE_analysis___inline_methods, 51); } /* analysis/inline_methods.nit:52 */ fra.me.REG[8] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); fra.me.REG[9] = NEW_IMove_icode___icode_base___IMove___init(fra.me.REG[3], fra.me.REG[9]); REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 52); } CALL_standard___collection___list___ListIterator___insert_before(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[9]); } /* analysis/inline_methods.nit:54 */ fra.me.REG[9] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]); REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL); if (UNTAG_Bool(REGB0)) { nit_abort("Reciever is null", NULL, LOCATE_analysis___inline_methods, 54); } CALL_standard___collection___list___ListIterator___delete(fra.me.REG[9])(fra.me.REG[9]); /* analysis/inline_methods.nit:55 */ CALL_icode___icode_builder___ICodeBuilder___seq__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]); /* analysis/inline_methods.nit:56 */ CALL_icode___icode_tools___ICodeVisitor___visit_icode(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]); } } } /* analysis/inline_methods.nit:60 */ CALL_SUPER_analysis___inline_methods___InlineMethodVisitor___visit_icode(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]); stack_frame_head = fra.me.prev; return; }