tools: clean Makefiles
[nit.git] / c_src / analysis___icode_dump._sep.c
1 /* This C file is generated by NIT to compile module analysis___icode_dump. */
2 #include "analysis___icode_dump._sep.h"
3 void analysis___icode_dump___IRoutine___dump(val_t p0, val_t p1){
4 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
5 val_t REGB0;
6 val_t REGB1;
7 val_t REGB2;
8 val_t tmp;
9 static val_t once_value_2; /* Once value */
10 static val_t once_value_3; /* Once value */
11 static val_t once_value_4; /* Once value */
12 static val_t once_value_5; /* Once value */
13 static val_t once_value_6; /* Once value */
14 static val_t once_value_7; /* Once value */
15 static val_t once_value_8; /* Once value */
16 static val_t once_value_9; /* Once value */
17 static val_t once_value_10; /* Once value */
18 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
19 fra.me.file = LOCATE_analysis___icode_dump;
20 fra.me.line = 24;
21 fra.me.meth = LOCATE_analysis___icode_dump___IRoutine___dump;
22 fra.me.has_broke = 0;
23 fra.me.REG_size = 5;
24 fra.me.REG[0] = NIT_NULL;
25 fra.me.REG[1] = NIT_NULL;
26 fra.me.REG[2] = NIT_NULL;
27 fra.me.REG[3] = NIT_NULL;
28 fra.me.REG[4] = NIT_NULL;
29 fra.me.REG[0] = p0;
30 fra.me.REG[1] = p1;
31 /* ./analysis//icode_dump.nit:27 */
32 fra.me.REG[2] = CALL_icode___icode_base___IRoutine___params(fra.me.REG[0])(fra.me.REG[0]);
33 REGB0 = CALL_standard___collection___abstract_collection___Collection___is_empty(fra.me.REG[2])(fra.me.REG[2]);
34 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
35 if (UNTAG_Bool(REGB0)) {
36 /* ./analysis//icode_dump.nit:28 */
37 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___init();
38 /* ./analysis//icode_dump.nit:29 */
39 fra.me.REG[3] = CALL_icode___icode_base___IRoutine___params(fra.me.REG[0])(fra.me.REG[0]);
40 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___IRoutine___dump_1));
41 /* ./analysis//icode_dump.nit:32 */
42 REGB0 = TAG_Int(3);
43 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
44 if (!once_value_2) {
45 fra.me.REG[4] = BOX_NativeString("Parameters: ");
46 REGB0 = TAG_Int(12);
47 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
48 once_value_2 = fra.me.REG[4];
49 register_static_object(&once_value_2);
50 } else fra.me.REG[4] = once_value_2;
51 fra.me.REG[4] = fra.me.REG[4];
52 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
53 if (!once_value_3) {
54 fra.me.REG[4] = BOX_NativeString(", ");
55 REGB0 = TAG_Int(2);
56 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
57 once_value_3 = fra.me.REG[4];
58 register_static_object(&once_value_3);
59 } else fra.me.REG[4] = once_value_3;
60 fra.me.REG[4] = fra.me.REG[4];
61 fra.me.REG[4] = CALL_standard___string___Collection___join(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
62 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
63 if (!once_value_4) {
64 fra.me.REG[4] = BOX_NativeString("");
65 REGB0 = TAG_Int(0);
66 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
67 once_value_4 = fra.me.REG[4];
68 register_static_object(&once_value_4);
69 } else fra.me.REG[4] = once_value_4;
70 fra.me.REG[4] = fra.me.REG[4];
71 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
72 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
73 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
74 }
75 /* ./analysis//icode_dump.nit:34 */
76 fra.me.REG[3] = CALL_icode___icode_base___IRoutine___result(fra.me.REG[0])(fra.me.REG[0]);
77 /* ./analysis//icode_dump.nit:35 */
78 REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
79 if (UNTAG_Bool(REGB0)) {
80 } else {
81 REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
82 if (UNTAG_Bool(REGB1)) {
83 REGB1 = TAG_Bool(false);
84 REGB0 = REGB1;
85 } else {
86 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
87 REGB0 = REGB1;
88 }
89 }
90 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
91 if (UNTAG_Bool(REGB0)) {
92 /* ./analysis//icode_dump.nit:36 */
93 REGB0 = TAG_Int(3);
94 fra.me.REG[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
95 if (!once_value_5) {
96 fra.me.REG[2] = BOX_NativeString("Result: ");
97 REGB0 = TAG_Int(8);
98 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
99 once_value_5 = fra.me.REG[2];
100 register_static_object(&once_value_5);
101 } else fra.me.REG[2] = once_value_5;
102 fra.me.REG[2] = fra.me.REG[2];
103 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
104 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
105 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
106 if (!once_value_6) {
107 fra.me.REG[3] = BOX_NativeString("");
108 REGB0 = TAG_Int(0);
109 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
110 once_value_6 = fra.me.REG[3];
111 register_static_object(&once_value_6);
112 } else fra.me.REG[3] = once_value_6;
113 fra.me.REG[3] = fra.me.REG[3];
114 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
115 fra.me.REG[4] = CALL_standard___string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
116 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
117 }
118 /* ./analysis//icode_dump.nit:38 */
119 REGB0 = CALL_analysis___allocate_iregister_slots___IRoutine___std_slots_nb(fra.me.REG[0])(fra.me.REG[0]);
120 REGB1 = TAG_Int(0);
121 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
122 if (UNTAG_Bool(REGB2)) {
123 } else {
124 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
125 }
126 /* ./../lib/standard//kernel.nit:234 */
127 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
128 /* ./analysis//icode_dump.nit:38 */
129 if (UNTAG_Bool(REGB1)) {
130 /* ./analysis//icode_dump.nit:39 */
131 REGB1 = TAG_Int(3);
132 fra.me.REG[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
133 if (!once_value_7) {
134 fra.me.REG[3] = BOX_NativeString("StdSlots: ");
135 REGB1 = TAG_Int(10);
136 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
137 once_value_7 = fra.me.REG[3];
138 register_static_object(&once_value_7);
139 } else fra.me.REG[3] = once_value_7;
140 fra.me.REG[3] = fra.me.REG[3];
141 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
142 REGB1 = CALL_analysis___allocate_iregister_slots___IRoutine___std_slots_nb(fra.me.REG[0])(fra.me.REG[0]);
143 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
144 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
145 if (!once_value_8) {
146 fra.me.REG[3] = BOX_NativeString("");
147 REGB1 = TAG_Int(0);
148 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
149 once_value_8 = fra.me.REG[3];
150 register_static_object(&once_value_8);
151 } else fra.me.REG[3] = once_value_8;
152 fra.me.REG[3] = fra.me.REG[3];
153 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
154 fra.me.REG[4] = CALL_standard___string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
155 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
156 }
157 /* ./analysis//icode_dump.nit:41 */
158 REGB1 = CALL_analysis___allocate_iregister_slots___IRoutine___tag_slots_nb(fra.me.REG[0])(fra.me.REG[0]);
159 REGB0 = TAG_Int(0);
160 REGB2 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
161 if (UNTAG_Bool(REGB2)) {
162 } else {
163 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
164 }
165 /* ./../lib/standard//kernel.nit:234 */
166 REGB0 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB0));
167 /* ./analysis//icode_dump.nit:41 */
168 if (UNTAG_Bool(REGB0)) {
169 /* ./analysis//icode_dump.nit:42 */
170 REGB0 = TAG_Int(3);
171 fra.me.REG[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
172 if (!once_value_9) {
173 fra.me.REG[3] = BOX_NativeString("TagSlots: ");
174 REGB0 = TAG_Int(10);
175 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
176 once_value_9 = fra.me.REG[3];
177 register_static_object(&once_value_9);
178 } else fra.me.REG[3] = once_value_9;
179 fra.me.REG[3] = fra.me.REG[3];
180 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
181 REGB0 = CALL_analysis___allocate_iregister_slots___IRoutine___tag_slots_nb(fra.me.REG[0])(fra.me.REG[0]);
182 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
183 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
184 if (!once_value_10) {
185 fra.me.REG[3] = BOX_NativeString("");
186 REGB0 = TAG_Int(0);
187 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
188 once_value_10 = fra.me.REG[3];
189 register_static_object(&once_value_10);
190 } else fra.me.REG[3] = once_value_10;
191 fra.me.REG[3] = fra.me.REG[3];
192 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
193 fra.me.REG[4] = CALL_standard___string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
194 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
195 }
196 /* ./analysis//icode_dump.nit:44 */
197 fra.me.REG[4] = CALL_icode___icode_base___IRoutine___closure_decls(fra.me.REG[0])(fra.me.REG[0]);
198 /* ./analysis//icode_dump.nit:45 */
199 REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
200 if (UNTAG_Bool(REGB0)) {
201 } else {
202 REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
203 if (UNTAG_Bool(REGB1)) {
204 REGB1 = TAG_Bool(false);
205 REGB0 = REGB1;
206 } else {
207 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
208 REGB0 = REGB1;
209 }
210 }
211 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
212 if (UNTAG_Bool(REGB0)) {
213 /* ./analysis//icode_dump.nit:46 */
214 REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
215 if (UNTAG_Bool(REGB0)) {
216 nit_abort("Reciever is null", NULL, LOCATE_analysis___icode_dump, 46);
217 }
218 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___IRoutine___dump_11));
219 }
220 /* ./analysis//icode_dump.nit:50 */
221 fra.me.REG[0] = CALL_icode___icode_base___IRoutine___body(fra.me.REG[0])(fra.me.REG[0]);
222 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
223 stack_frame_head = fra.me.prev;
224 return;
225 }
226 void OC_analysis___icode_dump___IRoutine___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
227 struct {struct stack_frame_t me;} fra;
228 fun_t CREG[1];
229 val_t tmp;
230 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
231 fra.me.file = LOCATE_analysis___icode_dump;
232 fra.me.line = 0;
233 fra.me.meth = LOCATE_analysis___icode_dump___IRoutine___dump;
234 fra.me.has_broke = 0;
235 fra.me.REG_size = 1;
236 fra.me.REG[0] = NIT_NULL;
237 fra.me.closure_ctx = closctx_param;
238 fra.me.closure_funs = CREG;
239 fra.me.REG[0] = p0;
240 CREG[0] = clos_fun0;
241 /* ./analysis//icode_dump.nit:30 */
242 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
243 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx->REG[2])(closctx->REG[2], fra.me.REG[0]);
244 stack_frame_head = fra.me.prev;
245 return;
246 }
247 void OC_analysis___icode_dump___IRoutine___dump_11(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
248 struct {struct stack_frame_t me;} fra;
249 fun_t CREG[1];
250 val_t tmp;
251 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
252 fra.me.file = LOCATE_analysis___icode_dump;
253 fra.me.line = 0;
254 fra.me.meth = LOCATE_analysis___icode_dump___IRoutine___dump;
255 fra.me.has_broke = 0;
256 fra.me.REG_size = 1;
257 fra.me.REG[0] = NIT_NULL;
258 fra.me.closure_ctx = closctx_param;
259 fra.me.closure_funs = CREG;
260 fra.me.REG[0] = p0;
261 CREG[0] = clos_fun0;
262 /* ./analysis//icode_dump.nit:47 */
263 CALL_analysis___icode_dump___IClosureDecl___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
264 stack_frame_head = fra.me.prev;
265 return;
266 }
267 void analysis___icode_dump___IClosureDecl___dump(val_t p0, val_t p1){
268 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
269 val_t REGB0;
270 val_t REGB1;
271 val_t tmp;
272 static val_t once_value_1; /* Once value */
273 static val_t once_value_2; /* Once value */
274 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
275 fra.me.file = LOCATE_analysis___icode_dump;
276 fra.me.line = 55;
277 fra.me.meth = LOCATE_analysis___icode_dump___IClosureDecl___dump;
278 fra.me.has_broke = 0;
279 fra.me.REG_size = 4;
280 fra.me.REG[0] = NIT_NULL;
281 fra.me.REG[1] = NIT_NULL;
282 fra.me.REG[2] = NIT_NULL;
283 fra.me.REG[3] = NIT_NULL;
284 fra.me.REG[0] = p0;
285 fra.me.REG[1] = p1;
286 /* ./analysis//icode_dump.nit:58 */
287 REGB0 = TAG_Int(3);
288 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
289 if (!once_value_1) {
290 fra.me.REG[3] = BOX_NativeString("Closure: ");
291 REGB0 = TAG_Int(9);
292 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
293 once_value_1 = fra.me.REG[3];
294 register_static_object(&once_value_1);
295 } else fra.me.REG[3] = once_value_1;
296 fra.me.REG[3] = fra.me.REG[3];
297 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
298 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
299 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
300 if (!once_value_2) {
301 fra.me.REG[3] = BOX_NativeString("");
302 REGB0 = TAG_Int(0);
303 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
304 once_value_2 = fra.me.REG[3];
305 register_static_object(&once_value_2);
306 } else fra.me.REG[3] = once_value_2;
307 fra.me.REG[3] = fra.me.REG[3];
308 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
309 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
310 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
311 /* ./analysis//icode_dump.nit:59 */
312 fra.me.REG[2] = CALL_icode___icode_base___IClosureDecl___default(fra.me.REG[0])(fra.me.REG[0]);
313 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
314 if (UNTAG_Bool(REGB0)) {
315 } else {
316 REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
317 if (UNTAG_Bool(REGB1)) {
318 REGB1 = TAG_Bool(false);
319 REGB0 = REGB1;
320 } else {
321 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
322 REGB0 = REGB1;
323 }
324 }
325 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
326 if (UNTAG_Bool(REGB0)) {
327 /* ./analysis//icode_dump.nit:60 */
328 CALL_analysis___icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]);
329 /* ./analysis//icode_dump.nit:61 */
330 fra.me.REG[0] = CALL_icode___icode_base___IClosureDecl___default(fra.me.REG[0])(fra.me.REG[0]);
331 REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
332 if (UNTAG_Bool(REGB0)) {
333 nit_abort("Reciever is null", NULL, LOCATE_analysis___icode_dump, 61);
334 }
335 CALL_analysis___icode_dump___IRoutine___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
336 /* ./analysis//icode_dump.nit:62 */
337 CALL_analysis___icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]);
338 }
339 stack_frame_head = fra.me.prev;
340 return;
341 }
342 val_t analysis___icode_dump___ICodeDumper___dump_locations(val_t p0){
343 struct {struct stack_frame_t me;} fra;
344 val_t REGB0;
345 val_t tmp;
346 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
347 fra.me.file = LOCATE_analysis___icode_dump;
348 fra.me.line = 68;
349 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___dump_locations;
350 fra.me.has_broke = 0;
351 fra.me.REG_size = 1;
352 fra.me.REG[0] = NIT_NULL;
353 fra.me.REG[0] = p0;
354 /* ./analysis//icode_dump.nit:68 */
355 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra.me.REG[0])!=NIT_NULL);
356 if (UNTAG_Bool(REGB0)) {
357 } else {
358 nit_abort("Uninitialized attribute %s", "_dump_locations", LOCATE_analysis___icode_dump, 68);
359 }
360 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra.me.REG[0]);
361 stack_frame_head = fra.me.prev;
362 return REGB0;
363 }
364 val_t analysis___icode_dump___ICodeDumper___dump_line_numbers(val_t p0){
365 struct {struct stack_frame_t me;} fra;
366 val_t REGB0;
367 val_t tmp;
368 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
369 fra.me.file = LOCATE_analysis___icode_dump;
370 fra.me.line = 69;
371 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___dump_line_numbers;
372 fra.me.has_broke = 0;
373 fra.me.REG_size = 1;
374 fra.me.REG[0] = NIT_NULL;
375 fra.me.REG[0] = p0;
376 /* ./analysis//icode_dump.nit:69 */
377 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0])!=NIT_NULL);
378 if (UNTAG_Bool(REGB0)) {
379 } else {
380 nit_abort("Uninitialized attribute %s", "_dump_line_numbers", LOCATE_analysis___icode_dump, 69);
381 }
382 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0]);
383 stack_frame_head = fra.me.prev;
384 return REGB0;
385 }
386 void analysis___icode_dump___ICodeDumper___init(val_t p0, val_t p1, val_t p2, int* init_table){
387 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_analysis___icode_dump___ICodeDumper].i;
388 struct {struct stack_frame_t me;} fra;
389 val_t REGB0;
390 val_t REGB1;
391 val_t tmp;
392 if (init_table[itpos0]) return;
393 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
394 fra.me.file = LOCATE_analysis___icode_dump;
395 fra.me.line = 73;
396 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___init;
397 fra.me.has_broke = 0;
398 fra.me.REG_size = 1;
399 fra.me.REG[0] = NIT_NULL;
400 fra.me.REG[0] = p0;
401 REGB0 = p1;
402 REGB1 = p2;
403 /* ./analysis//icode_dump.nit:74 */
404 ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra.me.REG[0]) = REGB0;
405 /* ./analysis//icode_dump.nit:75 */
406 ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra.me.REG[0]) = REGB1;
407 stack_frame_head = fra.me.prev;
408 init_table[itpos0] = 1;
409 return;
410 }
411 val_t analysis___icode_dump___ICodeDumper___register(val_t p0, val_t p1){
412 struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
413 val_t REGB0;
414 val_t REGB1;
415 val_t tmp;
416 static val_t once_value_2; /* Once value */
417 static val_t once_value_3; /* Once value */
418 static val_t once_value_4; /* Once value */
419 static val_t once_value_5; /* Once value */
420 static val_t once_value_6; /* Once value */
421 static val_t once_value_7; /* Once value */
422 static val_t once_value_8; /* Once value */
423 static val_t once_value_9; /* Once value */
424 static val_t once_value_10; /* Once value */
425 static val_t once_value_11; /* Once value */
426 static val_t once_value_12; /* Once value */
427 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
428 fra.me.file = LOCATE_analysis___icode_dump;
429 fra.me.line = 78;
430 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___register;
431 fra.me.has_broke = 0;
432 fra.me.REG_size = 7;
433 fra.me.REG[0] = NIT_NULL;
434 fra.me.REG[1] = NIT_NULL;
435 fra.me.REG[2] = NIT_NULL;
436 fra.me.REG[3] = NIT_NULL;
437 fra.me.REG[4] = NIT_NULL;
438 fra.me.REG[5] = NIT_NULL;
439 fra.me.REG[6] = NIT_NULL;
440 fra.me.REG[0] = p0;
441 fra.me.REG[1] = p1;
442 /* ./analysis//icode_dump.nit:82 */
443 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
444 if (UNTAG_Bool(REGB0)) {
445 } else {
446 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 82);
447 }
448 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
449 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
450 if (UNTAG_Bool(REGB0)) {
451 /* ./analysis//icode_dump.nit:83 */
452 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
453 if (UNTAG_Bool(REGB0)) {
454 } else {
455 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 83);
456 }
457 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
458 fra.me.REG[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
459 goto label1;
460 } else {
461 /* ./analysis//icode_dump.nit:85 */
462 fra.me.REG[3] = CALL_analysis___allocate_iregister_slots___IRegister___slot_index(fra.me.REG[1])(fra.me.REG[1]);
463 /* ./analysis//icode_dump.nit:86 */
464 REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
465 if (UNTAG_Bool(REGB0)) {
466 } else {
467 REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
468 if (UNTAG_Bool(REGB1)) {
469 REGB1 = TAG_Bool(false);
470 REGB0 = REGB1;
471 } else {
472 /* ./../lib/standard//kernel.nit:227 */
473 REGB1 = TAG_Bool((fra.me.REG[3])==(NIT_NULL));
474 /* ./analysis//icode_dump.nit:86 */
475 REGB0 = REGB1;
476 }
477 }
478 if (UNTAG_Bool(REGB0)) {
479 /* ./analysis//icode_dump.nit:87 */
480 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
481 REGB1 = TAG_Int(1);
482 /* ./../lib/standard//kernel.nit:235 */
483 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
484 /* ./analysis//icode_dump.nit:87 */
485 ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]) = REGB1;
486 /* ./analysis//icode_dump.nit:88 */
487 REGB1 = TAG_Int(3);
488 fra.me.REG[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
489 if (!once_value_2) {
490 fra.me.REG[5] = BOX_NativeString("r");
491 REGB1 = TAG_Int(1);
492 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB1);
493 once_value_2 = fra.me.REG[5];
494 register_static_object(&once_value_2);
495 } else fra.me.REG[5] = once_value_2;
496 fra.me.REG[5] = fra.me.REG[5];
497 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
498 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL);
499 if (UNTAG_Bool(REGB1)) {
500 } else {
501 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump, 88);
502 }
503 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
504 fra.me.REG[5] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
505 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
506 if (!once_value_3) {
507 fra.me.REG[5] = BOX_NativeString("");
508 REGB1 = TAG_Int(0);
509 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB1);
510 once_value_3 = fra.me.REG[5];
511 register_static_object(&once_value_3);
512 } else fra.me.REG[5] = once_value_3;
513 fra.me.REG[5] = fra.me.REG[5];
514 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
515 fra.me.REG[4] = CALL_standard___string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
516 /* ./analysis//icode_dump.nit:89 */
517 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
518 if (UNTAG_Bool(REGB1)) {
519 } else {
520 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 89);
521 }
522 fra.me.REG[5] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
523 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[4]);
524 /* ./analysis//icode_dump.nit:90 */
525 fra.me.REG[2] = fra.me.REG[4];
526 goto label1;
527 } else {
528 /* ./analysis//icode_dump.nit:92 */
529 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
530 REGB0 = TAG_Int(1);
531 /* ./../lib/standard//kernel.nit:235 */
532 REGB0 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB0));
533 /* ./analysis//icode_dump.nit:92 */
534 ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]) = REGB0;
535 /* ./analysis//icode_dump.nit:94 */
536 REGB0 = CALL_analysis___allocate_iregister_slots___IRegister___in_tag_slots(fra.me.REG[1])(fra.me.REG[1]);
537 if (UNTAG_Bool(REGB0)) {
538 /* ./analysis//icode_dump.nit:95 */
539 REGB0 = TAG_Int(5);
540 fra.me.REG[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
541 if (!once_value_4) {
542 fra.me.REG[5] = BOX_NativeString("BREG");
543 REGB0 = TAG_Int(4);
544 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
545 once_value_4 = fra.me.REG[5];
546 register_static_object(&once_value_4);
547 } else fra.me.REG[5] = once_value_4;
548 fra.me.REG[5] = fra.me.REG[5];
549 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
550 fra.me.REG[5] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
551 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
552 if (!once_value_5) {
553 fra.me.REG[5] = BOX_NativeString("(r");
554 REGB0 = TAG_Int(2);
555 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
556 once_value_5 = fra.me.REG[5];
557 register_static_object(&once_value_5);
558 } else fra.me.REG[5] = once_value_5;
559 fra.me.REG[5] = fra.me.REG[5];
560 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
561 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL);
562 if (UNTAG_Bool(REGB0)) {
563 } else {
564 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump, 95);
565 }
566 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
567 fra.me.REG[5] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
568 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
569 if (!once_value_6) {
570 fra.me.REG[5] = BOX_NativeString(")");
571 REGB0 = TAG_Int(1);
572 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
573 once_value_6 = fra.me.REG[5];
574 register_static_object(&once_value_6);
575 } else fra.me.REG[5] = once_value_6;
576 fra.me.REG[5] = fra.me.REG[5];
577 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
578 fra.me.REG[4] = CALL_standard___string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
579 } else {
580 /* ./analysis//icode_dump.nit:96 */
581 REGB0 = CALL_analysis___allocate_iregister_slots___IRegister___is_local(fra.me.REG[1])(fra.me.REG[1]);
582 if (UNTAG_Bool(REGB0)) {
583 /* ./analysis//icode_dump.nit:97 */
584 REGB0 = TAG_Int(5);
585 fra.me.REG[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
586 if (!once_value_7) {
587 fra.me.REG[6] = BOX_NativeString("LREG");
588 REGB0 = TAG_Int(4);
589 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
590 once_value_7 = fra.me.REG[6];
591 register_static_object(&once_value_7);
592 } else fra.me.REG[6] = once_value_7;
593 fra.me.REG[6] = fra.me.REG[6];
594 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
595 fra.me.REG[6] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
596 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
597 if (!once_value_8) {
598 fra.me.REG[6] = BOX_NativeString("(r");
599 REGB0 = TAG_Int(2);
600 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
601 once_value_8 = fra.me.REG[6];
602 register_static_object(&once_value_8);
603 } else fra.me.REG[6] = once_value_8;
604 fra.me.REG[6] = fra.me.REG[6];
605 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
606 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL);
607 if (UNTAG_Bool(REGB0)) {
608 } else {
609 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump, 97);
610 }
611 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
612 fra.me.REG[6] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
613 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
614 if (!once_value_9) {
615 fra.me.REG[6] = BOX_NativeString(")");
616 REGB0 = TAG_Int(1);
617 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
618 once_value_9 = fra.me.REG[6];
619 register_static_object(&once_value_9);
620 } else fra.me.REG[6] = once_value_9;
621 fra.me.REG[6] = fra.me.REG[6];
622 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
623 fra.me.REG[5] = CALL_standard___string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
624 fra.me.REG[4] = fra.me.REG[5];
625 } else {
626 /* ./analysis//icode_dump.nit:99 */
627 REGB0 = TAG_Int(5);
628 fra.me.REG[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
629 if (!once_value_10) {
630 fra.me.REG[6] = BOX_NativeString("REG");
631 REGB0 = TAG_Int(3);
632 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
633 once_value_10 = fra.me.REG[6];
634 register_static_object(&once_value_10);
635 } else fra.me.REG[6] = once_value_10;
636 fra.me.REG[6] = fra.me.REG[6];
637 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
638 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
639 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
640 if (!once_value_11) {
641 fra.me.REG[3] = BOX_NativeString("(r");
642 REGB0 = TAG_Int(2);
643 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
644 once_value_11 = fra.me.REG[3];
645 register_static_object(&once_value_11);
646 } else fra.me.REG[3] = once_value_11;
647 fra.me.REG[3] = fra.me.REG[3];
648 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
649 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0])!=NIT_NULL);
650 if (UNTAG_Bool(REGB0)) {
651 } else {
652 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump, 99);
653 }
654 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_value(fra.me.REG[0]);
655 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
656 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
657 if (!once_value_12) {
658 fra.me.REG[3] = BOX_NativeString(")");
659 REGB0 = TAG_Int(1);
660 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
661 once_value_12 = fra.me.REG[3];
662 register_static_object(&once_value_12);
663 } else fra.me.REG[3] = once_value_12;
664 fra.me.REG[3] = fra.me.REG[3];
665 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
666 fra.me.REG[5] = CALL_standard___string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
667 fra.me.REG[4] = fra.me.REG[5];
668 }
669 }
670 /* ./analysis//icode_dump.nit:101 */
671 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
672 if (UNTAG_Bool(REGB0)) {
673 } else {
674 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 101);
675 }
676 fra.me.REG[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
677 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[4]);
678 /* ./analysis//icode_dump.nit:102 */
679 fra.me.REG[2] = fra.me.REG[4];
680 goto label1;
681 }
682 }
683 label1: while(0);
684 stack_frame_head = fra.me.prev;
685 return fra.me.REG[2];
686 }
687 val_t analysis___icode_dump___ICodeDumper___register_all(val_t p0, val_t p1){
688 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
689 val_t REGB0;
690 val_t REGB1;
691 val_t tmp;
692 static val_t once_value_1; /* Once value */
693 static val_t once_value_4; /* Once value */
694 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
695 fra.me.file = LOCATE_analysis___icode_dump;
696 fra.me.line = 107;
697 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___register_all;
698 fra.me.has_broke = 0;
699 fra.me.REG_size = 4;
700 fra.me.REG[0] = NIT_NULL;
701 fra.me.REG[1] = NIT_NULL;
702 fra.me.REG[2] = NIT_NULL;
703 fra.me.REG[3] = NIT_NULL;
704 fra.me.REG[0] = p0;
705 fra.me.REG[1] = p1;
706 /* ./analysis//icode_dump.nit:110 */
707 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
708 if (UNTAG_Bool(REGB0)) {
709 } else {
710 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
711 if (UNTAG_Bool(REGB1)) {
712 REGB1 = TAG_Bool(false);
713 REGB0 = REGB1;
714 } else {
715 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
716 REGB0 = REGB1;
717 }
718 }
719 if (UNTAG_Bool(REGB0)) {
720 if (!once_value_1) {
721 fra.me.REG[2] = BOX_NativeString("");
722 REGB0 = TAG_Int(0);
723 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
724 once_value_1 = fra.me.REG[2];
725 register_static_object(&once_value_1);
726 } else fra.me.REG[2] = once_value_1;
727 fra.me.REG[2] = fra.me.REG[2];
728 goto label2;
729 }
730 /* ./analysis//icode_dump.nit:111 */
731 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___init();
732 /* ./analysis//icode_dump.nit:112 */
733 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
734 if (UNTAG_Bool(REGB0)) {
735 nit_abort("Reciever is null", NULL, LOCATE_analysis___icode_dump, 112);
736 }
737 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___ICodeDumper___register_all_3));
738 /* ./analysis//icode_dump.nit:115 */
739 if (!once_value_4) {
740 fra.me.REG[0] = BOX_NativeString(", ");
741 REGB0 = TAG_Int(2);
742 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
743 once_value_4 = fra.me.REG[0];
744 register_static_object(&once_value_4);
745 } else fra.me.REG[0] = once_value_4;
746 fra.me.REG[0] = fra.me.REG[0];
747 fra.me.REG[0] = CALL_standard___string___Collection___join(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
748 fra.me.REG[2] = fra.me.REG[0];
749 goto label2;
750 label2: while(0);
751 stack_frame_head = fra.me.prev;
752 return fra.me.REG[2];
753 }
754 void OC_analysis___icode_dump___ICodeDumper___register_all_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
755 struct {struct stack_frame_t me;} fra;
756 fun_t CREG[1];
757 val_t tmp;
758 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
759 fra.me.file = LOCATE_analysis___icode_dump;
760 fra.me.line = 0;
761 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___register_all;
762 fra.me.has_broke = 0;
763 fra.me.REG_size = 1;
764 fra.me.REG[0] = NIT_NULL;
765 fra.me.closure_ctx = closctx_param;
766 fra.me.closure_funs = CREG;
767 fra.me.REG[0] = p0;
768 CREG[0] = clos_fun0;
769 /* ./analysis//icode_dump.nit:113 */
770 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(closctx->REG[0])(closctx->REG[0], fra.me.REG[0]);
771 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx->REG[3])(closctx->REG[3], fra.me.REG[0]);
772 stack_frame_head = fra.me.prev;
773 return;
774 }
775 val_t analysis___icode_dump___ICodeDumper___closdecl(val_t p0, val_t p1){
776 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
777 val_t REGB0;
778 val_t REGB1;
779 val_t tmp;
780 static val_t once_value_2; /* Once value */
781 static val_t once_value_3; /* Once value */
782 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
783 fra.me.file = LOCATE_analysis___icode_dump;
784 fra.me.line = 120;
785 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___closdecl;
786 fra.me.has_broke = 0;
787 fra.me.REG_size = 5;
788 fra.me.REG[0] = NIT_NULL;
789 fra.me.REG[1] = NIT_NULL;
790 fra.me.REG[2] = NIT_NULL;
791 fra.me.REG[3] = NIT_NULL;
792 fra.me.REG[4] = NIT_NULL;
793 fra.me.REG[0] = p0;
794 fra.me.REG[1] = p1;
795 /* ./analysis//icode_dump.nit:124 */
796 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
797 if (UNTAG_Bool(REGB0)) {
798 } else {
799 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 124);
800 }
801 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
802 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
803 if (UNTAG_Bool(REGB0)) {
804 /* ./analysis//icode_dump.nit:125 */
805 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
806 if (UNTAG_Bool(REGB0)) {
807 } else {
808 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 125);
809 }
810 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
811 fra.me.REG[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
812 goto label1;
813 } else {
814 /* ./analysis//icode_dump.nit:127 */
815 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra.me.REG[0]);
816 REGB1 = TAG_Int(1);
817 /* ./../lib/standard//kernel.nit:235 */
818 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
819 /* ./analysis//icode_dump.nit:127 */
820 ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra.me.REG[0]) = REGB1;
821 /* ./analysis//icode_dump.nit:128 */
822 REGB1 = TAG_Int(3);
823 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
824 if (!once_value_2) {
825 fra.me.REG[4] = BOX_NativeString("clos");
826 REGB1 = TAG_Int(4);
827 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
828 once_value_2 = fra.me.REG[4];
829 register_static_object(&once_value_2);
830 } else fra.me.REG[4] = once_value_2;
831 fra.me.REG[4] = fra.me.REG[4];
832 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
833 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra.me.REG[0])!=NIT_NULL);
834 if (UNTAG_Bool(REGB1)) {
835 } else {
836 nit_abort("Uninitialized attribute %s", "_last_clos", LOCATE_analysis___icode_dump, 128);
837 }
838 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra.me.REG[0]);
839 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
840 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
841 if (!once_value_3) {
842 fra.me.REG[4] = BOX_NativeString("");
843 REGB1 = TAG_Int(0);
844 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
845 once_value_3 = fra.me.REG[4];
846 register_static_object(&once_value_3);
847 } else fra.me.REG[4] = once_value_3;
848 fra.me.REG[4] = fra.me.REG[4];
849 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
850 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
851 /* ./analysis//icode_dump.nit:129 */
852 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
853 if (UNTAG_Bool(REGB1)) {
854 } else {
855 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 129);
856 }
857 fra.me.REG[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
858 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]);
859 /* ./analysis//icode_dump.nit:130 */
860 fra.me.REG[2] = fra.me.REG[3];
861 goto label1;
862 }
863 label1: while(0);
864 stack_frame_head = fra.me.prev;
865 return fra.me.REG[2];
866 }
867 val_t analysis___icode_dump___ICodeDumper___lab(val_t p0, val_t p1){
868 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
869 val_t REGB0;
870 val_t REGB1;
871 val_t tmp;
872 static val_t once_value_2; /* Once value */
873 static val_t once_value_3; /* Once value */
874 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
875 fra.me.file = LOCATE_analysis___icode_dump;
876 fra.me.line = 135;
877 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___lab;
878 fra.me.has_broke = 0;
879 fra.me.REG_size = 5;
880 fra.me.REG[0] = NIT_NULL;
881 fra.me.REG[1] = NIT_NULL;
882 fra.me.REG[2] = NIT_NULL;
883 fra.me.REG[3] = NIT_NULL;
884 fra.me.REG[4] = NIT_NULL;
885 fra.me.REG[0] = p0;
886 fra.me.REG[1] = p1;
887 /* ./analysis//icode_dump.nit:139 */
888 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
889 if (UNTAG_Bool(REGB0)) {
890 } else {
891 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 139);
892 }
893 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
894 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
895 if (UNTAG_Bool(REGB0)) {
896 /* ./analysis//icode_dump.nit:140 */
897 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
898 if (UNTAG_Bool(REGB0)) {
899 } else {
900 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 140);
901 }
902 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
903 fra.me.REG[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
904 goto label1;
905 } else {
906 /* ./analysis//icode_dump.nit:142 */
907 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_label(fra.me.REG[0]);
908 REGB1 = TAG_Int(1);
909 /* ./../lib/standard//kernel.nit:235 */
910 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
911 /* ./analysis//icode_dump.nit:142 */
912 ATTR_analysis___icode_dump___ICodeDumper____last_label(fra.me.REG[0]) = REGB1;
913 /* ./analysis//icode_dump.nit:143 */
914 REGB1 = TAG_Int(3);
915 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
916 if (!once_value_2) {
917 fra.me.REG[4] = BOX_NativeString("[l");
918 REGB1 = TAG_Int(2);
919 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
920 once_value_2 = fra.me.REG[4];
921 register_static_object(&once_value_2);
922 } else fra.me.REG[4] = once_value_2;
923 fra.me.REG[4] = fra.me.REG[4];
924 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
925 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_label(fra.me.REG[0])!=NIT_NULL);
926 if (UNTAG_Bool(REGB1)) {
927 } else {
928 nit_abort("Uninitialized attribute %s", "_last_label", LOCATE_analysis___icode_dump, 143);
929 }
930 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____last_label(fra.me.REG[0]);
931 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
932 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
933 if (!once_value_3) {
934 fra.me.REG[4] = BOX_NativeString("]");
935 REGB1 = TAG_Int(1);
936 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
937 once_value_3 = fra.me.REG[4];
938 register_static_object(&once_value_3);
939 } else fra.me.REG[4] = once_value_3;
940 fra.me.REG[4] = fra.me.REG[4];
941 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
942 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
943 /* ./analysis//icode_dump.nit:144 */
944 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
945 if (UNTAG_Bool(REGB1)) {
946 } else {
947 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 144);
948 }
949 fra.me.REG[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
950 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]);
951 /* ./analysis//icode_dump.nit:145 */
952 fra.me.REG[2] = fra.me.REG[3];
953 goto label1;
954 }
955 label1: while(0);
956 stack_frame_head = fra.me.prev;
957 return fra.me.REG[2];
958 }
959 val_t analysis___icode_dump___ICodeDumper___line(val_t p0, val_t p1){
960 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
961 val_t REGB0;
962 val_t REGB1;
963 val_t tmp;
964 static val_t once_value_2; /* Once value */
965 static val_t once_value_3; /* Once value */
966 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
967 fra.me.file = LOCATE_analysis___icode_dump;
968 fra.me.line = 150;
969 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___line;
970 fra.me.has_broke = 0;
971 fra.me.REG_size = 5;
972 fra.me.REG[0] = NIT_NULL;
973 fra.me.REG[1] = NIT_NULL;
974 fra.me.REG[2] = NIT_NULL;
975 fra.me.REG[3] = NIT_NULL;
976 fra.me.REG[4] = NIT_NULL;
977 fra.me.REG[0] = p0;
978 fra.me.REG[1] = p1;
979 /* ./analysis//icode_dump.nit:153 */
980 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
981 if (UNTAG_Bool(REGB0)) {
982 } else {
983 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 153);
984 }
985 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
986 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
987 if (UNTAG_Bool(REGB0)) {
988 /* ./analysis//icode_dump.nit:154 */
989 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
990 if (UNTAG_Bool(REGB0)) {
991 } else {
992 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 154);
993 }
994 fra.me.REG[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
995 fra.me.REG[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
996 goto label1;
997 } else {
998 /* ./analysis//icode_dump.nit:156 */
999 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____last_line(fra.me.REG[0]);
1000 REGB1 = TAG_Int(1);
1001 /* ./../lib/standard//kernel.nit:235 */
1002 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
1003 /* ./analysis//icode_dump.nit:156 */
1004 ATTR_analysis___icode_dump___ICodeDumper____last_line(fra.me.REG[0]) = REGB1;
1005 /* ./analysis//icode_dump.nit:157 */
1006 REGB1 = TAG_Int(3);
1007 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
1008 if (!once_value_2) {
1009 fra.me.REG[4] = BOX_NativeString("");
1010 REGB1 = TAG_Int(0);
1011 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
1012 once_value_2 = fra.me.REG[4];
1013 register_static_object(&once_value_2);
1014 } else fra.me.REG[4] = once_value_2;
1015 fra.me.REG[4] = fra.me.REG[4];
1016 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1017 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_line(fra.me.REG[0])!=NIT_NULL);
1018 if (UNTAG_Bool(REGB1)) {
1019 } else {
1020 nit_abort("Uninitialized attribute %s", "_last_line", LOCATE_analysis___icode_dump, 157);
1021 }
1022 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____last_line(fra.me.REG[0]);
1023 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
1024 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1025 if (!once_value_3) {
1026 fra.me.REG[4] = BOX_NativeString("");
1027 REGB1 = TAG_Int(0);
1028 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
1029 once_value_3 = fra.me.REG[4];
1030 register_static_object(&once_value_3);
1031 } else fra.me.REG[4] = once_value_3;
1032 fra.me.REG[4] = fra.me.REG[4];
1033 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1034 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
1035 /* ./analysis//icode_dump.nit:158 */
1036 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
1037 if (UNTAG_Bool(REGB1)) {
1038 } else {
1039 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 158);
1040 }
1041 fra.me.REG[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
1042 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[3]);
1043 /* ./analysis//icode_dump.nit:159 */
1044 fra.me.REG[2] = fra.me.REG[3];
1045 goto label1;
1046 }
1047 label1: while(0);
1048 stack_frame_head = fra.me.prev;
1049 return fra.me.REG[2];
1050 }
1051 val_t analysis___icode_dump___ICodeDumper___has_lab(val_t p0, val_t p1){
1052 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
1053 val_t REGB0;
1054 val_t tmp;
1055 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1056 fra.me.file = LOCATE_analysis___icode_dump;
1057 fra.me.line = 163;
1058 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___has_lab;
1059 fra.me.has_broke = 0;
1060 fra.me.REG_size = 2;
1061 fra.me.REG[0] = NIT_NULL;
1062 fra.me.REG[1] = NIT_NULL;
1063 fra.me.REG[0] = p0;
1064 fra.me.REG[1] = p1;
1065 /* ./analysis//icode_dump.nit:166 */
1066 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0])!=NIT_NULL);
1067 if (UNTAG_Bool(REGB0)) {
1068 } else {
1069 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump, 166);
1070 }
1071 fra.me.REG[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra.me.REG[0]);
1072 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1073 goto label1;
1074 label1: while(0);
1075 stack_frame_head = fra.me.prev;
1076 return REGB0;
1077 }
1078 void analysis___icode_dump___ICodeDumper___write(val_t p0, val_t p1){
1079 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1080 val_t REGB0;
1081 val_t REGB1;
1082 val_t REGB2;
1083 val_t tmp;
1084 static val_t once_value_1; /* Once value */
1085 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1086 fra.me.file = LOCATE_analysis___icode_dump;
1087 fra.me.line = 169;
1088 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___write;
1089 fra.me.has_broke = 0;
1090 fra.me.REG_size = 4;
1091 fra.me.REG[0] = NIT_NULL;
1092 fra.me.REG[1] = NIT_NULL;
1093 fra.me.REG[2] = NIT_NULL;
1094 fra.me.REG[3] = NIT_NULL;
1095 fra.me.REG[0] = p0;
1096 fra.me.REG[1] = p1;
1097 /* ./analysis//icode_dump.nit:172 */
1098 REGB0 = TAG_Int(0);
1099 REGB1 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0])!=NIT_NULL);
1100 if (UNTAG_Bool(REGB1)) {
1101 } else {
1102 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_analysis___icode_dump, 172);
1103 }
1104 REGB1 = ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]);
1105 /* ./../lib/standard//kernel.nit:352 */
1106 while(1) {
1107 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1108 if (UNTAG_Bool(REGB2)) {
1109 } else {
1110 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1111 }
1112 /* ./../lib/standard//kernel.nit:232 */
1113 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1114 /* ./../lib/standard//kernel.nit:352 */
1115 if (UNTAG_Bool(REGB2)) {
1116 /* ./analysis//icode_dump.nit:173 */
1117 REGB2 = TAG_Int(0);
1118 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2);
1119 if (!once_value_1) {
1120 fra.me.REG[3] = BOX_NativeString(" ");
1121 REGB2 = TAG_Int(4);
1122 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB2);
1123 once_value_1 = fra.me.REG[3];
1124 register_static_object(&once_value_1);
1125 } else fra.me.REG[3] = once_value_1;
1126 fra.me.REG[3] = fra.me.REG[3];
1127 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1128 CALL_standard___file___Object___printn(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
1129 /* ./../lib/standard//kernel.nit:354 */
1130 REGB2 = TAG_Int(1);
1131 /* ./../lib/standard//kernel.nit:235 */
1132 REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
1133 /* ./../lib/standard//kernel.nit:354 */
1134 REGB0 = REGB2;
1135 } else {
1136 /* ./../lib/standard//kernel.nit:352 */
1137 goto label2;
1138 }
1139 }
1140 label2: while(0);
1141 /* ./analysis//icode_dump.nit:175 */
1142 CALL_standard___file___Object___print(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1143 stack_frame_head = fra.me.prev;
1144 return;
1145 }
1146 val_t analysis___icode_dump___ICodeDumper___indent_level(val_t p0){
1147 struct {struct stack_frame_t me;} fra;
1148 val_t REGB0;
1149 val_t tmp;
1150 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1151 fra.me.file = LOCATE_analysis___icode_dump;
1152 fra.me.line = 178;
1153 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___indent_level;
1154 fra.me.has_broke = 0;
1155 fra.me.REG_size = 1;
1156 fra.me.REG[0] = NIT_NULL;
1157 fra.me.REG[0] = p0;
1158 /* ./analysis//icode_dump.nit:178 */
1159 REGB0 = TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0])!=NIT_NULL);
1160 if (UNTAG_Bool(REGB0)) {
1161 } else {
1162 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_analysis___icode_dump, 178);
1163 }
1164 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]);
1165 stack_frame_head = fra.me.prev;
1166 return REGB0;
1167 }
1168 void analysis___icode_dump___ICodeDumper___indent(val_t p0){
1169 struct {struct stack_frame_t me;} fra;
1170 val_t REGB0;
1171 val_t REGB1;
1172 val_t tmp;
1173 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1174 fra.me.file = LOCATE_analysis___icode_dump;
1175 fra.me.line = 180;
1176 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___indent;
1177 fra.me.has_broke = 0;
1178 fra.me.REG_size = 1;
1179 fra.me.REG[0] = NIT_NULL;
1180 fra.me.REG[0] = p0;
1181 /* ./analysis//icode_dump.nit:181 */
1182 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]);
1183 REGB1 = TAG_Int(1);
1184 /* ./../lib/standard//kernel.nit:235 */
1185 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
1186 /* ./analysis//icode_dump.nit:181 */
1187 ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]) = REGB1;
1188 stack_frame_head = fra.me.prev;
1189 return;
1190 }
1191 void analysis___icode_dump___ICodeDumper___unindent(val_t p0){
1192 struct {struct stack_frame_t me;} fra;
1193 val_t REGB0;
1194 val_t REGB1;
1195 val_t tmp;
1196 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1197 fra.me.file = LOCATE_analysis___icode_dump;
1198 fra.me.line = 183;
1199 fra.me.meth = LOCATE_analysis___icode_dump___ICodeDumper___unindent;
1200 fra.me.has_broke = 0;
1201 fra.me.REG_size = 1;
1202 fra.me.REG[0] = NIT_NULL;
1203 fra.me.REG[0] = p0;
1204 /* ./analysis//icode_dump.nit:184 */
1205 REGB0 = ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]);
1206 REGB1 = TAG_Int(1);
1207 /* ./../lib/standard//kernel.nit:237 */
1208 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
1209 /* ./analysis//icode_dump.nit:184 */
1210 ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra.me.REG[0]) = REGB1;
1211 stack_frame_head = fra.me.prev;
1212 return;
1213 }
1214 void analysis___icode_dump___ICode___dump(val_t p0, val_t p1){
1215 struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
1216 val_t REGB0;
1217 val_t REGB1;
1218 val_t tmp;
1219 static val_t once_value_1; /* Once value */
1220 static val_t once_value_2; /* Once value */
1221 static val_t once_value_3; /* Once value */
1222 static val_t once_value_4; /* Once value */
1223 static val_t once_value_5; /* Once value */
1224 static val_t once_value_6; /* Once value */
1225 static val_t once_value_7; /* Once value */
1226 static val_t once_value_8; /* Once value */
1227 static val_t once_value_9; /* Once value */
1228 static val_t once_value_10; /* Once value */
1229 static val_t once_value_11; /* Once value */
1230 static val_t once_value_12; /* Once value */
1231 static val_t once_value_13; /* Once value */
1232 static val_t once_value_14; /* Once value */
1233 static val_t once_value_15; /* Once value */
1234 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1235 fra.me.file = LOCATE_analysis___icode_dump;
1236 fra.me.line = 188;
1237 fra.me.meth = LOCATE_analysis___icode_dump___ICode___dump;
1238 fra.me.has_broke = 0;
1239 fra.me.REG_size = 8;
1240 fra.me.REG[0] = NIT_NULL;
1241 fra.me.REG[1] = NIT_NULL;
1242 fra.me.REG[2] = NIT_NULL;
1243 fra.me.REG[3] = NIT_NULL;
1244 fra.me.REG[4] = NIT_NULL;
1245 fra.me.REG[5] = NIT_NULL;
1246 fra.me.REG[6] = NIT_NULL;
1247 fra.me.REG[7] = NIT_NULL;
1248 fra.me.REG[0] = p0;
1249 fra.me.REG[1] = p1;
1250 /* ./analysis//icode_dump.nit:191 */
1251 fra.me.REG[2] = CALL_icode___icode_base___ICode___result(fra.me.REG[0])(fra.me.REG[0]);
1252 /* ./analysis//icode_dump.nit:192 */
1253 if (!once_value_1) {
1254 fra.me.REG[3] = BOX_NativeString("");
1255 REGB0 = TAG_Int(0);
1256 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1257 once_value_1 = fra.me.REG[3];
1258 register_static_object(&once_value_1);
1259 } else fra.me.REG[3] = once_value_1;
1260 fra.me.REG[3] = fra.me.REG[3];
1261 /* ./analysis//icode_dump.nit:193 */
1262 if (!once_value_2) {
1263 fra.me.REG[4] = BOX_NativeString("");
1264 REGB0 = TAG_Int(0);
1265 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
1266 once_value_2 = fra.me.REG[4];
1267 register_static_object(&once_value_2);
1268 } else fra.me.REG[4] = once_value_2;
1269 fra.me.REG[4] = fra.me.REG[4];
1270 /* ./analysis//icode_dump.nit:194 */
1271 fra.me.REG[5] = CALL_icode___icode_base___ICode___location(fra.me.REG[0])(fra.me.REG[0]);
1272 /* ./analysis//icode_dump.nit:195 */
1273 REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
1274 if (UNTAG_Bool(REGB0)) {
1275 } else {
1276 REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
1277 if (UNTAG_Bool(REGB1)) {
1278 REGB1 = TAG_Bool(false);
1279 REGB0 = REGB1;
1280 } else {
1281 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
1282 REGB0 = REGB1;
1283 }
1284 }
1285 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
1286 if (UNTAG_Bool(REGB0)) {
1287 REGB0 = CALL_analysis___icode_dump___ICodeDumper___dump_locations(fra.me.REG[1])(fra.me.REG[1]);
1288 } else {
1289 REGB1 = TAG_Bool(false);
1290 REGB0 = REGB1;
1291 }
1292 if (UNTAG_Bool(REGB0)) {
1293 /* ./analysis//icode_dump.nit:196 */
1294 REGB0 = TAG_Int(3);
1295 fra.me.REG[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1296 if (!once_value_3) {
1297 fra.me.REG[7] = BOX_NativeString(" ... ");
1298 REGB0 = TAG_Int(12);
1299 fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
1300 once_value_3 = fra.me.REG[7];
1301 register_static_object(&once_value_3);
1302 } else fra.me.REG[7] = once_value_3;
1303 fra.me.REG[7] = fra.me.REG[7];
1304 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
1305 fra.me.REG[5] = CALL_standard___string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
1306 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1307 if (!once_value_4) {
1308 fra.me.REG[5] = BOX_NativeString("");
1309 REGB0 = TAG_Int(0);
1310 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1311 once_value_4 = fra.me.REG[5];
1312 register_static_object(&once_value_4);
1313 } else fra.me.REG[5] = once_value_4;
1314 fra.me.REG[5] = fra.me.REG[5];
1315 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1316 fra.me.REG[6] = CALL_standard___string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
1317 fra.me.REG[3] = fra.me.REG[6];
1318 }
1319 /* ./analysis//icode_dump.nit:198 */
1320 REGB0 = CALL_analysis___icode_dump___ICodeDumper___dump_line_numbers(fra.me.REG[1])(fra.me.REG[1]);
1321 if (UNTAG_Bool(REGB0)) {
1322 /* ./analysis//icode_dump.nit:199 */
1323 REGB0 = TAG_Int(3);
1324 fra.me.REG[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1325 if (!once_value_5) {
1326 fra.me.REG[5] = BOX_NativeString("");
1327 REGB0 = TAG_Int(0);
1328 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1329 once_value_5 = fra.me.REG[5];
1330 register_static_object(&once_value_5);
1331 } else fra.me.REG[5] = once_value_5;
1332 fra.me.REG[5] = fra.me.REG[5];
1333 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1334 fra.me.REG[5] = CALL_analysis___icode_dump___ICodeDumper___line(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1335 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1336 if (!once_value_6) {
1337 fra.me.REG[5] = BOX_NativeString(": ");
1338 REGB0 = TAG_Int(2);
1339 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1340 once_value_6 = fra.me.REG[5];
1341 register_static_object(&once_value_6);
1342 } else fra.me.REG[5] = once_value_6;
1343 fra.me.REG[5] = fra.me.REG[5];
1344 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1345 fra.me.REG[6] = CALL_standard___string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
1346 fra.me.REG[4] = fra.me.REG[6];
1347 }
1348 /* ./analysis//icode_dump.nit:201 */
1349 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
1350 if (UNTAG_Bool(REGB0)) {
1351 } else {
1352 REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
1353 if (UNTAG_Bool(REGB1)) {
1354 REGB1 = TAG_Bool(false);
1355 REGB0 = REGB1;
1356 } else {
1357 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
1358 REGB0 = REGB1;
1359 }
1360 }
1361 if (UNTAG_Bool(REGB0)) {
1362 /* ./analysis//icode_dump.nit:202 */
1363 REGB0 = TAG_Int(7);
1364 fra.me.REG[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1365 if (!once_value_7) {
1366 fra.me.REG[5] = BOX_NativeString("");
1367 REGB0 = TAG_Int(0);
1368 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1369 once_value_7 = fra.me.REG[5];
1370 register_static_object(&once_value_7);
1371 } else fra.me.REG[5] = once_value_7;
1372 fra.me.REG[5] = fra.me.REG[5];
1373 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1374 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]);
1375 if (!once_value_8) {
1376 fra.me.REG[5] = BOX_NativeString("");
1377 REGB0 = TAG_Int(0);
1378 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1379 once_value_8 = fra.me.REG[5];
1380 register_static_object(&once_value_8);
1381 } else fra.me.REG[5] = once_value_8;
1382 fra.me.REG[5] = fra.me.REG[5];
1383 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1384 fra.me.REG[5] = CALL_analysis___icode_dump___ICode___dump_intern(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1385 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1386 if (!once_value_9) {
1387 fra.me.REG[5] = BOX_NativeString("");
1388 REGB0 = TAG_Int(0);
1389 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1390 once_value_9 = fra.me.REG[5];
1391 register_static_object(&once_value_9);
1392 } else fra.me.REG[5] = once_value_9;
1393 fra.me.REG[5] = fra.me.REG[5];
1394 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1395 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]);
1396 if (!once_value_10) {
1397 fra.me.REG[5] = BOX_NativeString("");
1398 REGB0 = TAG_Int(0);
1399 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1400 once_value_10 = fra.me.REG[5];
1401 register_static_object(&once_value_10);
1402 } else fra.me.REG[5] = once_value_10;
1403 fra.me.REG[5] = fra.me.REG[5];
1404 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1405 fra.me.REG[6] = CALL_standard___string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
1406 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
1407 } else {
1408 /* ./analysis//icode_dump.nit:204 */
1409 REGB0 = TAG_Int(9);
1410 fra.me.REG[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1411 if (!once_value_11) {
1412 fra.me.REG[5] = BOX_NativeString("");
1413 REGB0 = TAG_Int(0);
1414 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
1415 once_value_11 = fra.me.REG[5];
1416 register_static_object(&once_value_11);
1417 } else fra.me.REG[5] = once_value_11;
1418 fra.me.REG[5] = fra.me.REG[5];
1419 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
1420 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]);
1421 if (!once_value_12) {
1422 fra.me.REG[4] = BOX_NativeString("");
1423 REGB0 = TAG_Int(0);
1424 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
1425 once_value_12 = fra.me.REG[4];
1426 register_static_object(&once_value_12);
1427 } else fra.me.REG[4] = once_value_12;
1428 fra.me.REG[4] = fra.me.REG[4];
1429 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]);
1430 fra.me.REG[2] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1431 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]);
1432 if (!once_value_13) {
1433 fra.me.REG[2] = BOX_NativeString(" := ");
1434 REGB0 = TAG_Int(4);
1435 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1436 once_value_13 = fra.me.REG[2];
1437 register_static_object(&once_value_13);
1438 } else fra.me.REG[2] = once_value_13;
1439 fra.me.REG[2] = fra.me.REG[2];
1440 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]);
1441 fra.me.REG[0] = CALL_analysis___icode_dump___ICode___dump_intern(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1442 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
1443 if (!once_value_14) {
1444 fra.me.REG[0] = BOX_NativeString("");
1445 REGB0 = TAG_Int(0);
1446 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
1447 once_value_14 = fra.me.REG[0];
1448 register_static_object(&once_value_14);
1449 } else fra.me.REG[0] = once_value_14;
1450 fra.me.REG[0] = fra.me.REG[0];
1451 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
1452 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]);
1453 if (!once_value_15) {
1454 fra.me.REG[3] = BOX_NativeString("");
1455 REGB0 = TAG_Int(0);
1456 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1457 once_value_15 = fra.me.REG[3];
1458 register_static_object(&once_value_15);
1459 } else fra.me.REG[3] = once_value_15;
1460 fra.me.REG[3] = fra.me.REG[3];
1461 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]);
1462 fra.me.REG[6] = CALL_standard___string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
1463 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
1464 }
1465 stack_frame_head = fra.me.prev;
1466 return;
1467 }
1468 val_t analysis___icode_dump___ICode___dump_intern(val_t p0, val_t p1){
1469 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
1470 val_t REGB0;
1471 val_t tmp;
1472 static val_t once_value_1; /* Once value */
1473 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1474 fra.me.file = LOCATE_analysis___icode_dump;
1475 fra.me.line = 208;
1476 fra.me.meth = LOCATE_analysis___icode_dump___ICode___dump_intern;
1477 fra.me.has_broke = 0;
1478 fra.me.REG_size = 2;
1479 fra.me.REG[0] = NIT_NULL;
1480 fra.me.REG[1] = NIT_NULL;
1481 fra.me.REG[0] = p0;
1482 fra.me.REG[1] = p1;
1483 /* ./analysis//icode_dump.nit:209 */
1484 if (!once_value_1) {
1485 fra.me.REG[1] = BOX_NativeString("???");
1486 REGB0 = TAG_Int(3);
1487 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
1488 once_value_1 = fra.me.REG[1];
1489 register_static_object(&once_value_1);
1490 } else fra.me.REG[1] = once_value_1;
1491 fra.me.REG[1] = fra.me.REG[1];
1492 goto label2;
1493 label2: while(0);
1494 stack_frame_head = fra.me.prev;
1495 return fra.me.REG[1];
1496 }
1497 void analysis___icode_dump___ICodeN___dump(val_t p0, val_t p1){
1498 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1499 val_t REGB0;
1500 val_t REGB1;
1501 val_t tmp;
1502 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1503 fra.me.file = LOCATE_analysis___icode_dump;
1504 fra.me.line = 213;
1505 fra.me.meth = LOCATE_analysis___icode_dump___ICodeN___dump;
1506 fra.me.has_broke = 0;
1507 fra.me.REG_size = 4;
1508 fra.me.REG[0] = NIT_NULL;
1509 fra.me.REG[1] = NIT_NULL;
1510 fra.me.REG[2] = NIT_NULL;
1511 fra.me.REG[3] = NIT_NULL;
1512 fra.me.REG[0] = p0;
1513 fra.me.REG[1] = p1;
1514 /* ./analysis//icode_dump.nit:213 */
1515 fra.me.REG[2] = fra.me.REG[0];
1516 fra.me.REG[3] = fra.me.REG[1];
1517 /* ./analysis//icode_dump.nit:215 */
1518 CALL_SUPER_analysis___icode_dump___ICodeN___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1519 /* ./analysis//icode_dump.nit:216 */
1520 fra.me.REG[2] = CALL_icode___icode_base___ICodeN___closure_defs(fra.me.REG[2])(fra.me.REG[2]);
1521 /* ./analysis//icode_dump.nit:217 */
1522 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
1523 if (UNTAG_Bool(REGB0)) {
1524 } else {
1525 REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
1526 if (UNTAG_Bool(REGB1)) {
1527 REGB1 = TAG_Bool(false);
1528 REGB0 = REGB1;
1529 } else {
1530 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
1531 REGB0 = REGB1;
1532 }
1533 }
1534 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
1535 if (UNTAG_Bool(REGB0)) {
1536 /* ./analysis//icode_dump.nit:218 */
1537 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
1538 if (UNTAG_Bool(REGB0)) {
1539 nit_abort("Reciever is null", NULL, LOCATE_analysis___icode_dump, 218);
1540 }
1541 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___ICodeN___dump_1));
1542 }
1543 stack_frame_head = fra.me.prev;
1544 return;
1545 }
1546 void OC_analysis___icode_dump___ICodeN___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
1547 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
1548 val_t REGB0;
1549 val_t REGB1;
1550 fun_t CREG[1];
1551 val_t tmp;
1552 static val_t once_value_2; /* Once value */
1553 static val_t once_value_3; /* Once value */
1554 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1555 fra.me.file = LOCATE_analysis___icode_dump;
1556 fra.me.line = 0;
1557 fra.me.meth = LOCATE_analysis___icode_dump___ICodeN___dump;
1558 fra.me.has_broke = 0;
1559 fra.me.REG_size = 2;
1560 fra.me.REG[0] = NIT_NULL;
1561 fra.me.REG[1] = NIT_NULL;
1562 fra.me.closure_ctx = closctx_param;
1563 fra.me.closure_funs = CREG;
1564 fra.me.REG[0] = p0;
1565 CREG[0] = clos_fun0;
1566 /* ./analysis//icode_dump.nit:219 */
1567 REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1568 if (UNTAG_Bool(REGB0)) {
1569 } else {
1570 REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1571 if (UNTAG_Bool(REGB1)) {
1572 REGB1 = TAG_Bool(false);
1573 REGB0 = REGB1;
1574 } else {
1575 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], NIT_NULL);
1576 REGB0 = REGB1;
1577 }
1578 }
1579 if (UNTAG_Bool(REGB0)) {
1580 /* ./analysis//icode_dump.nit:220 */
1581 if (!once_value_2) {
1582 fra.me.REG[1] = BOX_NativeString("CLOSURE = NULL");
1583 REGB0 = TAG_Int(14);
1584 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
1585 once_value_2 = fra.me.REG[1];
1586 register_static_object(&once_value_2);
1587 } else fra.me.REG[1] = once_value_2;
1588 fra.me.REG[1] = fra.me.REG[1];
1589 CALL_analysis___icode_dump___ICodeDumper___write(closctx->REG[3])(closctx->REG[3], fra.me.REG[1]);
1590 } else {
1591 /* ./analysis//icode_dump.nit:222 */
1592 if (!once_value_3) {
1593 fra.me.REG[1] = BOX_NativeString("CLOSURE");
1594 REGB0 = TAG_Int(7);
1595 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
1596 once_value_3 = fra.me.REG[1];
1597 register_static_object(&once_value_3);
1598 } else fra.me.REG[1] = once_value_3;
1599 fra.me.REG[1] = fra.me.REG[1];
1600 CALL_analysis___icode_dump___ICodeDumper___write(closctx->REG[3])(closctx->REG[3], fra.me.REG[1]);
1601 /* ./analysis//icode_dump.nit:223 */
1602 CALL_analysis___icode_dump___ICodeDumper___indent(closctx->REG[3])(closctx->REG[3]);
1603 /* ./analysis//icode_dump.nit:224 */
1604 REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1605 if (UNTAG_Bool(REGB0)) {
1606 nit_abort("Reciever is null", NULL, LOCATE_analysis___icode_dump, 224);
1607 }
1608 CALL_analysis___icode_dump___IRoutine___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[3]);
1609 /* ./analysis//icode_dump.nit:225 */
1610 CALL_analysis___icode_dump___ICodeDumper___unindent(closctx->REG[3])(closctx->REG[3]);
1611 }
1612 stack_frame_head = fra.me.prev;
1613 return;
1614 }
1615 void analysis___icode_dump___ISeq___dump(val_t p0, val_t p1){
1616 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1617 val_t REGB0;
1618 val_t REGB1;
1619 val_t tmp;
1620 static val_t once_value_2; /* Once value */
1621 static val_t once_value_3; /* Once value */
1622 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1623 fra.me.file = LOCATE_analysis___icode_dump;
1624 fra.me.line = 233;
1625 fra.me.meth = LOCATE_analysis___icode_dump___ISeq___dump;
1626 fra.me.has_broke = 0;
1627 fra.me.REG_size = 4;
1628 fra.me.REG[0] = NIT_NULL;
1629 fra.me.REG[1] = NIT_NULL;
1630 fra.me.REG[2] = NIT_NULL;
1631 fra.me.REG[3] = NIT_NULL;
1632 fra.me.REG[0] = p0;
1633 fra.me.REG[1] = p1;
1634 /* ./analysis//icode_dump.nit:235 */
1635 fra.me.REG[2] = CALL_icode___icode_base___ISeq___icodes(fra.me.REG[0])(fra.me.REG[0]);
1636 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___ISeq___dump_1));
1637 /* ./analysis//icode_dump.nit:238 */
1638 fra.me.REG[0] = CALL_icode___icode_base___ISeq___iescape_mark(fra.me.REG[0])(fra.me.REG[0]);
1639 /* ./analysis//icode_dump.nit:239 */
1640 REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1641 if (UNTAG_Bool(REGB0)) {
1642 } else {
1643 REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1644 if (UNTAG_Bool(REGB1)) {
1645 REGB1 = TAG_Bool(false);
1646 REGB0 = REGB1;
1647 } else {
1648 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], NIT_NULL);
1649 REGB0 = REGB1;
1650 }
1651 }
1652 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
1653 if (UNTAG_Bool(REGB0)) {
1654 REGB0 = CALL_analysis___icode_dump___ICodeDumper___has_lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1655 } else {
1656 REGB1 = TAG_Bool(false);
1657 REGB0 = REGB1;
1658 }
1659 if (UNTAG_Bool(REGB0)) {
1660 REGB0 = TAG_Int(3);
1661 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1662 if (!once_value_2) {
1663 fra.me.REG[3] = BOX_NativeString("");
1664 REGB0 = TAG_Int(0);
1665 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1666 once_value_2 = fra.me.REG[3];
1667 register_static_object(&once_value_2);
1668 } else fra.me.REG[3] = once_value_2;
1669 fra.me.REG[3] = fra.me.REG[3];
1670 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1671 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1672 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1673 if (!once_value_3) {
1674 fra.me.REG[0] = BOX_NativeString(":");
1675 REGB0 = TAG_Int(1);
1676 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
1677 once_value_3 = fra.me.REG[0];
1678 register_static_object(&once_value_3);
1679 } else fra.me.REG[0] = once_value_3;
1680 fra.me.REG[0] = fra.me.REG[0];
1681 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1682 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1683 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1684 }
1685 stack_frame_head = fra.me.prev;
1686 return;
1687 }
1688 void OC_analysis___icode_dump___ISeq___dump_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
1689 struct {struct stack_frame_t me;} fra;
1690 fun_t CREG[1];
1691 val_t tmp;
1692 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1693 fra.me.file = LOCATE_analysis___icode_dump;
1694 fra.me.line = 0;
1695 fra.me.meth = LOCATE_analysis___icode_dump___ISeq___dump;
1696 fra.me.has_broke = 0;
1697 fra.me.REG_size = 1;
1698 fra.me.REG[0] = NIT_NULL;
1699 fra.me.closure_ctx = closctx_param;
1700 fra.me.closure_funs = CREG;
1701 fra.me.REG[0] = p0;
1702 CREG[0] = clos_fun0;
1703 /* ./analysis//icode_dump.nit:236 */
1704 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
1705 stack_frame_head = fra.me.prev;
1706 return;
1707 }
1708 void analysis___icode_dump___IIf___dump(val_t p0, val_t p1){
1709 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1710 val_t REGB0;
1711 val_t tmp;
1712 static val_t once_value_1; /* Once value */
1713 static val_t once_value_2; /* Once value */
1714 static val_t once_value_3; /* Once value */
1715 static val_t once_value_4; /* Once value */
1716 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1717 fra.me.file = LOCATE_analysis___icode_dump;
1718 fra.me.line = 244;
1719 fra.me.meth = LOCATE_analysis___icode_dump___IIf___dump;
1720 fra.me.has_broke = 0;
1721 fra.me.REG_size = 4;
1722 fra.me.REG[0] = NIT_NULL;
1723 fra.me.REG[1] = NIT_NULL;
1724 fra.me.REG[2] = NIT_NULL;
1725 fra.me.REG[3] = NIT_NULL;
1726 fra.me.REG[0] = p0;
1727 fra.me.REG[1] = p1;
1728 /* ./analysis//icode_dump.nit:246 */
1729 REGB0 = TAG_Int(3);
1730 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1731 if (!once_value_1) {
1732 fra.me.REG[3] = BOX_NativeString("IF(");
1733 REGB0 = TAG_Int(3);
1734 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1735 once_value_1 = fra.me.REG[3];
1736 register_static_object(&once_value_1);
1737 } else fra.me.REG[3] = once_value_1;
1738 fra.me.REG[3] = fra.me.REG[3];
1739 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1740 fra.me.REG[3] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
1741 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
1742 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1743 if (!once_value_2) {
1744 fra.me.REG[3] = BOX_NativeString(") {");
1745 REGB0 = TAG_Int(3);
1746 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1747 once_value_2 = fra.me.REG[3];
1748 register_static_object(&once_value_2);
1749 } else fra.me.REG[3] = once_value_2;
1750 fra.me.REG[3] = fra.me.REG[3];
1751 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1752 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1753 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1754 /* ./analysis//icode_dump.nit:247 */
1755 CALL_analysis___icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]);
1756 /* ./analysis//icode_dump.nit:248 */
1757 fra.me.REG[2] = CALL_icode___icode_base___IIf___then_seq(fra.me.REG[0])(fra.me.REG[0]);
1758 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
1759 /* ./analysis//icode_dump.nit:249 */
1760 CALL_analysis___icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]);
1761 /* ./analysis//icode_dump.nit:250 */
1762 if (!once_value_3) {
1763 fra.me.REG[2] = BOX_NativeString("} ELSE {");
1764 REGB0 = TAG_Int(8);
1765 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1766 once_value_3 = fra.me.REG[2];
1767 register_static_object(&once_value_3);
1768 } else fra.me.REG[2] = once_value_3;
1769 fra.me.REG[2] = fra.me.REG[2];
1770 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1771 /* ./analysis//icode_dump.nit:251 */
1772 CALL_analysis___icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]);
1773 /* ./analysis//icode_dump.nit:252 */
1774 fra.me.REG[0] = CALL_icode___icode_base___IIf___else_seq(fra.me.REG[0])(fra.me.REG[0]);
1775 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1776 /* ./analysis//icode_dump.nit:253 */
1777 CALL_analysis___icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]);
1778 /* ./analysis//icode_dump.nit:254 */
1779 if (!once_value_4) {
1780 fra.me.REG[0] = BOX_NativeString("}");
1781 REGB0 = TAG_Int(1);
1782 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
1783 once_value_4 = fra.me.REG[0];
1784 register_static_object(&once_value_4);
1785 } else fra.me.REG[0] = once_value_4;
1786 fra.me.REG[0] = fra.me.REG[0];
1787 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1788 stack_frame_head = fra.me.prev;
1789 return;
1790 }
1791 void analysis___icode_dump___ILoop___dump(val_t p0, val_t p1){
1792 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1793 val_t REGB0;
1794 val_t REGB1;
1795 val_t tmp;
1796 static val_t once_value_1; /* Once value */
1797 static val_t once_value_3; /* Once value */
1798 static val_t once_value_4; /* Once value */
1799 static val_t once_value_5; /* Once value */
1800 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1801 fra.me.file = LOCATE_analysis___icode_dump;
1802 fra.me.line = 259;
1803 fra.me.meth = LOCATE_analysis___icode_dump___ILoop___dump;
1804 fra.me.has_broke = 0;
1805 fra.me.REG_size = 4;
1806 fra.me.REG[0] = NIT_NULL;
1807 fra.me.REG[1] = NIT_NULL;
1808 fra.me.REG[2] = NIT_NULL;
1809 fra.me.REG[3] = NIT_NULL;
1810 fra.me.REG[0] = p0;
1811 fra.me.REG[1] = p1;
1812 /* ./analysis//icode_dump.nit:261 */
1813 if (!once_value_1) {
1814 fra.me.REG[2] = BOX_NativeString("LOOP {");
1815 REGB0 = TAG_Int(6);
1816 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1817 once_value_1 = fra.me.REG[2];
1818 register_static_object(&once_value_1);
1819 } else fra.me.REG[2] = once_value_1;
1820 fra.me.REG[2] = fra.me.REG[2];
1821 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1822 /* ./analysis//icode_dump.nit:262 */
1823 CALL_analysis___icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]);
1824 /* ./analysis//icode_dump.nit:263 */
1825 fra.me.REG[2] = CALL_icode___icode_base___ISeq___icodes(fra.me.REG[0])(fra.me.REG[0]);
1826 CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_analysis___icode_dump___ILoop___dump_2));
1827 /* ./analysis//icode_dump.nit:266 */
1828 CALL_analysis___icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]);
1829 /* ./analysis//icode_dump.nit:267 */
1830 if (!once_value_3) {
1831 fra.me.REG[2] = BOX_NativeString("}");
1832 REGB0 = TAG_Int(1);
1833 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1834 once_value_3 = fra.me.REG[2];
1835 register_static_object(&once_value_3);
1836 } else fra.me.REG[2] = once_value_3;
1837 fra.me.REG[2] = fra.me.REG[2];
1838 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1839 /* ./analysis//icode_dump.nit:268 */
1840 fra.me.REG[0] = CALL_icode___icode_base___ISeq___iescape_mark(fra.me.REG[0])(fra.me.REG[0]);
1841 /* ./analysis//icode_dump.nit:269 */
1842 REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1843 if (UNTAG_Bool(REGB0)) {
1844 } else {
1845 REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
1846 if (UNTAG_Bool(REGB1)) {
1847 REGB1 = TAG_Bool(false);
1848 REGB0 = REGB1;
1849 } else {
1850 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], NIT_NULL);
1851 REGB0 = REGB1;
1852 }
1853 }
1854 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
1855 if (UNTAG_Bool(REGB0)) {
1856 REGB0 = CALL_analysis___icode_dump___ICodeDumper___has_lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1857 } else {
1858 REGB1 = TAG_Bool(false);
1859 REGB0 = REGB1;
1860 }
1861 if (UNTAG_Bool(REGB0)) {
1862 REGB0 = TAG_Int(3);
1863 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1864 if (!once_value_4) {
1865 fra.me.REG[3] = BOX_NativeString("");
1866 REGB0 = TAG_Int(0);
1867 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1868 once_value_4 = fra.me.REG[3];
1869 register_static_object(&once_value_4);
1870 } else fra.me.REG[3] = once_value_4;
1871 fra.me.REG[3] = fra.me.REG[3];
1872 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1873 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1874 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1875 if (!once_value_5) {
1876 fra.me.REG[0] = BOX_NativeString(":");
1877 REGB0 = TAG_Int(1);
1878 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
1879 once_value_5 = fra.me.REG[0];
1880 register_static_object(&once_value_5);
1881 } else fra.me.REG[0] = once_value_5;
1882 fra.me.REG[0] = fra.me.REG[0];
1883 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1884 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1885 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1886 }
1887 stack_frame_head = fra.me.prev;
1888 return;
1889 }
1890 void OC_analysis___icode_dump___ILoop___dump_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
1891 struct {struct stack_frame_t me;} fra;
1892 fun_t CREG[1];
1893 val_t tmp;
1894 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1895 fra.me.file = LOCATE_analysis___icode_dump;
1896 fra.me.line = 0;
1897 fra.me.meth = LOCATE_analysis___icode_dump___ILoop___dump;
1898 fra.me.has_broke = 0;
1899 fra.me.REG_size = 1;
1900 fra.me.REG[0] = NIT_NULL;
1901 fra.me.closure_ctx = closctx_param;
1902 fra.me.closure_funs = CREG;
1903 fra.me.REG[0] = p0;
1904 CREG[0] = clos_fun0;
1905 /* ./analysis//icode_dump.nit:264 */
1906 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
1907 stack_frame_head = fra.me.prev;
1908 return;
1909 }
1910 val_t analysis___icode_dump___IEscape___dump_intern(val_t p0, val_t p1){
1911 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
1912 val_t REGB0;
1913 val_t tmp;
1914 static val_t once_value_1; /* Once value */
1915 static val_t once_value_2; /* Once value */
1916 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1917 fra.me.file = LOCATE_analysis___icode_dump;
1918 fra.me.line = 274;
1919 fra.me.meth = LOCATE_analysis___icode_dump___IEscape___dump_intern;
1920 fra.me.has_broke = 0;
1921 fra.me.REG_size = 4;
1922 fra.me.REG[0] = NIT_NULL;
1923 fra.me.REG[1] = NIT_NULL;
1924 fra.me.REG[2] = NIT_NULL;
1925 fra.me.REG[3] = NIT_NULL;
1926 fra.me.REG[0] = p0;
1927 fra.me.REG[1] = p1;
1928 /* ./analysis//icode_dump.nit:276 */
1929 REGB0 = TAG_Int(3);
1930 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1931 if (!once_value_1) {
1932 fra.me.REG[3] = BOX_NativeString("ESCAPE ");
1933 REGB0 = TAG_Int(7);
1934 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
1935 once_value_1 = fra.me.REG[3];
1936 register_static_object(&once_value_1);
1937 } else fra.me.REG[3] = once_value_1;
1938 fra.me.REG[3] = fra.me.REG[3];
1939 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1940 fra.me.REG[0] = CALL_icode___icode_base___IEscape___iescape_mark(fra.me.REG[0])(fra.me.REG[0]);
1941 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1942 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1943 if (!once_value_2) {
1944 fra.me.REG[0] = BOX_NativeString("");
1945 REGB0 = TAG_Int(0);
1946 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
1947 once_value_2 = fra.me.REG[0];
1948 register_static_object(&once_value_2);
1949 } else fra.me.REG[0] = once_value_2;
1950 fra.me.REG[0] = fra.me.REG[0];
1951 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
1952 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1953 goto label3;
1954 label3: while(0);
1955 stack_frame_head = fra.me.prev;
1956 return fra.me.REG[2];
1957 }
1958 val_t analysis___icode_dump___IAbort___dump_intern(val_t p0, val_t p1){
1959 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1960 val_t REGB0;
1961 val_t tmp;
1962 static val_t once_value_1; /* Once value */
1963 static val_t once_value_2; /* Once value */
1964 static val_t once_value_3; /* Once value */
1965 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1966 fra.me.file = LOCATE_analysis___icode_dump;
1967 fra.me.line = 281;
1968 fra.me.meth = LOCATE_analysis___icode_dump___IAbort___dump_intern;
1969 fra.me.has_broke = 0;
1970 fra.me.REG_size = 3;
1971 fra.me.REG[0] = NIT_NULL;
1972 fra.me.REG[1] = NIT_NULL;
1973 fra.me.REG[2] = NIT_NULL;
1974 fra.me.REG[0] = p0;
1975 fra.me.REG[1] = p1;
1976 /* ./analysis//icode_dump.nit:283 */
1977 REGB0 = TAG_Int(3);
1978 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
1979 if (!once_value_1) {
1980 fra.me.REG[2] = BOX_NativeString("ABORT (\"");
1981 REGB0 = TAG_Int(8);
1982 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1983 once_value_1 = fra.me.REG[2];
1984 register_static_object(&once_value_1);
1985 } else fra.me.REG[2] = once_value_1;
1986 fra.me.REG[2] = fra.me.REG[2];
1987 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1988 fra.me.REG[0] = CALL_icode___icode_base___IAbort___texts(fra.me.REG[0])(fra.me.REG[0]);
1989 if (!once_value_2) {
1990 fra.me.REG[2] = BOX_NativeString("\", \"");
1991 REGB0 = TAG_Int(4);
1992 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1993 once_value_2 = fra.me.REG[2];
1994 register_static_object(&once_value_2);
1995 } else fra.me.REG[2] = once_value_2;
1996 fra.me.REG[2] = fra.me.REG[2];
1997 fra.me.REG[2] = CALL_standard___string___Collection___join(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
1998 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1999 if (!once_value_3) {
2000 fra.me.REG[2] = BOX_NativeString("\")");
2001 REGB0 = TAG_Int(2);
2002 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2003 once_value_3 = fra.me.REG[2];
2004 register_static_object(&once_value_3);
2005 } else fra.me.REG[2] = once_value_3;
2006 fra.me.REG[2] = fra.me.REG[2];
2007 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2008 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2009 goto label4;
2010 label4: while(0);
2011 stack_frame_head = fra.me.prev;
2012 return fra.me.REG[1];
2013 }
2014 val_t analysis___icode_dump___ICall___dump_intern(val_t p0, val_t p1){
2015 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2016 val_t REGB0;
2017 val_t tmp;
2018 static val_t once_value_1; /* Once value */
2019 static val_t once_value_2; /* Once value */
2020 static val_t once_value_3; /* Once value */
2021 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2022 fra.me.file = LOCATE_analysis___icode_dump;
2023 fra.me.line = 288;
2024 fra.me.meth = LOCATE_analysis___icode_dump___ICall___dump_intern;
2025 fra.me.has_broke = 0;
2026 fra.me.REG_size = 4;
2027 fra.me.REG[0] = NIT_NULL;
2028 fra.me.REG[1] = NIT_NULL;
2029 fra.me.REG[2] = NIT_NULL;
2030 fra.me.REG[3] = NIT_NULL;
2031 fra.me.REG[0] = p0;
2032 fra.me.REG[1] = p1;
2033 /* ./analysis//icode_dump.nit:290 */
2034 REGB0 = TAG_Int(5);
2035 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2036 if (!once_value_1) {
2037 fra.me.REG[3] = BOX_NativeString("CALL ");
2038 REGB0 = TAG_Int(5);
2039 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2040 once_value_1 = fra.me.REG[3];
2041 register_static_object(&once_value_1);
2042 } else fra.me.REG[3] = once_value_1;
2043 fra.me.REG[3] = fra.me.REG[3];
2044 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2045 fra.me.REG[3] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]);
2046 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2047 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2048 if (!once_value_2) {
2049 fra.me.REG[3] = BOX_NativeString("(");
2050 REGB0 = TAG_Int(1);
2051 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2052 once_value_2 = fra.me.REG[3];
2053 register_static_object(&once_value_2);
2054 } else fra.me.REG[3] = once_value_2;
2055 fra.me.REG[3] = fra.me.REG[3];
2056 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2057 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2058 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2059 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2060 if (!once_value_3) {
2061 fra.me.REG[0] = BOX_NativeString(")");
2062 REGB0 = TAG_Int(1);
2063 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2064 once_value_3 = fra.me.REG[0];
2065 register_static_object(&once_value_3);
2066 } else fra.me.REG[0] = once_value_3;
2067 fra.me.REG[0] = fra.me.REG[0];
2068 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2069 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2070 goto label4;
2071 label4: while(0);
2072 stack_frame_head = fra.me.prev;
2073 return fra.me.REG[2];
2074 }
2075 val_t analysis___icode_dump___INew___dump_intern(val_t p0, val_t p1){
2076 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2077 val_t REGB0;
2078 val_t tmp;
2079 static val_t once_value_1; /* Once value */
2080 static val_t once_value_2; /* Once value */
2081 static val_t once_value_3; /* Once value */
2082 static val_t once_value_4; /* Once value */
2083 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2084 fra.me.file = LOCATE_analysis___icode_dump;
2085 fra.me.line = 295;
2086 fra.me.meth = LOCATE_analysis___icode_dump___INew___dump_intern;
2087 fra.me.has_broke = 0;
2088 fra.me.REG_size = 4;
2089 fra.me.REG[0] = NIT_NULL;
2090 fra.me.REG[1] = NIT_NULL;
2091 fra.me.REG[2] = NIT_NULL;
2092 fra.me.REG[3] = NIT_NULL;
2093 fra.me.REG[0] = p0;
2094 fra.me.REG[1] = p1;
2095 /* ./analysis//icode_dump.nit:297 */
2096 REGB0 = TAG_Int(7);
2097 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2098 if (!once_value_1) {
2099 fra.me.REG[3] = BOX_NativeString("NEW ");
2100 REGB0 = TAG_Int(4);
2101 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2102 once_value_1 = fra.me.REG[3];
2103 register_static_object(&once_value_1);
2104 } else fra.me.REG[3] = once_value_1;
2105 fra.me.REG[3] = fra.me.REG[3];
2106 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2107 fra.me.REG[3] = CALL_icode___icode_base___INew___stype(fra.me.REG[0])(fra.me.REG[0]);
2108 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
2109 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2110 if (!once_value_2) {
2111 fra.me.REG[3] = BOX_NativeString(".");
2112 REGB0 = TAG_Int(1);
2113 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2114 once_value_2 = fra.me.REG[3];
2115 register_static_object(&once_value_2);
2116 } else fra.me.REG[3] = once_value_2;
2117 fra.me.REG[3] = fra.me.REG[3];
2118 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2119 fra.me.REG[3] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]);
2120 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2121 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2122 if (!once_value_3) {
2123 fra.me.REG[3] = BOX_NativeString("(");
2124 REGB0 = TAG_Int(1);
2125 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2126 once_value_3 = fra.me.REG[3];
2127 register_static_object(&once_value_3);
2128 } else fra.me.REG[3] = once_value_3;
2129 fra.me.REG[3] = fra.me.REG[3];
2130 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2131 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2132 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2133 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2134 if (!once_value_4) {
2135 fra.me.REG[0] = BOX_NativeString(")");
2136 REGB0 = TAG_Int(1);
2137 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2138 once_value_4 = fra.me.REG[0];
2139 register_static_object(&once_value_4);
2140 } else fra.me.REG[0] = once_value_4;
2141 fra.me.REG[0] = fra.me.REG[0];
2142 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2143 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2144 goto label5;
2145 label5: while(0);
2146 stack_frame_head = fra.me.prev;
2147 return fra.me.REG[2];
2148 }
2149 val_t analysis___icode_dump___ISuper___dump_intern(val_t p0, val_t p1){
2150 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2151 val_t REGB0;
2152 val_t tmp;
2153 static val_t once_value_1; /* Once value */
2154 static val_t once_value_2; /* Once value */
2155 static val_t once_value_3; /* Once value */
2156 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2157 fra.me.file = LOCATE_analysis___icode_dump;
2158 fra.me.line = 302;
2159 fra.me.meth = LOCATE_analysis___icode_dump___ISuper___dump_intern;
2160 fra.me.has_broke = 0;
2161 fra.me.REG_size = 4;
2162 fra.me.REG[0] = NIT_NULL;
2163 fra.me.REG[1] = NIT_NULL;
2164 fra.me.REG[2] = NIT_NULL;
2165 fra.me.REG[3] = NIT_NULL;
2166 fra.me.REG[0] = p0;
2167 fra.me.REG[1] = p1;
2168 /* ./analysis//icode_dump.nit:304 */
2169 REGB0 = TAG_Int(5);
2170 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2171 if (!once_value_1) {
2172 fra.me.REG[3] = BOX_NativeString("SUPER ");
2173 REGB0 = TAG_Int(6);
2174 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2175 once_value_1 = fra.me.REG[3];
2176 register_static_object(&once_value_1);
2177 } else fra.me.REG[3] = once_value_1;
2178 fra.me.REG[3] = fra.me.REG[3];
2179 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2180 fra.me.REG[3] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]);
2181 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2182 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2183 if (!once_value_2) {
2184 fra.me.REG[3] = BOX_NativeString("(");
2185 REGB0 = TAG_Int(1);
2186 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2187 once_value_2 = fra.me.REG[3];
2188 register_static_object(&once_value_2);
2189 } else fra.me.REG[3] = once_value_2;
2190 fra.me.REG[3] = fra.me.REG[3];
2191 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2192 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2193 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2194 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2195 if (!once_value_3) {
2196 fra.me.REG[0] = BOX_NativeString(")");
2197 REGB0 = TAG_Int(1);
2198 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2199 once_value_3 = fra.me.REG[0];
2200 register_static_object(&once_value_3);
2201 } else fra.me.REG[0] = once_value_3;
2202 fra.me.REG[0] = fra.me.REG[0];
2203 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2204 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2205 goto label4;
2206 label4: while(0);
2207 stack_frame_head = fra.me.prev;
2208 return fra.me.REG[2];
2209 }
2210 val_t analysis___icode_dump___IStaticCall___dump_intern(val_t p0, val_t p1){
2211 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2212 val_t REGB0;
2213 val_t tmp;
2214 static val_t once_value_1; /* Once value */
2215 static val_t once_value_2; /* Once value */
2216 static val_t once_value_3; /* Once value */
2217 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2218 fra.me.file = LOCATE_analysis___icode_dump;
2219 fra.me.line = 309;
2220 fra.me.meth = LOCATE_analysis___icode_dump___IStaticCall___dump_intern;
2221 fra.me.has_broke = 0;
2222 fra.me.REG_size = 4;
2223 fra.me.REG[0] = NIT_NULL;
2224 fra.me.REG[1] = NIT_NULL;
2225 fra.me.REG[2] = NIT_NULL;
2226 fra.me.REG[3] = NIT_NULL;
2227 fra.me.REG[0] = p0;
2228 fra.me.REG[1] = p1;
2229 /* ./analysis//icode_dump.nit:311 */
2230 REGB0 = TAG_Int(5);
2231 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2232 if (!once_value_1) {
2233 fra.me.REG[3] = BOX_NativeString("STATIC_CALL ");
2234 REGB0 = TAG_Int(12);
2235 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2236 once_value_1 = fra.me.REG[3];
2237 register_static_object(&once_value_1);
2238 } else fra.me.REG[3] = once_value_1;
2239 fra.me.REG[3] = fra.me.REG[3];
2240 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2241 fra.me.REG[3] = CALL_icode___icode_base___IAbsCall___property(fra.me.REG[0])(fra.me.REG[0]);
2242 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2243 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2244 if (!once_value_2) {
2245 fra.me.REG[3] = BOX_NativeString("(");
2246 REGB0 = TAG_Int(1);
2247 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2248 once_value_2 = fra.me.REG[3];
2249 register_static_object(&once_value_2);
2250 } else fra.me.REG[3] = once_value_2;
2251 fra.me.REG[3] = fra.me.REG[3];
2252 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2253 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2254 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2255 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2256 if (!once_value_3) {
2257 fra.me.REG[0] = BOX_NativeString(")");
2258 REGB0 = TAG_Int(1);
2259 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2260 once_value_3 = fra.me.REG[0];
2261 register_static_object(&once_value_3);
2262 } else fra.me.REG[0] = once_value_3;
2263 fra.me.REG[0] = fra.me.REG[0];
2264 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2265 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2266 goto label4;
2267 label4: while(0);
2268 stack_frame_head = fra.me.prev;
2269 return fra.me.REG[2];
2270 }
2271 val_t analysis___icode_dump___IAllocateInstance___dump_intern(val_t p0, val_t p1){
2272 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2273 val_t REGB0;
2274 val_t tmp;
2275 static val_t once_value_1; /* Once value */
2276 static val_t once_value_2; /* Once value */
2277 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2278 fra.me.file = LOCATE_analysis___icode_dump;
2279 fra.me.line = 316;
2280 fra.me.meth = LOCATE_analysis___icode_dump___IAllocateInstance___dump_intern;
2281 fra.me.has_broke = 0;
2282 fra.me.REG_size = 3;
2283 fra.me.REG[0] = NIT_NULL;
2284 fra.me.REG[1] = NIT_NULL;
2285 fra.me.REG[2] = NIT_NULL;
2286 fra.me.REG[0] = p0;
2287 fra.me.REG[1] = p1;
2288 /* ./analysis//icode_dump.nit:318 */
2289 REGB0 = TAG_Int(3);
2290 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2291 if (!once_value_1) {
2292 fra.me.REG[2] = BOX_NativeString("ALLOCATE NEW_");
2293 REGB0 = TAG_Int(13);
2294 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2295 once_value_1 = fra.me.REG[2];
2296 register_static_object(&once_value_1);
2297 } else fra.me.REG[2] = once_value_1;
2298 fra.me.REG[2] = fra.me.REG[2];
2299 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2300 fra.me.REG[0] = CALL_icode___icode_base___IAllocateInstance___stype(fra.me.REG[0])(fra.me.REG[0]);
2301 fra.me.REG[0] = CALL_standard___string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
2302 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2303 if (!once_value_2) {
2304 fra.me.REG[0] = BOX_NativeString("");
2305 REGB0 = TAG_Int(0);
2306 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2307 once_value_2 = fra.me.REG[0];
2308 register_static_object(&once_value_2);
2309 } else fra.me.REG[0] = once_value_2;
2310 fra.me.REG[0] = fra.me.REG[0];
2311 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2312 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2313 goto label3;
2314 label3: while(0);
2315 stack_frame_head = fra.me.prev;
2316 return fra.me.REG[1];
2317 }
2318 val_t analysis___icode_dump___ICheckInstance___dump_intern(val_t p0, val_t p1){
2319 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2320 val_t REGB0;
2321 val_t tmp;
2322 static val_t once_value_1; /* Once value */
2323 static val_t once_value_2; /* Once value */
2324 static val_t once_value_3; /* Once value */
2325 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2326 fra.me.file = LOCATE_analysis___icode_dump;
2327 fra.me.line = 323;
2328 fra.me.meth = LOCATE_analysis___icode_dump___ICheckInstance___dump_intern;
2329 fra.me.has_broke = 0;
2330 fra.me.REG_size = 4;
2331 fra.me.REG[0] = NIT_NULL;
2332 fra.me.REG[1] = NIT_NULL;
2333 fra.me.REG[2] = NIT_NULL;
2334 fra.me.REG[3] = NIT_NULL;
2335 fra.me.REG[0] = p0;
2336 fra.me.REG[1] = p1;
2337 /* ./analysis//icode_dump.nit:325 */
2338 REGB0 = TAG_Int(5);
2339 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2340 if (!once_value_1) {
2341 fra.me.REG[3] = BOX_NativeString("CHECK_INSTANCE CHECKNEW_");
2342 REGB0 = TAG_Int(24);
2343 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2344 once_value_1 = fra.me.REG[3];
2345 register_static_object(&once_value_1);
2346 } else fra.me.REG[3] = once_value_1;
2347 fra.me.REG[3] = fra.me.REG[3];
2348 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2349 fra.me.REG[3] = CALL_icode___icode_base___ICheckInstance___stype(fra.me.REG[0])(fra.me.REG[0]);
2350 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
2351 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2352 if (!once_value_2) {
2353 fra.me.REG[3] = BOX_NativeString("(");
2354 REGB0 = TAG_Int(1);
2355 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2356 once_value_2 = fra.me.REG[3];
2357 register_static_object(&once_value_2);
2358 } else fra.me.REG[3] = once_value_2;
2359 fra.me.REG[3] = fra.me.REG[3];
2360 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2361 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
2362 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2363 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2364 if (!once_value_3) {
2365 fra.me.REG[0] = BOX_NativeString(")");
2366 REGB0 = TAG_Int(1);
2367 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2368 once_value_3 = fra.me.REG[0];
2369 register_static_object(&once_value_3);
2370 } else fra.me.REG[0] = once_value_3;
2371 fra.me.REG[0] = fra.me.REG[0];
2372 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2373 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2374 goto label4;
2375 label4: while(0);
2376 stack_frame_head = fra.me.prev;
2377 return fra.me.REG[2];
2378 }
2379 val_t analysis___icode_dump___IInitAttributes___dump_intern(val_t p0, val_t p1){
2380 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2381 val_t REGB0;
2382 val_t tmp;
2383 static val_t once_value_1; /* Once value */
2384 static val_t once_value_2; /* Once value */
2385 static val_t once_value_3; /* Once value */
2386 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2387 fra.me.file = LOCATE_analysis___icode_dump;
2388 fra.me.line = 330;
2389 fra.me.meth = LOCATE_analysis___icode_dump___IInitAttributes___dump_intern;
2390 fra.me.has_broke = 0;
2391 fra.me.REG_size = 4;
2392 fra.me.REG[0] = NIT_NULL;
2393 fra.me.REG[1] = NIT_NULL;
2394 fra.me.REG[2] = NIT_NULL;
2395 fra.me.REG[3] = NIT_NULL;
2396 fra.me.REG[0] = p0;
2397 fra.me.REG[1] = p1;
2398 /* ./analysis//icode_dump.nit:332 */
2399 REGB0 = TAG_Int(5);
2400 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2401 if (!once_value_1) {
2402 fra.me.REG[3] = BOX_NativeString("INIT_ATTRIBUTES INIT_ATTRIBUTES_");
2403 REGB0 = TAG_Int(32);
2404 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2405 once_value_1 = fra.me.REG[3];
2406 register_static_object(&once_value_1);
2407 } else fra.me.REG[3] = once_value_1;
2408 fra.me.REG[3] = fra.me.REG[3];
2409 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2410 fra.me.REG[3] = CALL_icode___icode_base___IInitAttributes___stype(fra.me.REG[0])(fra.me.REG[0]);
2411 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
2412 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2413 if (!once_value_2) {
2414 fra.me.REG[3] = BOX_NativeString("(");
2415 REGB0 = TAG_Int(1);
2416 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2417 once_value_2 = fra.me.REG[3];
2418 register_static_object(&once_value_2);
2419 } else fra.me.REG[3] = once_value_2;
2420 fra.me.REG[3] = fra.me.REG[3];
2421 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2422 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
2423 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2424 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2425 if (!once_value_3) {
2426 fra.me.REG[0] = BOX_NativeString(")");
2427 REGB0 = TAG_Int(1);
2428 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2429 once_value_3 = fra.me.REG[0];
2430 register_static_object(&once_value_3);
2431 } else fra.me.REG[0] = once_value_3;
2432 fra.me.REG[0] = fra.me.REG[0];
2433 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2434 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2435 goto label4;
2436 label4: while(0);
2437 stack_frame_head = fra.me.prev;
2438 return fra.me.REG[2];
2439 }
2440 val_t analysis___icode_dump___IClosCall___dump_intern(val_t p0, val_t p1){
2441 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2442 val_t REGB0;
2443 val_t tmp;
2444 static val_t once_value_1; /* Once value */
2445 static val_t once_value_2; /* Once value */
2446 static val_t once_value_3; /* Once value */
2447 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2448 fra.me.file = LOCATE_analysis___icode_dump;
2449 fra.me.line = 337;
2450 fra.me.meth = LOCATE_analysis___icode_dump___IClosCall___dump_intern;
2451 fra.me.has_broke = 0;
2452 fra.me.REG_size = 4;
2453 fra.me.REG[0] = NIT_NULL;
2454 fra.me.REG[1] = NIT_NULL;
2455 fra.me.REG[2] = NIT_NULL;
2456 fra.me.REG[3] = NIT_NULL;
2457 fra.me.REG[0] = p0;
2458 fra.me.REG[1] = p1;
2459 /* ./analysis//icode_dump.nit:339 */
2460 REGB0 = TAG_Int(5);
2461 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2462 if (!once_value_1) {
2463 fra.me.REG[3] = BOX_NativeString("CLOS_CALL ");
2464 REGB0 = TAG_Int(10);
2465 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2466 once_value_1 = fra.me.REG[3];
2467 register_static_object(&once_value_1);
2468 } else fra.me.REG[3] = once_value_1;
2469 fra.me.REG[3] = fra.me.REG[3];
2470 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2471 fra.me.REG[3] = CALL_icode___icode_base___IClosCall___closure_decl(fra.me.REG[0])(fra.me.REG[0]);
2472 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
2473 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2474 if (!once_value_2) {
2475 fra.me.REG[3] = BOX_NativeString("(");
2476 REGB0 = TAG_Int(1);
2477 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2478 once_value_2 = fra.me.REG[3];
2479 register_static_object(&once_value_2);
2480 } else fra.me.REG[3] = once_value_2;
2481 fra.me.REG[3] = fra.me.REG[3];
2482 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2483 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2484 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2485 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2486 if (!once_value_3) {
2487 fra.me.REG[0] = BOX_NativeString(")");
2488 REGB0 = TAG_Int(1);
2489 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2490 once_value_3 = fra.me.REG[0];
2491 register_static_object(&once_value_3);
2492 } else fra.me.REG[0] = once_value_3;
2493 fra.me.REG[0] = fra.me.REG[0];
2494 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2495 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2496 goto label4;
2497 label4: while(0);
2498 stack_frame_head = fra.me.prev;
2499 return fra.me.REG[2];
2500 }
2501 val_t analysis___icode_dump___IAttrRead___dump_intern(val_t p0, val_t p1){
2502 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2503 val_t REGB0;
2504 val_t tmp;
2505 static val_t once_value_1; /* Once value */
2506 static val_t once_value_2; /* Once value */
2507 static val_t once_value_3; /* Once value */
2508 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2509 fra.me.file = LOCATE_analysis___icode_dump;
2510 fra.me.line = 344;
2511 fra.me.meth = LOCATE_analysis___icode_dump___IAttrRead___dump_intern;
2512 fra.me.has_broke = 0;
2513 fra.me.REG_size = 4;
2514 fra.me.REG[0] = NIT_NULL;
2515 fra.me.REG[1] = NIT_NULL;
2516 fra.me.REG[2] = NIT_NULL;
2517 fra.me.REG[3] = NIT_NULL;
2518 fra.me.REG[0] = p0;
2519 fra.me.REG[1] = p1;
2520 /* ./analysis//icode_dump.nit:346 */
2521 REGB0 = TAG_Int(5);
2522 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2523 if (!once_value_1) {
2524 fra.me.REG[3] = BOX_NativeString("ATTR_READ ");
2525 REGB0 = TAG_Int(10);
2526 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2527 once_value_1 = fra.me.REG[3];
2528 register_static_object(&once_value_1);
2529 } else fra.me.REG[3] = once_value_1;
2530 fra.me.REG[3] = fra.me.REG[3];
2531 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2532 fra.me.REG[3] = CALL_icode___icode_base___IAttrRead___property(fra.me.REG[0])(fra.me.REG[0]);
2533 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2534 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2535 if (!once_value_2) {
2536 fra.me.REG[3] = BOX_NativeString("(");
2537 REGB0 = TAG_Int(1);
2538 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2539 once_value_2 = fra.me.REG[3];
2540 register_static_object(&once_value_2);
2541 } else fra.me.REG[3] = once_value_2;
2542 fra.me.REG[3] = fra.me.REG[3];
2543 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2544 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
2545 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2546 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2547 if (!once_value_3) {
2548 fra.me.REG[0] = BOX_NativeString(")");
2549 REGB0 = TAG_Int(1);
2550 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2551 once_value_3 = fra.me.REG[0];
2552 register_static_object(&once_value_3);
2553 } else fra.me.REG[0] = once_value_3;
2554 fra.me.REG[0] = fra.me.REG[0];
2555 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2556 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2557 goto label4;
2558 label4: while(0);
2559 stack_frame_head = fra.me.prev;
2560 return fra.me.REG[2];
2561 }
2562 val_t analysis___icode_dump___IAttrWrite___dump_intern(val_t p0, val_t p1){
2563 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2564 val_t REGB0;
2565 val_t tmp;
2566 static val_t once_value_1; /* Once value */
2567 static val_t once_value_2; /* Once value */
2568 static val_t once_value_3; /* Once value */
2569 static val_t once_value_4; /* Once value */
2570 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2571 fra.me.file = LOCATE_analysis___icode_dump;
2572 fra.me.line = 351;
2573 fra.me.meth = LOCATE_analysis___icode_dump___IAttrWrite___dump_intern;
2574 fra.me.has_broke = 0;
2575 fra.me.REG_size = 4;
2576 fra.me.REG[0] = NIT_NULL;
2577 fra.me.REG[1] = NIT_NULL;
2578 fra.me.REG[2] = NIT_NULL;
2579 fra.me.REG[3] = NIT_NULL;
2580 fra.me.REG[0] = p0;
2581 fra.me.REG[1] = p1;
2582 /* ./analysis//icode_dump.nit:353 */
2583 REGB0 = TAG_Int(7);
2584 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2585 if (!once_value_1) {
2586 fra.me.REG[3] = BOX_NativeString("ATTR_WRITE ");
2587 REGB0 = TAG_Int(11);
2588 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2589 once_value_1 = fra.me.REG[3];
2590 register_static_object(&once_value_1);
2591 } else fra.me.REG[3] = once_value_1;
2592 fra.me.REG[3] = fra.me.REG[3];
2593 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2594 fra.me.REG[3] = CALL_icode___icode_base___IAttrWrite___property(fra.me.REG[0])(fra.me.REG[0]);
2595 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2596 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2597 if (!once_value_2) {
2598 fra.me.REG[3] = BOX_NativeString("(");
2599 REGB0 = TAG_Int(1);
2600 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2601 once_value_2 = fra.me.REG[3];
2602 register_static_object(&once_value_2);
2603 } else fra.me.REG[3] = once_value_2;
2604 fra.me.REG[3] = fra.me.REG[3];
2605 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2606 fra.me.REG[3] = CALL_icode___icode_base___ICode2___expr1(fra.me.REG[0])(fra.me.REG[0]);
2607 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
2608 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2609 if (!once_value_3) {
2610 fra.me.REG[3] = BOX_NativeString(") := ");
2611 REGB0 = TAG_Int(5);
2612 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2613 once_value_3 = fra.me.REG[3];
2614 register_static_object(&once_value_3);
2615 } else fra.me.REG[3] = once_value_3;
2616 fra.me.REG[3] = fra.me.REG[3];
2617 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2618 fra.me.REG[0] = CALL_icode___icode_base___ICode2___expr2(fra.me.REG[0])(fra.me.REG[0]);
2619 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2620 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2621 if (!once_value_4) {
2622 fra.me.REG[0] = BOX_NativeString("");
2623 REGB0 = TAG_Int(0);
2624 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2625 once_value_4 = fra.me.REG[0];
2626 register_static_object(&once_value_4);
2627 } else fra.me.REG[0] = once_value_4;
2628 fra.me.REG[0] = fra.me.REG[0];
2629 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2630 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2631 goto label5;
2632 label5: while(0);
2633 stack_frame_head = fra.me.prev;
2634 return fra.me.REG[2];
2635 }
2636 val_t analysis___icode_dump___IAttrIsset___dump_intern(val_t p0, val_t p1){
2637 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2638 val_t REGB0;
2639 val_t tmp;
2640 static val_t once_value_1; /* Once value */
2641 static val_t once_value_2; /* Once value */
2642 static val_t once_value_3; /* Once value */
2643 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2644 fra.me.file = LOCATE_analysis___icode_dump;
2645 fra.me.line = 358;
2646 fra.me.meth = LOCATE_analysis___icode_dump___IAttrIsset___dump_intern;
2647 fra.me.has_broke = 0;
2648 fra.me.REG_size = 4;
2649 fra.me.REG[0] = NIT_NULL;
2650 fra.me.REG[1] = NIT_NULL;
2651 fra.me.REG[2] = NIT_NULL;
2652 fra.me.REG[3] = NIT_NULL;
2653 fra.me.REG[0] = p0;
2654 fra.me.REG[1] = p1;
2655 /* ./analysis//icode_dump.nit:360 */
2656 REGB0 = TAG_Int(5);
2657 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2658 if (!once_value_1) {
2659 fra.me.REG[3] = BOX_NativeString("ATTR_ISSET ");
2660 REGB0 = TAG_Int(11);
2661 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2662 once_value_1 = fra.me.REG[3];
2663 register_static_object(&once_value_1);
2664 } else fra.me.REG[3] = once_value_1;
2665 fra.me.REG[3] = fra.me.REG[3];
2666 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2667 fra.me.REG[3] = CALL_icode___icode_base___IAttrIsset___property(fra.me.REG[0])(fra.me.REG[0]);
2668 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2669 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2670 if (!once_value_2) {
2671 fra.me.REG[3] = BOX_NativeString("(");
2672 REGB0 = TAG_Int(1);
2673 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2674 once_value_2 = fra.me.REG[3];
2675 register_static_object(&once_value_2);
2676 } else fra.me.REG[3] = once_value_2;
2677 fra.me.REG[3] = fra.me.REG[3];
2678 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2679 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
2680 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2681 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2682 if (!once_value_3) {
2683 fra.me.REG[0] = BOX_NativeString(")");
2684 REGB0 = TAG_Int(1);
2685 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2686 once_value_3 = fra.me.REG[0];
2687 register_static_object(&once_value_3);
2688 } else fra.me.REG[0] = once_value_3;
2689 fra.me.REG[0] = fra.me.REG[0];
2690 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2691 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2692 goto label4;
2693 label4: while(0);
2694 stack_frame_head = fra.me.prev;
2695 return fra.me.REG[2];
2696 }
2697 val_t analysis___icode_dump___ITypeCheck___dump_intern(val_t p0, val_t p1){
2698 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2699 val_t REGB0;
2700 val_t tmp;
2701 static val_t once_value_1; /* Once value */
2702 static val_t once_value_2; /* Once value */
2703 static val_t once_value_3; /* Once value */
2704 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2705 fra.me.file = LOCATE_analysis___icode_dump;
2706 fra.me.line = 365;
2707 fra.me.meth = LOCATE_analysis___icode_dump___ITypeCheck___dump_intern;
2708 fra.me.has_broke = 0;
2709 fra.me.REG_size = 4;
2710 fra.me.REG[0] = NIT_NULL;
2711 fra.me.REG[1] = NIT_NULL;
2712 fra.me.REG[2] = NIT_NULL;
2713 fra.me.REG[3] = NIT_NULL;
2714 fra.me.REG[0] = p0;
2715 fra.me.REG[1] = p1;
2716 /* ./analysis//icode_dump.nit:367 */
2717 REGB0 = TAG_Int(5);
2718 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2719 if (!once_value_1) {
2720 fra.me.REG[3] = BOX_NativeString("CHECKTYPE ");
2721 REGB0 = TAG_Int(10);
2722 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2723 once_value_1 = fra.me.REG[3];
2724 register_static_object(&once_value_1);
2725 } else fra.me.REG[3] = once_value_1;
2726 fra.me.REG[3] = fra.me.REG[3];
2727 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2728 fra.me.REG[3] = CALL_icode___icode_base___ICode2___expr2(fra.me.REG[0])(fra.me.REG[0]);
2729 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
2730 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2731 if (!once_value_2) {
2732 fra.me.REG[3] = BOX_NativeString(" isa ");
2733 REGB0 = TAG_Int(5);
2734 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2735 once_value_2 = fra.me.REG[3];
2736 register_static_object(&once_value_2);
2737 } else fra.me.REG[3] = once_value_2;
2738 fra.me.REG[3] = fra.me.REG[3];
2739 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2740 fra.me.REG[0] = CALL_icode___icode_base___ITypeCheck___stype(fra.me.REG[0])(fra.me.REG[0]);
2741 fra.me.REG[0] = CALL_standard___string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
2742 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2743 if (!once_value_3) {
2744 fra.me.REG[0] = BOX_NativeString("");
2745 REGB0 = TAG_Int(0);
2746 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2747 once_value_3 = fra.me.REG[0];
2748 register_static_object(&once_value_3);
2749 } else fra.me.REG[0] = once_value_3;
2750 fra.me.REG[0] = fra.me.REG[0];
2751 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2752 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2753 goto label4;
2754 label4: while(0);
2755 stack_frame_head = fra.me.prev;
2756 return fra.me.REG[2];
2757 }
2758 val_t analysis___icode_dump___INative___dump_intern(val_t p0, val_t p1){
2759 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
2760 val_t REGB0;
2761 val_t tmp;
2762 static val_t once_value_1; /* Once value */
2763 static val_t once_value_2; /* Once value */
2764 static val_t once_value_3; /* Once value */
2765 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2766 fra.me.file = LOCATE_analysis___icode_dump;
2767 fra.me.line = 372;
2768 fra.me.meth = LOCATE_analysis___icode_dump___INative___dump_intern;
2769 fra.me.has_broke = 0;
2770 fra.me.REG_size = 4;
2771 fra.me.REG[0] = NIT_NULL;
2772 fra.me.REG[1] = NIT_NULL;
2773 fra.me.REG[2] = NIT_NULL;
2774 fra.me.REG[3] = NIT_NULL;
2775 fra.me.REG[0] = p0;
2776 fra.me.REG[1] = p1;
2777 /* ./analysis//icode_dump.nit:374 */
2778 REGB0 = TAG_Int(5);
2779 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2780 if (!once_value_1) {
2781 fra.me.REG[3] = BOX_NativeString("NATIVE \"");
2782 REGB0 = TAG_Int(8);
2783 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2784 once_value_1 = fra.me.REG[3];
2785 register_static_object(&once_value_1);
2786 } else fra.me.REG[3] = once_value_1;
2787 fra.me.REG[3] = fra.me.REG[3];
2788 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2789 fra.me.REG[3] = CALL_icode___icode_base___INative___method(fra.me.REG[0])(fra.me.REG[0]);
2790 fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[3])(fra.me.REG[3]);
2791 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2792 if (!once_value_2) {
2793 fra.me.REG[3] = BOX_NativeString("\"(");
2794 REGB0 = TAG_Int(2);
2795 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
2796 once_value_2 = fra.me.REG[3];
2797 register_static_object(&once_value_2);
2798 } else fra.me.REG[3] = once_value_2;
2799 fra.me.REG[3] = fra.me.REG[3];
2800 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
2801 fra.me.REG[0] = CALL_icode___icode_base___ICodeN___exprs(fra.me.REG[0])(fra.me.REG[0]);
2802 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2803 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2804 if (!once_value_3) {
2805 fra.me.REG[0] = BOX_NativeString(")");
2806 REGB0 = TAG_Int(1);
2807 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2808 once_value_3 = fra.me.REG[0];
2809 register_static_object(&once_value_3);
2810 } else fra.me.REG[0] = once_value_3;
2811 fra.me.REG[0] = fra.me.REG[0];
2812 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
2813 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
2814 goto label4;
2815 label4: while(0);
2816 stack_frame_head = fra.me.prev;
2817 return fra.me.REG[2];
2818 }
2819 val_t analysis___icode_dump___IIntValue___dump_intern(val_t p0, val_t p1){
2820 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2821 val_t REGB0;
2822 val_t tmp;
2823 static val_t once_value_1; /* Once value */
2824 static val_t once_value_2; /* Once value */
2825 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2826 fra.me.file = LOCATE_analysis___icode_dump;
2827 fra.me.line = 379;
2828 fra.me.meth = LOCATE_analysis___icode_dump___IIntValue___dump_intern;
2829 fra.me.has_broke = 0;
2830 fra.me.REG_size = 3;
2831 fra.me.REG[0] = NIT_NULL;
2832 fra.me.REG[1] = NIT_NULL;
2833 fra.me.REG[2] = NIT_NULL;
2834 fra.me.REG[0] = p0;
2835 fra.me.REG[1] = p1;
2836 /* ./analysis//icode_dump.nit:381 */
2837 REGB0 = TAG_Int(3);
2838 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2839 if (!once_value_1) {
2840 fra.me.REG[2] = BOX_NativeString("INTVALUE ");
2841 REGB0 = TAG_Int(9);
2842 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2843 once_value_1 = fra.me.REG[2];
2844 register_static_object(&once_value_1);
2845 } else fra.me.REG[2] = once_value_1;
2846 fra.me.REG[2] = fra.me.REG[2];
2847 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2848 fra.me.REG[0] = CALL_icode___icode_base___IIntValue___value(fra.me.REG[0])(fra.me.REG[0]);
2849 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2850 if (!once_value_2) {
2851 fra.me.REG[0] = BOX_NativeString("");
2852 REGB0 = TAG_Int(0);
2853 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2854 once_value_2 = fra.me.REG[0];
2855 register_static_object(&once_value_2);
2856 } else fra.me.REG[0] = once_value_2;
2857 fra.me.REG[0] = fra.me.REG[0];
2858 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2859 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2860 goto label3;
2861 label3: while(0);
2862 stack_frame_head = fra.me.prev;
2863 return fra.me.REG[1];
2864 }
2865 val_t analysis___icode_dump___IBoolValue___dump_intern(val_t p0, val_t p1){
2866 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2867 val_t REGB0;
2868 val_t tmp;
2869 static val_t once_value_1; /* Once value */
2870 static val_t once_value_2; /* Once value */
2871 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2872 fra.me.file = LOCATE_analysis___icode_dump;
2873 fra.me.line = 386;
2874 fra.me.meth = LOCATE_analysis___icode_dump___IBoolValue___dump_intern;
2875 fra.me.has_broke = 0;
2876 fra.me.REG_size = 3;
2877 fra.me.REG[0] = NIT_NULL;
2878 fra.me.REG[1] = NIT_NULL;
2879 fra.me.REG[2] = NIT_NULL;
2880 fra.me.REG[0] = p0;
2881 fra.me.REG[1] = p1;
2882 /* ./analysis//icode_dump.nit:388 */
2883 REGB0 = TAG_Int(3);
2884 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2885 if (!once_value_1) {
2886 fra.me.REG[2] = BOX_NativeString("BOOLVALUE ");
2887 REGB0 = TAG_Int(10);
2888 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2889 once_value_1 = fra.me.REG[2];
2890 register_static_object(&once_value_1);
2891 } else fra.me.REG[2] = once_value_1;
2892 fra.me.REG[2] = fra.me.REG[2];
2893 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2894 REGB0 = CALL_icode___icode_base___IBoolValue___value(fra.me.REG[0])(fra.me.REG[0]);
2895 fra.me.REG[0] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
2896 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2897 if (!once_value_2) {
2898 fra.me.REG[0] = BOX_NativeString("");
2899 REGB0 = TAG_Int(0);
2900 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2901 once_value_2 = fra.me.REG[0];
2902 register_static_object(&once_value_2);
2903 } else fra.me.REG[0] = once_value_2;
2904 fra.me.REG[0] = fra.me.REG[0];
2905 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2906 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2907 goto label3;
2908 label3: while(0);
2909 stack_frame_head = fra.me.prev;
2910 return fra.me.REG[1];
2911 }
2912 val_t analysis___icode_dump___IStringValue___dump_intern(val_t p0, val_t p1){
2913 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2914 val_t REGB0;
2915 val_t tmp;
2916 static val_t once_value_1; /* Once value */
2917 static val_t once_value_2; /* Once value */
2918 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2919 fra.me.file = LOCATE_analysis___icode_dump;
2920 fra.me.line = 393;
2921 fra.me.meth = LOCATE_analysis___icode_dump___IStringValue___dump_intern;
2922 fra.me.has_broke = 0;
2923 fra.me.REG_size = 3;
2924 fra.me.REG[0] = NIT_NULL;
2925 fra.me.REG[1] = NIT_NULL;
2926 fra.me.REG[2] = NIT_NULL;
2927 fra.me.REG[0] = p0;
2928 fra.me.REG[1] = p1;
2929 /* ./analysis//icode_dump.nit:395 */
2930 REGB0 = TAG_Int(3);
2931 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2932 if (!once_value_1) {
2933 fra.me.REG[2] = BOX_NativeString("STRINGVALUE ");
2934 REGB0 = TAG_Int(12);
2935 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2936 once_value_1 = fra.me.REG[2];
2937 register_static_object(&once_value_1);
2938 } else fra.me.REG[2] = once_value_1;
2939 fra.me.REG[2] = fra.me.REG[2];
2940 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2941 fra.me.REG[0] = CALL_icode___icode_base___IStringValue___value(fra.me.REG[0])(fra.me.REG[0]);
2942 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2943 if (!once_value_2) {
2944 fra.me.REG[0] = BOX_NativeString("");
2945 REGB0 = TAG_Int(0);
2946 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2947 once_value_2 = fra.me.REG[0];
2948 register_static_object(&once_value_2);
2949 } else fra.me.REG[0] = once_value_2;
2950 fra.me.REG[0] = fra.me.REG[0];
2951 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2952 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2953 goto label3;
2954 label3: while(0);
2955 stack_frame_head = fra.me.prev;
2956 return fra.me.REG[1];
2957 }
2958 val_t analysis___icode_dump___ICharValue___dump_intern(val_t p0, val_t p1){
2959 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2960 val_t REGB0;
2961 val_t tmp;
2962 static val_t once_value_1; /* Once value */
2963 static val_t once_value_2; /* Once value */
2964 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2965 fra.me.file = LOCATE_analysis___icode_dump;
2966 fra.me.line = 400;
2967 fra.me.meth = LOCATE_analysis___icode_dump___ICharValue___dump_intern;
2968 fra.me.has_broke = 0;
2969 fra.me.REG_size = 3;
2970 fra.me.REG[0] = NIT_NULL;
2971 fra.me.REG[1] = NIT_NULL;
2972 fra.me.REG[2] = NIT_NULL;
2973 fra.me.REG[0] = p0;
2974 fra.me.REG[1] = p1;
2975 /* ./analysis//icode_dump.nit:402 */
2976 REGB0 = TAG_Int(3);
2977 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
2978 if (!once_value_1) {
2979 fra.me.REG[2] = BOX_NativeString("CHARVALUE ");
2980 REGB0 = TAG_Int(10);
2981 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2982 once_value_1 = fra.me.REG[2];
2983 register_static_object(&once_value_1);
2984 } else fra.me.REG[2] = once_value_1;
2985 fra.me.REG[2] = fra.me.REG[2];
2986 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
2987 fra.me.REG[0] = CALL_icode___icode_base___ICharValue___value(fra.me.REG[0])(fra.me.REG[0]);
2988 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2989 if (!once_value_2) {
2990 fra.me.REG[0] = BOX_NativeString("");
2991 REGB0 = TAG_Int(0);
2992 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
2993 once_value_2 = fra.me.REG[0];
2994 register_static_object(&once_value_2);
2995 } else fra.me.REG[0] = once_value_2;
2996 fra.me.REG[0] = fra.me.REG[0];
2997 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
2998 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
2999 goto label3;
3000 label3: while(0);
3001 stack_frame_head = fra.me.prev;
3002 return fra.me.REG[1];
3003 }
3004 val_t analysis___icode_dump___IFloatValue___dump_intern(val_t p0, val_t p1){
3005 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3006 val_t REGB0;
3007 val_t tmp;
3008 static val_t once_value_1; /* Once value */
3009 static val_t once_value_2; /* Once value */
3010 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3011 fra.me.file = LOCATE_analysis___icode_dump;
3012 fra.me.line = 407;
3013 fra.me.meth = LOCATE_analysis___icode_dump___IFloatValue___dump_intern;
3014 fra.me.has_broke = 0;
3015 fra.me.REG_size = 3;
3016 fra.me.REG[0] = NIT_NULL;
3017 fra.me.REG[1] = NIT_NULL;
3018 fra.me.REG[2] = NIT_NULL;
3019 fra.me.REG[0] = p0;
3020 fra.me.REG[1] = p1;
3021 /* ./analysis//icode_dump.nit:409 */
3022 REGB0 = TAG_Int(3);
3023 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3024 if (!once_value_1) {
3025 fra.me.REG[2] = BOX_NativeString("FLOATVALUE ");
3026 REGB0 = TAG_Int(11);
3027 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3028 once_value_1 = fra.me.REG[2];
3029 register_static_object(&once_value_1);
3030 } else fra.me.REG[2] = once_value_1;
3031 fra.me.REG[2] = fra.me.REG[2];
3032 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
3033 fra.me.REG[0] = CALL_icode___icode_base___IFloatValue___value(fra.me.REG[0])(fra.me.REG[0]);
3034 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3035 if (!once_value_2) {
3036 fra.me.REG[0] = BOX_NativeString("");
3037 REGB0 = TAG_Int(0);
3038 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
3039 once_value_2 = fra.me.REG[0];
3040 register_static_object(&once_value_2);
3041 } else fra.me.REG[0] = once_value_2;
3042 fra.me.REG[0] = fra.me.REG[0];
3043 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3044 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
3045 goto label3;
3046 label3: while(0);
3047 stack_frame_head = fra.me.prev;
3048 return fra.me.REG[1];
3049 }
3050 val_t analysis___icode_dump___IMove___dump_intern(val_t p0, val_t p1){
3051 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
3052 val_t REGB0;
3053 val_t tmp;
3054 static val_t once_value_1; /* Once value */
3055 static val_t once_value_2; /* Once value */
3056 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3057 fra.me.file = LOCATE_analysis___icode_dump;
3058 fra.me.line = 414;
3059 fra.me.meth = LOCATE_analysis___icode_dump___IMove___dump_intern;
3060 fra.me.has_broke = 0;
3061 fra.me.REG_size = 4;
3062 fra.me.REG[0] = NIT_NULL;
3063 fra.me.REG[1] = NIT_NULL;
3064 fra.me.REG[2] = NIT_NULL;
3065 fra.me.REG[3] = NIT_NULL;
3066 fra.me.REG[0] = p0;
3067 fra.me.REG[1] = p1;
3068 /* ./analysis//icode_dump.nit:416 */
3069 REGB0 = TAG_Int(3);
3070 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3071 if (!once_value_1) {
3072 fra.me.REG[3] = BOX_NativeString("");
3073 REGB0 = TAG_Int(0);
3074 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
3075 once_value_1 = fra.me.REG[3];
3076 register_static_object(&once_value_1);
3077 } else fra.me.REG[3] = once_value_1;
3078 fra.me.REG[3] = fra.me.REG[3];
3079 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3080 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
3081 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3082 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3083 if (!once_value_2) {
3084 fra.me.REG[0] = BOX_NativeString("");
3085 REGB0 = TAG_Int(0);
3086 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
3087 once_value_2 = fra.me.REG[0];
3088 register_static_object(&once_value_2);
3089 } else fra.me.REG[0] = once_value_2;
3090 fra.me.REG[0] = fra.me.REG[0];
3091 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3092 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
3093 goto label3;
3094 label3: while(0);
3095 stack_frame_head = fra.me.prev;
3096 return fra.me.REG[2];
3097 }
3098 val_t analysis___icode_dump___IIs___dump_intern(val_t p0, val_t p1){
3099 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
3100 val_t REGB0;
3101 val_t tmp;
3102 static val_t once_value_1; /* Once value */
3103 static val_t once_value_2; /* Once value */
3104 static val_t once_value_3; /* Once value */
3105 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3106 fra.me.file = LOCATE_analysis___icode_dump;
3107 fra.me.line = 421;
3108 fra.me.meth = LOCATE_analysis___icode_dump___IIs___dump_intern;
3109 fra.me.has_broke = 0;
3110 fra.me.REG_size = 4;
3111 fra.me.REG[0] = NIT_NULL;
3112 fra.me.REG[1] = NIT_NULL;
3113 fra.me.REG[2] = NIT_NULL;
3114 fra.me.REG[3] = NIT_NULL;
3115 fra.me.REG[0] = p0;
3116 fra.me.REG[1] = p1;
3117 /* ./analysis//icode_dump.nit:423 */
3118 REGB0 = TAG_Int(5);
3119 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3120 if (!once_value_1) {
3121 fra.me.REG[3] = BOX_NativeString("");
3122 REGB0 = TAG_Int(0);
3123 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
3124 once_value_1 = fra.me.REG[3];
3125 register_static_object(&once_value_1);
3126 } else fra.me.REG[3] = once_value_1;
3127 fra.me.REG[3] = fra.me.REG[3];
3128 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3129 fra.me.REG[3] = CALL_icode___icode_base___ICode2___expr1(fra.me.REG[0])(fra.me.REG[0]);
3130 fra.me.REG[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
3131 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3132 if (!once_value_2) {
3133 fra.me.REG[3] = BOX_NativeString(" is ");
3134 REGB0 = TAG_Int(4);
3135 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
3136 once_value_2 = fra.me.REG[3];
3137 register_static_object(&once_value_2);
3138 } else fra.me.REG[3] = once_value_2;
3139 fra.me.REG[3] = fra.me.REG[3];
3140 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3141 fra.me.REG[0] = CALL_icode___icode_base___ICode2___expr2(fra.me.REG[0])(fra.me.REG[0]);
3142 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3143 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3144 if (!once_value_3) {
3145 fra.me.REG[0] = BOX_NativeString("");
3146 REGB0 = TAG_Int(0);
3147 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
3148 once_value_3 = fra.me.REG[0];
3149 register_static_object(&once_value_3);
3150 } else fra.me.REG[0] = once_value_3;
3151 fra.me.REG[0] = fra.me.REG[0];
3152 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3153 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
3154 goto label4;
3155 label4: while(0);
3156 stack_frame_head = fra.me.prev;
3157 return fra.me.REG[2];
3158 }
3159 val_t analysis___icode_dump___INot___dump_intern(val_t p0, val_t p1){
3160 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
3161 val_t REGB0;
3162 val_t tmp;
3163 static val_t once_value_1; /* Once value */
3164 static val_t once_value_2; /* Once value */
3165 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3166 fra.me.file = LOCATE_analysis___icode_dump;
3167 fra.me.line = 428;
3168 fra.me.meth = LOCATE_analysis___icode_dump___INot___dump_intern;
3169 fra.me.has_broke = 0;
3170 fra.me.REG_size = 4;
3171 fra.me.REG[0] = NIT_NULL;
3172 fra.me.REG[1] = NIT_NULL;
3173 fra.me.REG[2] = NIT_NULL;
3174 fra.me.REG[3] = NIT_NULL;
3175 fra.me.REG[0] = p0;
3176 fra.me.REG[1] = p1;
3177 /* ./analysis//icode_dump.nit:430 */
3178 REGB0 = TAG_Int(3);
3179 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3180 if (!once_value_1) {
3181 fra.me.REG[3] = BOX_NativeString("NOT ");
3182 REGB0 = TAG_Int(4);
3183 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
3184 once_value_1 = fra.me.REG[3];
3185 register_static_object(&once_value_1);
3186 } else fra.me.REG[3] = once_value_1;
3187 fra.me.REG[3] = fra.me.REG[3];
3188 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3189 fra.me.REG[0] = CALL_icode___icode_base___ICode1___expr(fra.me.REG[0])(fra.me.REG[0]);
3190 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3191 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3192 if (!once_value_2) {
3193 fra.me.REG[0] = BOX_NativeString("");
3194 REGB0 = TAG_Int(0);
3195 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
3196 once_value_2 = fra.me.REG[0];
3197 register_static_object(&once_value_2);
3198 } else fra.me.REG[0] = once_value_2;
3199 fra.me.REG[0] = fra.me.REG[0];
3200 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3201 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
3202 goto label3;
3203 label3: while(0);
3204 stack_frame_head = fra.me.prev;
3205 return fra.me.REG[2];
3206 }
3207 void analysis___icode_dump___IOnce___dump(val_t p0, val_t p1){
3208 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
3209 val_t REGB0;
3210 val_t tmp;
3211 static val_t once_value_1; /* Once value */
3212 static val_t once_value_2; /* Once value */
3213 static val_t once_value_3; /* Once value */
3214 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3215 fra.me.file = LOCATE_analysis___icode_dump;
3216 fra.me.line = 435;
3217 fra.me.meth = LOCATE_analysis___icode_dump___IOnce___dump;
3218 fra.me.has_broke = 0;
3219 fra.me.REG_size = 5;
3220 fra.me.REG[0] = NIT_NULL;
3221 fra.me.REG[1] = NIT_NULL;
3222 fra.me.REG[2] = NIT_NULL;
3223 fra.me.REG[3] = NIT_NULL;
3224 fra.me.REG[4] = NIT_NULL;
3225 fra.me.REG[0] = p0;
3226 fra.me.REG[1] = p1;
3227 /* ./analysis//icode_dump.nit:435 */
3228 fra.me.REG[2] = fra.me.REG[0];
3229 /* ./analysis//icode_dump.nit:437 */
3230 REGB0 = TAG_Int(3);
3231 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3232 if (!once_value_1) {
3233 fra.me.REG[4] = BOX_NativeString("");
3234 REGB0 = TAG_Int(0);
3235 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
3236 once_value_1 = fra.me.REG[4];
3237 register_static_object(&once_value_1);
3238 } else fra.me.REG[4] = once_value_1;
3239 fra.me.REG[4] = fra.me.REG[4];
3240 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
3241 fra.me.REG[4] = CALL_icode___icode_base___ICode___result(fra.me.REG[2])(fra.me.REG[2]);
3242 REGB0 = TAG_Bool((fra.me.REG[4]!=NIT_NULL) && VAL_ISA(fra.me.REG[4], COLOR_icode___icode_base___IRegister, ID_icode___icode_base___IRegister)) /*cast IRegister*/;
3243 if (UNTAG_Bool(REGB0)) {
3244 } else {
3245 nit_abort("Cast failed", NULL, LOCATE_analysis___icode_dump, 437);
3246 }
3247 fra.me.REG[4] = CALL_analysis___icode_dump___ICodeDumper___register(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
3248 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
3249 if (!once_value_2) {
3250 fra.me.REG[4] = BOX_NativeString(" := ONCE {");
3251 REGB0 = TAG_Int(10);
3252 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
3253 once_value_2 = fra.me.REG[4];
3254 register_static_object(&once_value_2);
3255 } else fra.me.REG[4] = once_value_2;
3256 fra.me.REG[4] = fra.me.REG[4];
3257 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
3258 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
3259 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
3260 /* ./analysis//icode_dump.nit:438 */
3261 CALL_analysis___icode_dump___ICodeDumper___indent(fra.me.REG[1])(fra.me.REG[1]);
3262 /* ./analysis//icode_dump.nit:439 */
3263 fra.me.REG[2] = CALL_icode___icode_base___IOnce___body(fra.me.REG[2])(fra.me.REG[2]);
3264 CALL_analysis___icode_dump___ICode___dump(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
3265 /* ./analysis//icode_dump.nit:440 */
3266 CALL_analysis___icode_dump___ICodeDumper___unindent(fra.me.REG[1])(fra.me.REG[1]);
3267 /* ./analysis//icode_dump.nit:441 */
3268 if (!once_value_3) {
3269 fra.me.REG[2] = BOX_NativeString("}");
3270 REGB0 = TAG_Int(1);
3271 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3272 once_value_3 = fra.me.REG[2];
3273 register_static_object(&once_value_3);
3274 } else fra.me.REG[2] = once_value_3;
3275 fra.me.REG[2] = fra.me.REG[2];
3276 CALL_analysis___icode_dump___ICodeDumper___write(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
3277 stack_frame_head = fra.me.prev;
3278 return;
3279 }
3280 val_t analysis___icode_dump___IHasClos___dump_intern(val_t p0, val_t p1){
3281 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
3282 val_t REGB0;
3283 val_t tmp;
3284 static val_t once_value_1; /* Once value */
3285 static val_t once_value_2; /* Once value */
3286 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3287 fra.me.file = LOCATE_analysis___icode_dump;
3288 fra.me.line = 446;
3289 fra.me.meth = LOCATE_analysis___icode_dump___IHasClos___dump_intern;
3290 fra.me.has_broke = 0;
3291 fra.me.REG_size = 4;
3292 fra.me.REG[0] = NIT_NULL;
3293 fra.me.REG[1] = NIT_NULL;
3294 fra.me.REG[2] = NIT_NULL;
3295 fra.me.REG[3] = NIT_NULL;
3296 fra.me.REG[0] = p0;
3297 fra.me.REG[1] = p1;
3298 /* ./analysis//icode_dump.nit:448 */
3299 REGB0 = TAG_Int(3);
3300 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0);
3301 if (!once_value_1) {
3302 fra.me.REG[3] = BOX_NativeString("HASCLOS ");
3303 REGB0 = TAG_Int(8);
3304 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
3305 once_value_1 = fra.me.REG[3];
3306 register_static_object(&once_value_1);
3307 } else fra.me.REG[3] = once_value_1;
3308 fra.me.REG[3] = fra.me.REG[3];
3309 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
3310 fra.me.REG[0] = CALL_icode___icode_base___IHasClos___closure_decl(fra.me.REG[0])(fra.me.REG[0]);
3311 fra.me.REG[0] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
3312 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3313 if (!once_value_2) {
3314 fra.me.REG[0] = BOX_NativeString("");
3315 REGB0 = TAG_Int(0);
3316 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
3317 once_value_2 = fra.me.REG[0];
3318 register_static_object(&once_value_2);
3319 } else fra.me.REG[0] = once_value_2;
3320 fra.me.REG[0] = fra.me.REG[0];
3321 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
3322 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
3323 goto label3;
3324 label3: while(0);
3325 stack_frame_head = fra.me.prev;
3326 return fra.me.REG[2];
3327 }