1 /* This C file is generated by NIT to compile module global___remove_out_of_init_get_test. */
2 #include "global___remove_out_of_init_get_test._sep.h"
3 val_t
global___remove_out_of_init_get_test___Program___nb_optimized_isset(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
10 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___Program___nb_optimized_isset
;
13 fra
.me
.nitni_local_ref_head
= NULL
;
14 fra
.me
.REG
[0] = NIT_NULL
;
16 /* global/remove_out_of_init_get_test.nit:24 */
17 REGB0
= TAG_Bool(ATTR_global___remove_out_of_init_get_test___Program____nb_optimized_isset(fra
.me
.REG
[0])!=NIT_NULL
);
18 if (UNTAG_Bool(REGB0
)) {
20 nit_abort("Uninitialized attribute %s", "_nb_optimized_isset", LOCATE_global___remove_out_of_init_get_test
, 24);
22 REGB0
= ATTR_global___remove_out_of_init_get_test___Program____nb_optimized_isset(fra
.me
.REG
[0]);
23 stack_frame_head
= fra
.me
.prev
;
26 void global___remove_out_of_init_get_test___Program___optimize_out_of_init_getters(val_t p0
){
27 struct {struct stack_frame_t me
;} fra
;
29 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
30 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
32 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___Program___optimize_out_of_init_getters
;
35 fra
.me
.nitni_local_ref_head
= NULL
;
36 fra
.me
.REG
[0] = NIT_NULL
;
38 CALL_program___Program___with_each_iroutines(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_global___remove_out_of_init_get_test___Program___optimize_out_of_init_getters_1
));
39 stack_frame_head
= fra
.me
.prev
;
42 void OC_global___remove_out_of_init_get_test___Program___optimize_out_of_init_getters_1(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
43 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
47 /* global/remove_out_of_init_get_test.nit:30 */
48 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
49 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
51 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___Program___optimize_out_of_init_getters
;
54 fra
.me
.nitni_local_ref_head
= NULL
;
55 fra
.me
.REG
[0] = NIT_NULL
;
56 fra
.me
.REG
[1] = NIT_NULL
;
59 /* global/remove_out_of_init_get_test.nit:31 */
60 fra
.me
.REG
[1] = CALL_global___reachable_from_init_method_analysis___Program___rfima(closctx
->REG
[0])(closctx
->REG
[0]);
61 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
62 if (UNTAG_Bool(REGB0
)) {
63 nit_abort("Reciever is null", NULL
, LOCATE_global___remove_out_of_init_get_test
, 31);
65 REGB0
= CALL_global___reachable_from_init_method_analysis___ReachableFromInitMethodAnalysis___is_iroutine_reachable_from_init(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
66 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
67 if (UNTAG_Bool(REGB0
)) {
68 /* global/remove_out_of_init_get_test.nit:32 */
69 fra
.me
.REG
[1] = NEW_GetterTestRemover_icode___icode_tools___ICodeVisitor___init();
70 /* global/remove_out_of_init_get_test.nit:33 */
71 CALL_icode___icode_tools___ICodeVisitor___visit_iroutine(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
72 /* global/remove_out_of_init_get_test.nit:34 */
73 REGB0
= CALL_global___remove_out_of_init_get_test___Program___nb_optimized_isset(closctx
->REG
[0])(closctx
->REG
[0]);
74 REGB1
= CALL_global___remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
75 /* ../lib/standard/kernel.nit:235 */
76 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
77 /* global/remove_out_of_init_get_test.nit:34 */
78 ATTR_global___remove_out_of_init_get_test___Program____nb_optimized_isset(closctx
->REG
[0]) = REGB1
;
80 stack_frame_head
= fra
.me
.prev
;
83 void global___remove_out_of_init_get_test___Program___dump_out_of_init_information(val_t p0
, val_t p1
){
84 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
87 static val_t once_value_1
; /* Once value */
88 static val_t once_value_2
; /* Once value */
89 static val_t once_value_3
; /* Once value */
90 static val_t once_value_5
; /* Once value */
91 static val_t once_value_6
; /* Once value */
92 static val_t once_value_7
; /* Once value */
93 static val_t once_value_8
; /* Once value */
94 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
95 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
97 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___Program___dump_out_of_init_information
;
100 fra
.me
.nitni_local_ref_head
= NULL
;
101 fra
.me
.REG
[0] = NIT_NULL
;
102 fra
.me
.REG
[1] = NIT_NULL
;
103 fra
.me
.REG
[2] = NIT_NULL
;
104 fra
.me
.REG
[3] = NIT_NULL
;
105 fra
.me
.REG
[4] = NIT_NULL
;
108 /* global/remove_out_of_init_get_test.nit:41 */
110 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
112 fra
.me
.REG
[3] = BOX_NativeString("");
114 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
115 once_value_1
= fra
.me
.REG
[3];
116 register_static_object(&once_value_1
);
117 } else fra
.me
.REG
[3] = once_value_1
;
118 fra
.me
.REG
[3] = fra
.me
.REG
[3];
119 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
120 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
122 fra
.me
.REG
[1] = BOX_NativeString("/");
124 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
125 once_value_2
= fra
.me
.REG
[1];
126 register_static_object(&once_value_2
);
127 } else fra
.me
.REG
[1] = once_value_2
;
128 fra
.me
.REG
[1] = fra
.me
.REG
[1];
129 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
130 fra
.me
.REG
[1] = CALL_program___Program___main_module(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
131 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
132 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
133 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
135 fra
.me
.REG
[1] = BOX_NativeString(".out_of_init_opt.log");
137 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
138 once_value_3
= fra
.me
.REG
[1];
139 register_static_object(&once_value_3
);
140 } else fra
.me
.REG
[1] = once_value_3
;
141 fra
.me
.REG
[1] = fra
.me
.REG
[1];
142 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
143 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
144 fra
.me
.REG
[2] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[2]);
145 /* global/remove_out_of_init_get_test.nit:42 */
147 fra
.me
.REG
[1] = REGB0
;
148 CALL_program___Program___with_each_iroutines(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_global___remove_out_of_init_get_test___Program___dump_out_of_init_information_4
));
149 /* global/remove_out_of_init_get_test.nit:50 */
151 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
153 fra
.me
.REG
[4] = BOX_NativeString("Nb. optimized isset: ");
155 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
156 once_value_5
= fra
.me
.REG
[4];
157 register_static_object(&once_value_5
);
158 } else fra
.me
.REG
[4] = once_value_5
;
159 fra
.me
.REG
[4] = fra
.me
.REG
[4];
160 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
161 REGB0
= CALL_global___remove_out_of_init_get_test___Program___nb_optimized_isset(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
162 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
163 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
165 fra
.me
.REG
[0] = BOX_NativeString("\n");
167 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
168 once_value_6
= fra
.me
.REG
[0];
169 register_static_object(&once_value_6
);
170 } else fra
.me
.REG
[0] = once_value_6
;
171 fra
.me
.REG
[0] = fra
.me
.REG
[0];
172 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
173 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
174 CALL_standard___stream___OStream___write(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
175 /* global/remove_out_of_init_get_test.nit:51 */
177 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
179 fra
.me
.REG
[0] = BOX_NativeString("Nb. not optimized: ");
181 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
182 once_value_7
= fra
.me
.REG
[0];
183 register_static_object(&once_value_7
);
184 } else fra
.me
.REG
[0] = once_value_7
;
185 fra
.me
.REG
[0] = fra
.me
.REG
[0];
186 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
187 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
188 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
190 fra
.me
.REG
[1] = BOX_NativeString("\n");
192 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
193 once_value_8
= fra
.me
.REG
[1];
194 register_static_object(&once_value_8
);
195 } else fra
.me
.REG
[1] = once_value_8
;
196 fra
.me
.REG
[1] = fra
.me
.REG
[1];
197 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
198 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
199 CALL_standard___stream___OStream___write(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
200 /* global/remove_out_of_init_get_test.nit:53 */
201 CALL_standard___stream___IOS___close(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
202 stack_frame_head
= fra
.me
.prev
;
205 void OC_global___remove_out_of_init_get_test___Program___dump_out_of_init_information_4(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
206 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
209 /* global/remove_out_of_init_get_test.nit:44 */
210 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
211 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
213 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___Program___dump_out_of_init_information
;
214 fra
.me
.has_broke
= 0;
216 fra
.me
.nitni_local_ref_head
= NULL
;
217 fra
.me
.REG
[0] = NIT_NULL
;
218 fra
.me
.REG
[1] = NIT_NULL
;
221 /* global/remove_out_of_init_get_test.nit:45 */
222 fra
.me
.REG
[1] = NEW_IssetCounter_icode___icode_tools___ICodeVisitor___init();
223 /* global/remove_out_of_init_get_test.nit:46 */
224 CALL_icode___icode_tools___ICodeVisitor___visit_iroutine(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
225 /* global/remove_out_of_init_get_test.nit:47 */
226 REGB0
= CALL_global___remove_out_of_init_get_test___IssetCounter___nb_isset(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
227 /* ../lib/standard/kernel.nit:235 */
228 REGB0
= TAG_Int(UNTAG_Int(closctx
->REG
[1])+UNTAG_Int(REGB0
));
229 /* global/remove_out_of_init_get_test.nit:47 */
230 closctx
->REG
[1] = REGB0
;
231 stack_frame_head
= fra
.me
.prev
;
234 val_t
global___remove_out_of_init_get_test___IssetCounter___nb_isset(val_t p0
){
235 struct {struct stack_frame_t me
;} fra
;
238 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
239 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
241 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___IssetCounter___nb_isset
;
242 fra
.me
.has_broke
= 0;
244 fra
.me
.nitni_local_ref_head
= NULL
;
245 fra
.me
.REG
[0] = NIT_NULL
;
247 /* global/remove_out_of_init_get_test.nit:59 */
248 REGB0
= TAG_Bool(ATTR_global___remove_out_of_init_get_test___IssetCounter____nb_isset(fra
.me
.REG
[0])!=NIT_NULL
);
249 if (UNTAG_Bool(REGB0
)) {
251 nit_abort("Uninitialized attribute %s", "_nb_isset", LOCATE_global___remove_out_of_init_get_test
, 59);
253 REGB0
= ATTR_global___remove_out_of_init_get_test___IssetCounter____nb_isset(fra
.me
.REG
[0]);
254 stack_frame_head
= fra
.me
.prev
;
257 void global___remove_out_of_init_get_test___IssetCounter___visit_icode(val_t p0
, val_t p1
){
258 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
262 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
263 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
265 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___IssetCounter___visit_icode
;
266 fra
.me
.has_broke
= 0;
268 fra
.me
.nitni_local_ref_head
= NULL
;
269 fra
.me
.REG
[0] = NIT_NULL
;
270 fra
.me
.REG
[1] = NIT_NULL
;
271 fra
.me
.REG
[2] = NIT_NULL
;
272 fra
.me
.REG
[3] = NIT_NULL
;
275 /* global/remove_out_of_init_get_test.nit:61 */
276 fra
.me
.REG
[2] = fra
.me
.REG
[0];
277 fra
.me
.REG
[3] = fra
.me
.REG
[1];
278 /* global/remove_out_of_init_get_test.nit:63 */
279 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*/;
280 if (UNTAG_Bool(REGB0
)) {
281 /* global/remove_out_of_init_get_test.nit:64 */
282 REGB0
= CALL_global___remove_out_of_init_get_test___IssetCounter___nb_isset(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
284 /* ../lib/standard/kernel.nit:235 */
285 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
286 /* global/remove_out_of_init_get_test.nit:64 */
287 ATTR_global___remove_out_of_init_get_test___IssetCounter____nb_isset(fra
.me
.REG
[2]) = REGB1
;
289 /* global/remove_out_of_init_get_test.nit:67 */
290 CALL_SUPER_global___remove_out_of_init_get_test___IssetCounter___visit_icode(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
291 stack_frame_head
= fra
.me
.prev
;
294 val_t
global___remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(val_t p0
){
295 struct {struct stack_frame_t me
;} fra
;
298 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
299 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
301 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset
;
302 fra
.me
.has_broke
= 0;
304 fra
.me
.nitni_local_ref_head
= NULL
;
305 fra
.me
.REG
[0] = NIT_NULL
;
307 /* global/remove_out_of_init_get_test.nit:73 */
308 REGB0
= TAG_Bool(ATTR_global___remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra
.me
.REG
[0])!=NIT_NULL
);
309 if (UNTAG_Bool(REGB0
)) {
311 nit_abort("Uninitialized attribute %s", "_nb_optimized_isset", LOCATE_global___remove_out_of_init_get_test
, 73);
313 REGB0
= ATTR_global___remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra
.me
.REG
[0]);
314 stack_frame_head
= fra
.me
.prev
;
317 void global___remove_out_of_init_get_test___GetterTestRemover___visit_icode(val_t p0
, val_t p1
){
318 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
322 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
323 fra
.me
.file
= LOCATE_global___remove_out_of_init_get_test
;
325 fra
.me
.meth
= LOCATE_global___remove_out_of_init_get_test___GetterTestRemover___visit_icode
;
326 fra
.me
.has_broke
= 0;
328 fra
.me
.nitni_local_ref_head
= NULL
;
329 fra
.me
.REG
[0] = NIT_NULL
;
330 fra
.me
.REG
[1] = NIT_NULL
;
331 fra
.me
.REG
[2] = NIT_NULL
;
332 fra
.me
.REG
[3] = NIT_NULL
;
333 fra
.me
.REG
[4] = NIT_NULL
;
336 /* global/remove_out_of_init_get_test.nit:75 */
337 fra
.me
.REG
[2] = fra
.me
.REG
[0];
338 fra
.me
.REG
[3] = fra
.me
.REG
[1];
339 /* global/remove_out_of_init_get_test.nit:78 */
340 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*/;
341 if (UNTAG_Bool(REGB0
)) {
342 /* global/remove_out_of_init_get_test.nit:79 */
343 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
344 if (UNTAG_Bool(REGB0
)) {
345 nit_abort("Reciever is null", NULL
, LOCATE_global___remove_out_of_init_get_test
, 79);
347 fra
.me
.REG
[3] = CALL_icode___icode_base___ICode___result(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
348 /* global/remove_out_of_init_get_test.nit:80 */
349 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
350 if (UNTAG_Bool(REGB0
)) {
352 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
353 if (UNTAG_Bool(REGB1
)) {
354 REGB1
= TAG_Bool(false);
357 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
361 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
362 if (UNTAG_Bool(REGB0
)) {
364 nit_abort("Assert failed", NULL
, LOCATE_global___remove_out_of_init_get_test
, 80);
366 /* global/remove_out_of_init_get_test.nit:81 */
367 REGB0
= TAG_Bool(true);
368 fra
.me
.REG
[4] = NEW_IBoolValue_icode___icode_base___IBoolValue___init(REGB0
);
369 /* global/remove_out_of_init_get_test.nit:82 */
370 CALL_icode___icode_base___ICode___result__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
371 /* global/remove_out_of_init_get_test.nit:83 */
372 fra
.me
.REG
[3] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
373 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
374 if (UNTAG_Bool(REGB0
)) {
375 nit_abort("Reciever is null", NULL
, LOCATE_global___remove_out_of_init_get_test
, 83);
377 CALL_standard___collection___list___ListIterator___insert_before(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
378 /* global/remove_out_of_init_get_test.nit:84 */
379 fra
.me
.REG
[4] = CALL_icode___icode_tools___ICodeVisitor___current_icode(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
380 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
381 if (UNTAG_Bool(REGB0
)) {
382 nit_abort("Reciever is null", NULL
, LOCATE_global___remove_out_of_init_get_test
, 84);
384 CALL_standard___collection___list___ListIterator___delete(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
385 /* global/remove_out_of_init_get_test.nit:85 */
386 REGB0
= CALL_global___remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
388 /* ../lib/standard/kernel.nit:235 */
389 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
390 /* global/remove_out_of_init_get_test.nit:85 */
391 ATTR_global___remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra
.me
.REG
[2]) = REGB1
;
393 /* global/remove_out_of_init_get_test.nit:88 */
394 CALL_SUPER_global___remove_out_of_init_get_test___GetterTestRemover___visit_icode(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
395 stack_frame_head
= fra
.me
.prev
;