update NOTICE and LICENSE
[nit.git] / c_src / remove_out_of_init_get_test._sep.c
1 /* This C file is generated by NIT to compile module remove_out_of_init_get_test. */
2 #include "remove_out_of_init_get_test._sep.h"
3 val_t remove_out_of_init_get_test___Program___nb_optimized_isset(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t tmp;
7 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
8 fra.me.file = LOCATE_remove_out_of_init_get_test;
9 fra.me.line = 24;
10 fra.me.meth = LOCATE_remove_out_of_init_get_test___Program___nb_optimized_isset;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.REG[0] = NIT_NULL;
14 fra.me.REG[0] = p0;
15 /* ./analysis//remove_out_of_init_get_test.nit:24 */
16 REGB0 = TAG_Bool(ATTR_remove_out_of_init_get_test___Program____nb_optimized_isset(fra.me.REG[0])!=NIT_NULL);
17 if (UNTAG_Bool(REGB0)) {
18 } else {
19 nit_abort("Uninitialized attribute %s", "_nb_optimized_isset", LOCATE_remove_out_of_init_get_test, 24);
20 }
21 REGB0 = ATTR_remove_out_of_init_get_test___Program____nb_optimized_isset(fra.me.REG[0]);
22 stack_frame_head = fra.me.prev;
23 return REGB0;
24 }
25 void remove_out_of_init_get_test___Program___optimize_out_of_init_getters(val_t p0){
26 struct {struct stack_frame_t me;} fra;
27 val_t tmp;
28 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
29 fra.me.file = LOCATE_remove_out_of_init_get_test;
30 fra.me.line = 26;
31 fra.me.meth = LOCATE_remove_out_of_init_get_test___Program___optimize_out_of_init_getters;
32 fra.me.has_broke = 0;
33 fra.me.REG_size = 1;
34 fra.me.REG[0] = NIT_NULL;
35 fra.me.REG[0] = p0;
36 CALL_program___Program___with_each_iroutines(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_remove_out_of_init_get_test___Program___optimize_out_of_init_getters_1));
37 stack_frame_head = fra.me.prev;
38 return;
39 }
40 void OC_remove_out_of_init_get_test___Program___optimize_out_of_init_getters_1(struct stack_frame_t *closctx, val_t p0, val_t p1){
41 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
42 val_t REGB0;
43 val_t REGB1;
44 val_t tmp;
45 /* ./analysis//remove_out_of_init_get_test.nit:30 */
46 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
47 fra.me.file = LOCATE_remove_out_of_init_get_test;
48 fra.me.line = 30;
49 fra.me.meth = LOCATE_remove_out_of_init_get_test___Program___optimize_out_of_init_getters;
50 fra.me.has_broke = 0;
51 fra.me.REG_size = 2;
52 fra.me.REG[0] = NIT_NULL;
53 fra.me.REG[1] = NIT_NULL;
54 fra.me.REG[0] = p0;
55 fra.me.REG[1] = p1;
56 /* ./analysis//remove_out_of_init_get_test.nit:31 */
57 fra.me.REG[1] = CALL_reachable_from_init_method_analysis___Program___rfima(closctx->REG[0])(closctx->REG[0]);
58 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
59 if (UNTAG_Bool(REGB0)) {
60 nit_abort("Reciever is null", NULL, LOCATE_remove_out_of_init_get_test, 31);
61 }
62 REGB0 = CALL_reachable_from_init_method_analysis___ReachableFromInitMethodAnalysis___is_iroutine_reachable_from_init(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
63 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
64 if (UNTAG_Bool(REGB0)) {
65 /* ./analysis//remove_out_of_init_get_test.nit:32 */
66 fra.me.REG[1] = NEW_GetterTestRemover_icode_tools___ICodeVisitor___init();
67 /* ./analysis//remove_out_of_init_get_test.nit:33 */
68 CALL_icode_tools___ICodeVisitor___visit_iroutine(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
69 /* ./analysis//remove_out_of_init_get_test.nit:34 */
70 REGB0 = CALL_remove_out_of_init_get_test___Program___nb_optimized_isset(closctx->REG[0])(closctx->REG[0]);
71 REGB1 = CALL_remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(fra.me.REG[1])(fra.me.REG[1]);
72 /* ./../lib/standard//kernel.nit:215 */
73 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
74 /* ./analysis//remove_out_of_init_get_test.nit:34 */
75 ATTR_remove_out_of_init_get_test___Program____nb_optimized_isset(closctx->REG[0]) = REGB1;
76 }
77 stack_frame_head = fra.me.prev;
78 return;
79 }
80 void remove_out_of_init_get_test___Program___dump_out_of_init_information(val_t p0, val_t p1){
81 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
82 val_t REGB0;
83 val_t tmp;
84 static val_t once_value_1; /* Once value */
85 static val_t once_value_2; /* Once value */
86 static val_t once_value_3; /* Once value */
87 static val_t once_value_5; /* Once value */
88 static val_t once_value_6; /* Once value */
89 static val_t once_value_7; /* Once value */
90 static val_t once_value_8; /* Once value */
91 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
92 fra.me.file = LOCATE_remove_out_of_init_get_test;
93 fra.me.line = 39;
94 fra.me.meth = LOCATE_remove_out_of_init_get_test___Program___dump_out_of_init_information;
95 fra.me.has_broke = 0;
96 fra.me.REG_size = 5;
97 fra.me.REG[0] = NIT_NULL;
98 fra.me.REG[1] = NIT_NULL;
99 fra.me.REG[2] = NIT_NULL;
100 fra.me.REG[3] = NIT_NULL;
101 fra.me.REG[4] = NIT_NULL;
102 fra.me.REG[0] = p0;
103 fra.me.REG[1] = p1;
104 /* ./analysis//remove_out_of_init_get_test.nit:41 */
105 REGB0 = TAG_Int(5);
106 fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
107 if (!once_value_1) {
108 fra.me.REG[3] = BOX_NativeString("");
109 REGB0 = TAG_Int(0);
110 fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
111 once_value_1 = fra.me.REG[3];
112 register_static_object(&once_value_1);
113 } else fra.me.REG[3] = once_value_1;
114 fra.me.REG[3] = fra.me.REG[3];
115 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
116 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
117 if (!once_value_2) {
118 fra.me.REG[1] = BOX_NativeString("/");
119 REGB0 = TAG_Int(1);
120 fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
121 once_value_2 = fra.me.REG[1];
122 register_static_object(&once_value_2);
123 } else fra.me.REG[1] = once_value_2;
124 fra.me.REG[1] = fra.me.REG[1];
125 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
126 fra.me.REG[1] = CALL_program___Program___main_module(fra.me.REG[0])(fra.me.REG[0]);
127 fra.me.REG[1] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[1])(fra.me.REG[1]);
128 fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
129 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
130 if (!once_value_3) {
131 fra.me.REG[1] = BOX_NativeString(".out_of_init_opt.log");
132 REGB0 = TAG_Int(20);
133 fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
134 once_value_3 = fra.me.REG[1];
135 register_static_object(&once_value_3);
136 } else fra.me.REG[1] = once_value_3;
137 fra.me.REG[1] = fra.me.REG[1];
138 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
139 fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
140 fra.me.REG[2] = NEW_OFStream_file___OFStream___open(fra.me.REG[2]);
141 /* ./analysis//remove_out_of_init_get_test.nit:42 */
142 REGB0 = TAG_Int(0);
143 fra.me.REG[1] = REGB0;
144 CALL_program___Program___with_each_iroutines(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_remove_out_of_init_get_test___Program___dump_out_of_init_information_4));
145 /* ./analysis//remove_out_of_init_get_test.nit:50 */
146 REGB0 = TAG_Int(3);
147 fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
148 if (!once_value_5) {
149 fra.me.REG[4] = BOX_NativeString("Nb. optimized isset: ");
150 REGB0 = TAG_Int(21);
151 fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
152 once_value_5 = fra.me.REG[4];
153 register_static_object(&once_value_5);
154 } else fra.me.REG[4] = once_value_5;
155 fra.me.REG[4] = fra.me.REG[4];
156 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
157 REGB0 = CALL_remove_out_of_init_get_test___Program___nb_optimized_isset(fra.me.REG[0])(fra.me.REG[0]);
158 fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
159 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
160 if (!once_value_6) {
161 fra.me.REG[0] = BOX_NativeString("\n");
162 REGB0 = TAG_Int(1);
163 fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
164 once_value_6 = fra.me.REG[0];
165 register_static_object(&once_value_6);
166 } else fra.me.REG[0] = once_value_6;
167 fra.me.REG[0] = fra.me.REG[0];
168 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
169 fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
170 CALL_stream___OStream___write(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
171 /* ./analysis//remove_out_of_init_get_test.nit:51 */
172 REGB0 = TAG_Int(3);
173 fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
174 if (!once_value_7) {
175 fra.me.REG[0] = BOX_NativeString("Nb. not optimized: ");
176 REGB0 = TAG_Int(19);
177 fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
178 once_value_7 = fra.me.REG[0];
179 register_static_object(&once_value_7);
180 } else fra.me.REG[0] = once_value_7;
181 fra.me.REG[0] = fra.me.REG[0];
182 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
183 fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
184 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
185 if (!once_value_8) {
186 fra.me.REG[1] = BOX_NativeString("\n");
187 REGB0 = TAG_Int(1);
188 fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
189 once_value_8 = fra.me.REG[1];
190 register_static_object(&once_value_8);
191 } else fra.me.REG[1] = once_value_8;
192 fra.me.REG[1] = fra.me.REG[1];
193 CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
194 fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
195 CALL_stream___OStream___write(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
196 /* ./analysis//remove_out_of_init_get_test.nit:53 */
197 CALL_stream___IOS___close(fra.me.REG[2])(fra.me.REG[2]);
198 stack_frame_head = fra.me.prev;
199 return;
200 }
201 void OC_remove_out_of_init_get_test___Program___dump_out_of_init_information_4(struct stack_frame_t *closctx, val_t p0, val_t p1){
202 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
203 val_t REGB0;
204 val_t tmp;
205 /* ./analysis//remove_out_of_init_get_test.nit:44 */
206 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
207 fra.me.file = LOCATE_remove_out_of_init_get_test;
208 fra.me.line = 44;
209 fra.me.meth = LOCATE_remove_out_of_init_get_test___Program___dump_out_of_init_information;
210 fra.me.has_broke = 0;
211 fra.me.REG_size = 2;
212 fra.me.REG[0] = NIT_NULL;
213 fra.me.REG[1] = NIT_NULL;
214 fra.me.REG[0] = p0;
215 fra.me.REG[1] = p1;
216 /* ./analysis//remove_out_of_init_get_test.nit:45 */
217 fra.me.REG[1] = NEW_IssetCounter_icode_tools___ICodeVisitor___init();
218 /* ./analysis//remove_out_of_init_get_test.nit:46 */
219 CALL_icode_tools___ICodeVisitor___visit_iroutine(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
220 /* ./analysis//remove_out_of_init_get_test.nit:47 */
221 REGB0 = CALL_remove_out_of_init_get_test___IssetCounter___nb_isset(fra.me.REG[1])(fra.me.REG[1]);
222 /* ./../lib/standard//kernel.nit:215 */
223 REGB0 = TAG_Int(UNTAG_Int(closctx->REG[1])+UNTAG_Int(REGB0));
224 /* ./analysis//remove_out_of_init_get_test.nit:47 */
225 closctx->REG[1] = REGB0;
226 stack_frame_head = fra.me.prev;
227 return;
228 }
229 val_t remove_out_of_init_get_test___IssetCounter___nb_isset(val_t p0){
230 struct {struct stack_frame_t me;} fra;
231 val_t REGB0;
232 val_t tmp;
233 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
234 fra.me.file = LOCATE_remove_out_of_init_get_test;
235 fra.me.line = 59;
236 fra.me.meth = LOCATE_remove_out_of_init_get_test___IssetCounter___nb_isset;
237 fra.me.has_broke = 0;
238 fra.me.REG_size = 1;
239 fra.me.REG[0] = NIT_NULL;
240 fra.me.REG[0] = p0;
241 /* ./analysis//remove_out_of_init_get_test.nit:59 */
242 REGB0 = TAG_Bool(ATTR_remove_out_of_init_get_test___IssetCounter____nb_isset(fra.me.REG[0])!=NIT_NULL);
243 if (UNTAG_Bool(REGB0)) {
244 } else {
245 nit_abort("Uninitialized attribute %s", "_nb_isset", LOCATE_remove_out_of_init_get_test, 59);
246 }
247 REGB0 = ATTR_remove_out_of_init_get_test___IssetCounter____nb_isset(fra.me.REG[0]);
248 stack_frame_head = fra.me.prev;
249 return REGB0;
250 }
251 void remove_out_of_init_get_test___IssetCounter___visit_icode(val_t p0, val_t p1){
252 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
253 val_t REGB0;
254 val_t REGB1;
255 val_t tmp;
256 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
257 fra.me.file = LOCATE_remove_out_of_init_get_test;
258 fra.me.line = 61;
259 fra.me.meth = LOCATE_remove_out_of_init_get_test___IssetCounter___visit_icode;
260 fra.me.has_broke = 0;
261 fra.me.REG_size = 4;
262 fra.me.REG[0] = NIT_NULL;
263 fra.me.REG[1] = NIT_NULL;
264 fra.me.REG[2] = NIT_NULL;
265 fra.me.REG[3] = NIT_NULL;
266 fra.me.REG[0] = p0;
267 fra.me.REG[1] = p1;
268 /* ./analysis//remove_out_of_init_get_test.nit:61 */
269 fra.me.REG[2] = fra.me.REG[0];
270 fra.me.REG[3] = fra.me.REG[1];
271 /* ./analysis//remove_out_of_init_get_test.nit:63 */
272 REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_IAttrIsset, ID_IAttrIsset)) /*cast IAttrIsset*/;
273 if (UNTAG_Bool(REGB0)) {
274 /* ./analysis//remove_out_of_init_get_test.nit:64 */
275 REGB0 = CALL_remove_out_of_init_get_test___IssetCounter___nb_isset(fra.me.REG[2])(fra.me.REG[2]);
276 REGB1 = TAG_Int(1);
277 /* ./../lib/standard//kernel.nit:215 */
278 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
279 /* ./analysis//remove_out_of_init_get_test.nit:64 */
280 ATTR_remove_out_of_init_get_test___IssetCounter____nb_isset(fra.me.REG[2]) = REGB1;
281 }
282 /* ./analysis//remove_out_of_init_get_test.nit:67 */
283 CALL_SUPER_remove_out_of_init_get_test___IssetCounter___visit_icode(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
284 stack_frame_head = fra.me.prev;
285 return;
286 }
287 val_t remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(val_t p0){
288 struct {struct stack_frame_t me;} fra;
289 val_t REGB0;
290 val_t tmp;
291 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
292 fra.me.file = LOCATE_remove_out_of_init_get_test;
293 fra.me.line = 73;
294 fra.me.meth = LOCATE_remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset;
295 fra.me.has_broke = 0;
296 fra.me.REG_size = 1;
297 fra.me.REG[0] = NIT_NULL;
298 fra.me.REG[0] = p0;
299 /* ./analysis//remove_out_of_init_get_test.nit:73 */
300 REGB0 = TAG_Bool(ATTR_remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra.me.REG[0])!=NIT_NULL);
301 if (UNTAG_Bool(REGB0)) {
302 } else {
303 nit_abort("Uninitialized attribute %s", "_nb_optimized_isset", LOCATE_remove_out_of_init_get_test, 73);
304 }
305 REGB0 = ATTR_remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra.me.REG[0]);
306 stack_frame_head = fra.me.prev;
307 return REGB0;
308 }
309 void remove_out_of_init_get_test___GetterTestRemover___visit_icode(val_t p0, val_t p1){
310 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
311 val_t REGB0;
312 val_t REGB1;
313 val_t tmp;
314 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
315 fra.me.file = LOCATE_remove_out_of_init_get_test;
316 fra.me.line = 75;
317 fra.me.meth = LOCATE_remove_out_of_init_get_test___GetterTestRemover___visit_icode;
318 fra.me.has_broke = 0;
319 fra.me.REG_size = 5;
320 fra.me.REG[0] = NIT_NULL;
321 fra.me.REG[1] = NIT_NULL;
322 fra.me.REG[2] = NIT_NULL;
323 fra.me.REG[3] = NIT_NULL;
324 fra.me.REG[4] = NIT_NULL;
325 fra.me.REG[0] = p0;
326 fra.me.REG[1] = p1;
327 /* ./analysis//remove_out_of_init_get_test.nit:75 */
328 fra.me.REG[2] = fra.me.REG[0];
329 fra.me.REG[3] = fra.me.REG[1];
330 /* ./analysis//remove_out_of_init_get_test.nit:78 */
331 REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_IAttrIsset, ID_IAttrIsset)) /*cast IAttrIsset*/;
332 if (UNTAG_Bool(REGB0)) {
333 /* ./analysis//remove_out_of_init_get_test.nit:79 */
334 REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
335 if (UNTAG_Bool(REGB0)) {
336 nit_abort("Reciever is null", NULL, LOCATE_remove_out_of_init_get_test, 79);
337 }
338 fra.me.REG[3] = CALL_icode_base___ICode___result(fra.me.REG[3])(fra.me.REG[3]);
339 /* ./analysis//remove_out_of_init_get_test.nit:80 */
340 REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
341 if (UNTAG_Bool(REGB0)) {
342 } else {
343 REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
344 if (UNTAG_Bool(REGB1)) {
345 REGB1 = TAG_Bool(false);
346 REGB0 = REGB1;
347 } else {
348 REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
349 REGB0 = REGB1;
350 }
351 }
352 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
353 if (UNTAG_Bool(REGB0)) {
354 } else {
355 nit_abort("Assert failed", NULL, LOCATE_remove_out_of_init_get_test, 80);
356 }
357 /* ./analysis//remove_out_of_init_get_test.nit:81 */
358 REGB0 = TAG_Bool(true);
359 fra.me.REG[4] = NEW_IBoolValue_icode_base___IBoolValue___init(REGB0);
360 /* ./analysis//remove_out_of_init_get_test.nit:82 */
361 CALL_icode_base___ICode___result__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
362 /* ./analysis//remove_out_of_init_get_test.nit:83 */
363 fra.me.REG[3] = CALL_icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]);
364 REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
365 if (UNTAG_Bool(REGB0)) {
366 nit_abort("Reciever is null", NULL, LOCATE_remove_out_of_init_get_test, 83);
367 }
368 CALL_list___ListIterator___insert_before(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
369 /* ./analysis//remove_out_of_init_get_test.nit:84 */
370 fra.me.REG[4] = CALL_icode_tools___ICodeVisitor___current_icode(fra.me.REG[2])(fra.me.REG[2]);
371 REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
372 if (UNTAG_Bool(REGB0)) {
373 nit_abort("Reciever is null", NULL, LOCATE_remove_out_of_init_get_test, 84);
374 }
375 CALL_list___ListIterator___delete(fra.me.REG[4])(fra.me.REG[4]);
376 /* ./analysis//remove_out_of_init_get_test.nit:85 */
377 REGB0 = CALL_remove_out_of_init_get_test___GetterTestRemover___nb_optimized_isset(fra.me.REG[2])(fra.me.REG[2]);
378 REGB1 = TAG_Int(1);
379 /* ./../lib/standard//kernel.nit:215 */
380 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
381 /* ./analysis//remove_out_of_init_get_test.nit:85 */
382 ATTR_remove_out_of_init_get_test___GetterTestRemover____nb_optimized_isset(fra.me.REG[2]) = REGB1;
383 }
384 /* ./analysis//remove_out_of_init_get_test.nit:88 */
385 CALL_SUPER_remove_out_of_init_get_test___GetterTestRemover___visit_icode(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
386 stack_frame_head = fra.me.prev;
387 return;
388 }