1 /* This C file is generated by NIT to compile module icode_dump. */
2 #include "icode_dump._sep.h"
3 void icode_dump___IRoutine___dump(val_t p0
, val_t p1
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
8 static val_t once_value_2
; /* Once value */
9 static val_t once_value_3
; /* Once value */
10 static val_t once_value_4
; /* Once value */
11 static val_t once_value_5
; /* Once value */
12 static val_t once_value_6
; /* Once value */
13 static val_t once_value_7
; /* Once value */
14 static val_t once_value_8
; /* Once value */
15 static val_t once_value_9
; /* Once value */
16 static val_t once_value_10
; /* Once value */
17 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
18 fra
.me
.file
= LOCATE_icode_dump
;
20 fra
.me
.meth
= LOCATE_icode_dump___IRoutine___dump
;
23 fra
.me
.REG
[0] = NIT_NULL
;
24 fra
.me
.REG
[1] = NIT_NULL
;
25 fra
.me
.REG
[2] = NIT_NULL
;
26 fra
.me
.REG
[3] = NIT_NULL
;
27 fra
.me
.REG
[4] = NIT_NULL
;
30 /* ./analysis//icode_dump.nit:27 */
31 fra
.me
.REG
[2] = CALL_icode_base___IRoutine___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
32 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
33 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
34 if (UNTAG_Bool(REGB0
)) {
35 /* ./analysis//icode_dump.nit:28 */
36 fra
.me
.REG
[2] = NEW_Array_array___Array___init();
37 /* ./analysis//icode_dump.nit:29 */
38 fra
.me
.REG
[3] = CALL_icode_base___IRoutine___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
39 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_icode_dump___IRoutine___dump_1
));
40 /* ./analysis//icode_dump.nit:32 */
42 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB0
);
44 fra
.me
.REG
[4] = BOX_NativeString("Parameters: ");
46 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
47 once_value_2
= fra
.me
.REG
[4];
48 register_static_object(&once_value_2
);
49 } else fra
.me
.REG
[4] = once_value_2
;
50 fra
.me
.REG
[4] = fra
.me
.REG
[4];
51 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
53 fra
.me
.REG
[4] = BOX_NativeString(", ");
55 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
56 once_value_3
= fra
.me
.REG
[4];
57 register_static_object(&once_value_3
);
58 } else fra
.me
.REG
[4] = once_value_3
;
59 fra
.me
.REG
[4] = fra
.me
.REG
[4];
60 fra
.me
.REG
[4] = CALL_string___Collection___join(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
61 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
63 fra
.me
.REG
[4] = BOX_NativeString("");
65 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
66 once_value_4
= fra
.me
.REG
[4];
67 register_static_object(&once_value_4
);
68 } else fra
.me
.REG
[4] = once_value_4
;
69 fra
.me
.REG
[4] = fra
.me
.REG
[4];
70 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
71 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
72 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
74 /* ./analysis//icode_dump.nit:34 */
75 fra
.me
.REG
[3] = CALL_icode_base___IRoutine___result(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
76 /* ./analysis//icode_dump.nit:35 */
77 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
78 if (UNTAG_Bool(REGB0
)) {
80 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
81 if (UNTAG_Bool(REGB1
)) {
82 REGB1
= TAG_Bool(false);
85 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
89 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
90 if (UNTAG_Bool(REGB0
)) {
91 /* ./analysis//icode_dump.nit:36 */
93 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
95 fra
.me
.REG
[2] = BOX_NativeString("Result: ");
97 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
98 once_value_5
= fra
.me
.REG
[2];
99 register_static_object(&once_value_5
);
100 } else fra
.me
.REG
[2] = once_value_5
;
101 fra
.me
.REG
[2] = fra
.me
.REG
[2];
102 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
103 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
104 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
106 fra
.me
.REG
[3] = BOX_NativeString("");
108 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
109 once_value_6
= fra
.me
.REG
[3];
110 register_static_object(&once_value_6
);
111 } else fra
.me
.REG
[3] = once_value_6
;
112 fra
.me
.REG
[3] = fra
.me
.REG
[3];
113 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
114 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
115 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
117 /* ./analysis//icode_dump.nit:38 */
118 REGB0
= CALL_allocate_iregister_slots___IRoutine___std_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
120 /* ./../lib/standard//kernel.nit:214 */
121 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
122 /* ./analysis//icode_dump.nit:38 */
123 if (UNTAG_Bool(REGB1
)) {
124 /* ./analysis//icode_dump.nit:39 */
126 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB1
);
128 fra
.me
.REG
[3] = BOX_NativeString("StdSlots: ");
130 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB1
);
131 once_value_7
= fra
.me
.REG
[3];
132 register_static_object(&once_value_7
);
133 } else fra
.me
.REG
[3] = once_value_7
;
134 fra
.me
.REG
[3] = fra
.me
.REG
[3];
135 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
136 REGB1
= CALL_allocate_iregister_slots___IRoutine___std_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
137 fra
.me
.REG
[3] = CALL_string___Object___to_s(REGB1
)(REGB1
);
138 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
140 fra
.me
.REG
[3] = BOX_NativeString("");
142 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB1
);
143 once_value_8
= fra
.me
.REG
[3];
144 register_static_object(&once_value_8
);
145 } else fra
.me
.REG
[3] = once_value_8
;
146 fra
.me
.REG
[3] = fra
.me
.REG
[3];
147 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
148 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
149 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
151 /* ./analysis//icode_dump.nit:41 */
152 REGB1
= CALL_allocate_iregister_slots___IRoutine___tag_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
154 /* ./../lib/standard//kernel.nit:214 */
155 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
156 /* ./analysis//icode_dump.nit:41 */
157 if (UNTAG_Bool(REGB0
)) {
158 /* ./analysis//icode_dump.nit:42 */
160 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
162 fra
.me
.REG
[3] = BOX_NativeString("TagSlots: ");
164 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
165 once_value_9
= fra
.me
.REG
[3];
166 register_static_object(&once_value_9
);
167 } else fra
.me
.REG
[3] = once_value_9
;
168 fra
.me
.REG
[3] = fra
.me
.REG
[3];
169 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
170 REGB0
= CALL_allocate_iregister_slots___IRoutine___tag_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
171 fra
.me
.REG
[3] = CALL_string___Object___to_s(REGB0
)(REGB0
);
172 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
173 if (!once_value_10
) {
174 fra
.me
.REG
[3] = BOX_NativeString("");
176 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
177 once_value_10
= fra
.me
.REG
[3];
178 register_static_object(&once_value_10
);
179 } else fra
.me
.REG
[3] = once_value_10
;
180 fra
.me
.REG
[3] = fra
.me
.REG
[3];
181 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
182 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
183 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
185 /* ./analysis//icode_dump.nit:44 */
186 fra
.me
.REG
[4] = CALL_icode_base___IRoutine___closure_decls(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
187 /* ./analysis//icode_dump.nit:45 */
188 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
189 if (UNTAG_Bool(REGB0
)) {
191 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
192 if (UNTAG_Bool(REGB1
)) {
193 REGB1
= TAG_Bool(false);
196 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
200 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
201 if (UNTAG_Bool(REGB0
)) {
202 /* ./analysis//icode_dump.nit:46 */
203 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
204 if (UNTAG_Bool(REGB0
)) {
205 nit_abort("Reciever is null", NULL
, LOCATE_icode_dump
, 46);
207 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[4])(fra
.me
.REG
[4], (&(fra
.me
)), ((fun_t
)OC_icode_dump___IRoutine___dump_11
));
209 /* ./analysis//icode_dump.nit:50 */
210 fra
.me
.REG
[0] = CALL_icode_base___IRoutine___body(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
211 CALL_icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
212 stack_frame_head
= fra
.me
.prev
;
215 void OC_icode_dump___IRoutine___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
216 struct {struct stack_frame_t me
;} fra
;
219 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
220 fra
.me
.file
= LOCATE_icode_dump
;
222 fra
.me
.meth
= LOCATE_icode_dump___IRoutine___dump
;
223 fra
.me
.has_broke
= 0;
225 fra
.me
.REG
[0] = NIT_NULL
;
226 fra
.me
.closure_ctx
= closctx_param
;
227 fra
.me
.closure_funs
= CREG
;
230 /* ./analysis//icode_dump.nit:30 */
231 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[0]);
232 CALL_abstract_collection___SimpleCollection___add(closctx
->REG
[2])(closctx
->REG
[2], fra
.me
.REG
[0]);
233 stack_frame_head
= fra
.me
.prev
;
236 void OC_icode_dump___IRoutine___dump_11(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
237 struct {struct stack_frame_t me
;} fra
;
240 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
241 fra
.me
.file
= LOCATE_icode_dump
;
243 fra
.me
.meth
= LOCATE_icode_dump___IRoutine___dump
;
244 fra
.me
.has_broke
= 0;
246 fra
.me
.REG
[0] = NIT_NULL
;
247 fra
.me
.closure_ctx
= closctx_param
;
248 fra
.me
.closure_funs
= CREG
;
251 /* ./analysis//icode_dump.nit:47 */
252 CALL_icode_dump___IClosureDecl___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
253 stack_frame_head
= fra
.me
.prev
;
256 void icode_dump___IClosureDecl___dump(val_t p0
, val_t p1
){
257 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
261 static val_t once_value_1
; /* Once value */
262 static val_t once_value_2
; /* Once value */
263 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
264 fra
.me
.file
= LOCATE_icode_dump
;
266 fra
.me
.meth
= LOCATE_icode_dump___IClosureDecl___dump
;
267 fra
.me
.has_broke
= 0;
269 fra
.me
.REG
[0] = NIT_NULL
;
270 fra
.me
.REG
[1] = NIT_NULL
;
271 fra
.me
.REG
[2] = NIT_NULL
;
272 fra
.me
.REG
[3] = NIT_NULL
;
275 /* ./analysis//icode_dump.nit:58 */
277 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
279 fra
.me
.REG
[3] = BOX_NativeString("Closure: ");
281 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
282 once_value_1
= fra
.me
.REG
[3];
283 register_static_object(&once_value_1
);
284 } else fra
.me
.REG
[3] = once_value_1
;
285 fra
.me
.REG
[3] = fra
.me
.REG
[3];
286 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
287 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
288 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
290 fra
.me
.REG
[3] = BOX_NativeString("");
292 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
293 once_value_2
= fra
.me
.REG
[3];
294 register_static_object(&once_value_2
);
295 } else fra
.me
.REG
[3] = once_value_2
;
296 fra
.me
.REG
[3] = fra
.me
.REG
[3];
297 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
298 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
299 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
300 /* ./analysis//icode_dump.nit:59 */
301 fra
.me
.REG
[2] = CALL_icode_base___IClosureDecl___default(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
302 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
303 if (UNTAG_Bool(REGB0
)) {
305 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
306 if (UNTAG_Bool(REGB1
)) {
307 REGB1
= TAG_Bool(false);
310 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
314 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
315 if (UNTAG_Bool(REGB0
)) {
316 /* ./analysis//icode_dump.nit:60 */
317 CALL_icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
318 /* ./analysis//icode_dump.nit:61 */
319 fra
.me
.REG
[0] = CALL_icode_base___IClosureDecl___default(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
320 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
321 if (UNTAG_Bool(REGB0
)) {
322 nit_abort("Reciever is null", NULL
, LOCATE_icode_dump
, 61);
324 CALL_icode_dump___IRoutine___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
325 /* ./analysis//icode_dump.nit:62 */
326 CALL_icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
328 stack_frame_head
= fra
.me
.prev
;
331 val_t
icode_dump___ICodeDumper___dump_locations(val_t p0
){
332 struct {struct stack_frame_t me
;} fra
;
335 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
336 fra
.me
.file
= LOCATE_icode_dump
;
338 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___dump_locations
;
339 fra
.me
.has_broke
= 0;
341 fra
.me
.REG
[0] = NIT_NULL
;
343 /* ./analysis//icode_dump.nit:68 */
344 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0])!=NIT_NULL
);
345 if (UNTAG_Bool(REGB0
)) {
347 nit_abort("Uninitialized attribute %s", "_dump_locations", LOCATE_icode_dump
, 68);
349 REGB0
= ATTR_icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0]);
350 stack_frame_head
= fra
.me
.prev
;
353 val_t
icode_dump___ICodeDumper___dump_line_numbers(val_t p0
){
354 struct {struct stack_frame_t me
;} fra
;
357 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
358 fra
.me
.file
= LOCATE_icode_dump
;
360 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___dump_line_numbers
;
361 fra
.me
.has_broke
= 0;
363 fra
.me
.REG
[0] = NIT_NULL
;
365 /* ./analysis//icode_dump.nit:69 */
366 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0])!=NIT_NULL
);
367 if (UNTAG_Bool(REGB0
)) {
369 nit_abort("Uninitialized attribute %s", "_dump_line_numbers", LOCATE_icode_dump
, 69);
371 REGB0
= ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0]);
372 stack_frame_head
= fra
.me
.prev
;
375 void icode_dump___ICodeDumper___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
376 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ICodeDumper
].i
;
377 struct {struct stack_frame_t me
;} fra
;
381 if (init_table
[itpos0
]) return;
382 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
383 fra
.me
.file
= LOCATE_icode_dump
;
385 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___init
;
386 fra
.me
.has_broke
= 0;
388 fra
.me
.REG
[0] = NIT_NULL
;
392 /* ./analysis//icode_dump.nit:74 */
393 ATTR_icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0]) = REGB0
;
394 /* ./analysis//icode_dump.nit:75 */
395 ATTR_icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0]) = REGB1
;
396 stack_frame_head
= fra
.me
.prev
;
397 init_table
[itpos0
] = 1;
400 val_t
icode_dump___ICodeDumper___register(val_t p0
, val_t p1
){
401 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
405 static val_t once_value_2
; /* Once value */
406 static val_t once_value_3
; /* Once value */
407 static val_t once_value_4
; /* Once value */
408 static val_t once_value_5
; /* Once value */
409 static val_t once_value_6
; /* Once value */
410 static val_t once_value_7
; /* Once value */
411 static val_t once_value_8
; /* Once value */
412 static val_t once_value_9
; /* Once value */
413 static val_t once_value_10
; /* Once value */
414 static val_t once_value_11
; /* Once value */
415 static val_t once_value_12
; /* Once value */
416 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
417 fra
.me
.file
= LOCATE_icode_dump
;
419 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___register
;
420 fra
.me
.has_broke
= 0;
422 fra
.me
.REG
[0] = NIT_NULL
;
423 fra
.me
.REG
[1] = NIT_NULL
;
424 fra
.me
.REG
[2] = NIT_NULL
;
425 fra
.me
.REG
[3] = NIT_NULL
;
426 fra
.me
.REG
[4] = NIT_NULL
;
427 fra
.me
.REG
[5] = NIT_NULL
;
428 fra
.me
.REG
[6] = NIT_NULL
;
431 /* ./analysis//icode_dump.nit:82 */
432 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
433 if (UNTAG_Bool(REGB0
)) {
435 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 82);
437 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
438 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
439 if (UNTAG_Bool(REGB0
)) {
440 /* ./analysis//icode_dump.nit:83 */
441 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
442 if (UNTAG_Bool(REGB0
)) {
444 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 83);
446 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
447 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
450 /* ./analysis//icode_dump.nit:85 */
451 fra
.me
.REG
[3] = CALL_allocate_iregister_slots___IRegister___slot_index(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
452 /* ./analysis//icode_dump.nit:86 */
453 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
454 if (UNTAG_Bool(REGB0
)) {
456 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
457 if (UNTAG_Bool(REGB1
)) {
458 REGB1
= TAG_Bool(false);
461 /* ./../lib/standard//kernel.nit:207 */
462 REGB1
= TAG_Bool((fra
.me
.REG
[3])==(NIT_NULL
));
463 /* ./analysis//icode_dump.nit:86 */
467 if (UNTAG_Bool(REGB0
)) {
468 /* ./analysis//icode_dump.nit:87 */
469 REGB0
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
471 /* ./../lib/standard//kernel.nit:215 */
472 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
473 /* ./analysis//icode_dump.nit:87 */
474 ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]) = REGB1
;
475 /* ./analysis//icode_dump.nit:88 */
477 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB1
);
479 fra
.me
.REG
[5] = BOX_NativeString("r");
481 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB1
);
482 once_value_2
= fra
.me
.REG
[5];
483 register_static_object(&once_value_2
);
484 } else fra
.me
.REG
[5] = once_value_2
;
485 fra
.me
.REG
[5] = fra
.me
.REG
[5];
486 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
487 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
488 if (UNTAG_Bool(REGB1
)) {
490 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump
, 88);
492 REGB1
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
493 fra
.me
.REG
[5] = CALL_string___Object___to_s(REGB1
)(REGB1
);
494 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
496 fra
.me
.REG
[5] = BOX_NativeString("");
498 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB1
);
499 once_value_3
= fra
.me
.REG
[5];
500 register_static_object(&once_value_3
);
501 } else fra
.me
.REG
[5] = once_value_3
;
502 fra
.me
.REG
[5] = fra
.me
.REG
[5];
503 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
504 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
505 /* ./analysis//icode_dump.nit:89 */
506 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
507 if (UNTAG_Bool(REGB1
)) {
509 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 89);
511 fra
.me
.REG
[5] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
512 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[1], fra
.me
.REG
[4]);
513 /* ./analysis//icode_dump.nit:90 */
514 fra
.me
.REG
[2] = fra
.me
.REG
[4];
517 /* ./analysis//icode_dump.nit:92 */
518 REGB1
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
520 /* ./../lib/standard//kernel.nit:215 */
521 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
522 /* ./analysis//icode_dump.nit:92 */
523 ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]) = REGB0
;
524 /* ./analysis//icode_dump.nit:94 */
525 REGB0
= CALL_allocate_iregister_slots___IRegister___in_tag_slots(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
526 if (UNTAG_Bool(REGB0
)) {
527 /* ./analysis//icode_dump.nit:95 */
529 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
531 fra
.me
.REG
[5] = BOX_NativeString("BREG");
533 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
534 once_value_4
= fra
.me
.REG
[5];
535 register_static_object(&once_value_4
);
536 } else fra
.me
.REG
[5] = once_value_4
;
537 fra
.me
.REG
[5] = fra
.me
.REG
[5];
538 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
539 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
540 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
542 fra
.me
.REG
[5] = BOX_NativeString("(r");
544 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
545 once_value_5
= fra
.me
.REG
[5];
546 register_static_object(&once_value_5
);
547 } else fra
.me
.REG
[5] = once_value_5
;
548 fra
.me
.REG
[5] = fra
.me
.REG
[5];
549 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
550 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
551 if (UNTAG_Bool(REGB0
)) {
553 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump
, 95);
555 REGB0
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
556 fra
.me
.REG
[5] = CALL_string___Object___to_s(REGB0
)(REGB0
);
557 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
559 fra
.me
.REG
[5] = BOX_NativeString(")");
561 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
562 once_value_6
= fra
.me
.REG
[5];
563 register_static_object(&once_value_6
);
564 } else fra
.me
.REG
[5] = once_value_6
;
565 fra
.me
.REG
[5] = fra
.me
.REG
[5];
566 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
567 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
569 /* ./analysis//icode_dump.nit:96 */
570 REGB0
= CALL_allocate_iregister_slots___IRegister___is_local(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
571 if (UNTAG_Bool(REGB0
)) {
572 /* ./analysis//icode_dump.nit:97 */
574 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB0
);
576 fra
.me
.REG
[6] = BOX_NativeString("LREG");
578 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
579 once_value_7
= fra
.me
.REG
[6];
580 register_static_object(&once_value_7
);
581 } else fra
.me
.REG
[6] = once_value_7
;
582 fra
.me
.REG
[6] = fra
.me
.REG
[6];
583 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
584 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
585 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
587 fra
.me
.REG
[6] = BOX_NativeString("(r");
589 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
590 once_value_8
= fra
.me
.REG
[6];
591 register_static_object(&once_value_8
);
592 } else fra
.me
.REG
[6] = once_value_8
;
593 fra
.me
.REG
[6] = fra
.me
.REG
[6];
594 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
595 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
596 if (UNTAG_Bool(REGB0
)) {
598 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump
, 97);
600 REGB0
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
601 fra
.me
.REG
[6] = CALL_string___Object___to_s(REGB0
)(REGB0
);
602 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
604 fra
.me
.REG
[6] = BOX_NativeString(")");
606 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
607 once_value_9
= fra
.me
.REG
[6];
608 register_static_object(&once_value_9
);
609 } else fra
.me
.REG
[6] = once_value_9
;
610 fra
.me
.REG
[6] = fra
.me
.REG
[6];
611 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
612 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
613 fra
.me
.REG
[4] = fra
.me
.REG
[5];
615 /* ./analysis//icode_dump.nit:99 */
617 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB0
);
618 if (!once_value_10
) {
619 fra
.me
.REG
[6] = BOX_NativeString("REG");
621 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
622 once_value_10
= fra
.me
.REG
[6];
623 register_static_object(&once_value_10
);
624 } else fra
.me
.REG
[6] = once_value_10
;
625 fra
.me
.REG
[6] = fra
.me
.REG
[6];
626 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
627 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
628 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
629 if (!once_value_11
) {
630 fra
.me
.REG
[3] = BOX_NativeString("(r");
632 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
633 once_value_11
= fra
.me
.REG
[3];
634 register_static_object(&once_value_11
);
635 } else fra
.me
.REG
[3] = once_value_11
;
636 fra
.me
.REG
[3] = fra
.me
.REG
[3];
637 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
638 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
639 if (UNTAG_Bool(REGB0
)) {
641 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_icode_dump
, 99);
643 REGB0
= ATTR_icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
644 fra
.me
.REG
[3] = CALL_string___Object___to_s(REGB0
)(REGB0
);
645 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
646 if (!once_value_12
) {
647 fra
.me
.REG
[3] = BOX_NativeString(")");
649 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
650 once_value_12
= fra
.me
.REG
[3];
651 register_static_object(&once_value_12
);
652 } else fra
.me
.REG
[3] = once_value_12
;
653 fra
.me
.REG
[3] = fra
.me
.REG
[3];
654 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
655 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
656 fra
.me
.REG
[4] = fra
.me
.REG
[5];
659 /* ./analysis//icode_dump.nit:101 */
660 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
661 if (UNTAG_Bool(REGB0
)) {
663 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 101);
665 fra
.me
.REG
[0] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
666 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[4]);
667 /* ./analysis//icode_dump.nit:102 */
668 fra
.me
.REG
[2] = fra
.me
.REG
[4];
673 stack_frame_head
= fra
.me
.prev
;
674 return fra
.me
.REG
[2];
676 val_t
icode_dump___ICodeDumper___register_all(val_t p0
, val_t p1
){
677 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
681 static val_t once_value_1
; /* Once value */
682 static val_t once_value_4
; /* Once value */
683 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
684 fra
.me
.file
= LOCATE_icode_dump
;
686 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___register_all
;
687 fra
.me
.has_broke
= 0;
689 fra
.me
.REG
[0] = NIT_NULL
;
690 fra
.me
.REG
[1] = NIT_NULL
;
691 fra
.me
.REG
[2] = NIT_NULL
;
692 fra
.me
.REG
[3] = NIT_NULL
;
695 /* ./analysis//icode_dump.nit:110 */
696 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
697 if (UNTAG_Bool(REGB0
)) {
699 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
700 if (UNTAG_Bool(REGB1
)) {
701 REGB1
= TAG_Bool(false);
704 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
708 if (UNTAG_Bool(REGB0
)) {
710 fra
.me
.REG
[2] = BOX_NativeString("");
712 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
713 once_value_1
= fra
.me
.REG
[2];
714 register_static_object(&once_value_1
);
715 } else fra
.me
.REG
[2] = once_value_1
;
716 fra
.me
.REG
[2] = fra
.me
.REG
[2];
719 /* ./analysis//icode_dump.nit:111 */
720 fra
.me
.REG
[3] = NEW_Array_array___Array___init();
721 /* ./analysis//icode_dump.nit:112 */
722 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
723 if (UNTAG_Bool(REGB0
)) {
724 nit_abort("Reciever is null", NULL
, LOCATE_icode_dump
, 112);
726 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[1])(fra
.me
.REG
[1], (&(fra
.me
)), ((fun_t
)OC_icode_dump___ICodeDumper___register_all_3
));
727 /* ./analysis//icode_dump.nit:115 */
729 fra
.me
.REG
[0] = BOX_NativeString(", ");
731 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
732 once_value_4
= fra
.me
.REG
[0];
733 register_static_object(&once_value_4
);
734 } else fra
.me
.REG
[0] = once_value_4
;
735 fra
.me
.REG
[0] = fra
.me
.REG
[0];
736 fra
.me
.REG
[0] = CALL_string___Collection___join(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
737 fra
.me
.REG
[2] = fra
.me
.REG
[0];
740 stack_frame_head
= fra
.me
.prev
;
741 return fra
.me
.REG
[2];
743 void OC_icode_dump___ICodeDumper___register_all_3(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
744 struct {struct stack_frame_t me
;} fra
;
747 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
748 fra
.me
.file
= LOCATE_icode_dump
;
750 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___register_all
;
751 fra
.me
.has_broke
= 0;
753 fra
.me
.REG
[0] = NIT_NULL
;
754 fra
.me
.closure_ctx
= closctx_param
;
755 fra
.me
.closure_funs
= CREG
;
758 /* ./analysis//icode_dump.nit:113 */
759 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0]);
760 CALL_abstract_collection___SimpleCollection___add(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[0]);
761 stack_frame_head
= fra
.me
.prev
;
764 val_t
icode_dump___ICodeDumper___closdecl(val_t p0
, val_t p1
){
765 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
769 static val_t once_value_2
; /* Once value */
770 static val_t once_value_3
; /* Once value */
771 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
772 fra
.me
.file
= LOCATE_icode_dump
;
774 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___closdecl
;
775 fra
.me
.has_broke
= 0;
777 fra
.me
.REG
[0] = NIT_NULL
;
778 fra
.me
.REG
[1] = NIT_NULL
;
779 fra
.me
.REG
[2] = NIT_NULL
;
780 fra
.me
.REG
[3] = NIT_NULL
;
781 fra
.me
.REG
[4] = NIT_NULL
;
784 /* ./analysis//icode_dump.nit:124 */
785 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
786 if (UNTAG_Bool(REGB0
)) {
788 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 124);
790 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
791 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
792 if (UNTAG_Bool(REGB0
)) {
793 /* ./analysis//icode_dump.nit:125 */
794 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
795 if (UNTAG_Bool(REGB0
)) {
797 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 125);
799 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
800 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
803 /* ./analysis//icode_dump.nit:127 */
804 REGB0
= ATTR_icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]);
806 /* ./../lib/standard//kernel.nit:215 */
807 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
808 /* ./analysis//icode_dump.nit:127 */
809 ATTR_icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]) = REGB1
;
810 /* ./analysis//icode_dump.nit:128 */
812 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
814 fra
.me
.REG
[4] = BOX_NativeString("clos");
816 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
817 once_value_2
= fra
.me
.REG
[4];
818 register_static_object(&once_value_2
);
819 } else fra
.me
.REG
[4] = once_value_2
;
820 fra
.me
.REG
[4] = fra
.me
.REG
[4];
821 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
822 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0])!=NIT_NULL
);
823 if (UNTAG_Bool(REGB1
)) {
825 nit_abort("Uninitialized attribute %s", "_last_clos", LOCATE_icode_dump
, 128);
827 REGB1
= ATTR_icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]);
828 fra
.me
.REG
[4] = CALL_string___Object___to_s(REGB1
)(REGB1
);
829 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
831 fra
.me
.REG
[4] = BOX_NativeString("");
833 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
834 once_value_3
= fra
.me
.REG
[4];
835 register_static_object(&once_value_3
);
836 } else fra
.me
.REG
[4] = once_value_3
;
837 fra
.me
.REG
[4] = fra
.me
.REG
[4];
838 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
839 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
840 /* ./analysis//icode_dump.nit:129 */
841 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
842 if (UNTAG_Bool(REGB1
)) {
844 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 129);
846 fra
.me
.REG
[0] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
847 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
848 /* ./analysis//icode_dump.nit:130 */
849 fra
.me
.REG
[2] = fra
.me
.REG
[3];
853 stack_frame_head
= fra
.me
.prev
;
854 return fra
.me
.REG
[2];
856 val_t
icode_dump___ICodeDumper___lab(val_t p0
, val_t p1
){
857 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
861 static val_t once_value_2
; /* Once value */
862 static val_t once_value_3
; /* Once value */
863 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
864 fra
.me
.file
= LOCATE_icode_dump
;
866 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___lab
;
867 fra
.me
.has_broke
= 0;
869 fra
.me
.REG
[0] = NIT_NULL
;
870 fra
.me
.REG
[1] = NIT_NULL
;
871 fra
.me
.REG
[2] = NIT_NULL
;
872 fra
.me
.REG
[3] = NIT_NULL
;
873 fra
.me
.REG
[4] = NIT_NULL
;
876 /* ./analysis//icode_dump.nit:139 */
877 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
878 if (UNTAG_Bool(REGB0
)) {
880 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 139);
882 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
883 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
884 if (UNTAG_Bool(REGB0
)) {
885 /* ./analysis//icode_dump.nit:140 */
886 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
887 if (UNTAG_Bool(REGB0
)) {
889 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 140);
891 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
892 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
895 /* ./analysis//icode_dump.nit:142 */
896 REGB0
= ATTR_icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]);
898 /* ./../lib/standard//kernel.nit:215 */
899 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
900 /* ./analysis//icode_dump.nit:142 */
901 ATTR_icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]) = REGB1
;
902 /* ./analysis//icode_dump.nit:143 */
904 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
906 fra
.me
.REG
[4] = BOX_NativeString("[l");
908 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
909 once_value_2
= fra
.me
.REG
[4];
910 register_static_object(&once_value_2
);
911 } else fra
.me
.REG
[4] = once_value_2
;
912 fra
.me
.REG
[4] = fra
.me
.REG
[4];
913 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
914 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0])!=NIT_NULL
);
915 if (UNTAG_Bool(REGB1
)) {
917 nit_abort("Uninitialized attribute %s", "_last_label", LOCATE_icode_dump
, 143);
919 REGB1
= ATTR_icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]);
920 fra
.me
.REG
[4] = CALL_string___Object___to_s(REGB1
)(REGB1
);
921 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
923 fra
.me
.REG
[4] = BOX_NativeString("]");
925 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
926 once_value_3
= fra
.me
.REG
[4];
927 register_static_object(&once_value_3
);
928 } else fra
.me
.REG
[4] = once_value_3
;
929 fra
.me
.REG
[4] = fra
.me
.REG
[4];
930 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
931 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
932 /* ./analysis//icode_dump.nit:144 */
933 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
934 if (UNTAG_Bool(REGB1
)) {
936 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 144);
938 fra
.me
.REG
[0] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
939 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
940 /* ./analysis//icode_dump.nit:145 */
941 fra
.me
.REG
[2] = fra
.me
.REG
[3];
945 stack_frame_head
= fra
.me
.prev
;
946 return fra
.me
.REG
[2];
948 val_t
icode_dump___ICodeDumper___line(val_t p0
, val_t p1
){
949 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
953 static val_t once_value_2
; /* Once value */
954 static val_t once_value_3
; /* Once value */
955 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
956 fra
.me
.file
= LOCATE_icode_dump
;
958 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___line
;
959 fra
.me
.has_broke
= 0;
961 fra
.me
.REG
[0] = NIT_NULL
;
962 fra
.me
.REG
[1] = NIT_NULL
;
963 fra
.me
.REG
[2] = NIT_NULL
;
964 fra
.me
.REG
[3] = NIT_NULL
;
965 fra
.me
.REG
[4] = NIT_NULL
;
968 /* ./analysis//icode_dump.nit:153 */
969 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
970 if (UNTAG_Bool(REGB0
)) {
972 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 153);
974 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
975 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
976 if (UNTAG_Bool(REGB0
)) {
977 /* ./analysis//icode_dump.nit:154 */
978 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
979 if (UNTAG_Bool(REGB0
)) {
981 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 154);
983 fra
.me
.REG
[2] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
984 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
987 /* ./analysis//icode_dump.nit:156 */
988 REGB0
= ATTR_icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]);
990 /* ./../lib/standard//kernel.nit:215 */
991 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
992 /* ./analysis//icode_dump.nit:156 */
993 ATTR_icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]) = REGB1
;
994 /* ./analysis//icode_dump.nit:157 */
996 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
998 fra
.me
.REG
[4] = BOX_NativeString("");
1000 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1001 once_value_2
= fra
.me
.REG
[4];
1002 register_static_object(&once_value_2
);
1003 } else fra
.me
.REG
[4] = once_value_2
;
1004 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1005 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1006 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0])!=NIT_NULL
);
1007 if (UNTAG_Bool(REGB1
)) {
1009 nit_abort("Uninitialized attribute %s", "_last_line", LOCATE_icode_dump
, 157);
1011 REGB1
= ATTR_icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]);
1012 fra
.me
.REG
[4] = CALL_string___Object___to_s(REGB1
)(REGB1
);
1013 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1014 if (!once_value_3
) {
1015 fra
.me
.REG
[4] = BOX_NativeString("");
1017 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1018 once_value_3
= fra
.me
.REG
[4];
1019 register_static_object(&once_value_3
);
1020 } else fra
.me
.REG
[4] = once_value_3
;
1021 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1022 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1023 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1024 /* ./analysis//icode_dump.nit:158 */
1025 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1026 if (UNTAG_Bool(REGB1
)) {
1028 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 158);
1030 fra
.me
.REG
[0] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1031 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
1032 /* ./analysis//icode_dump.nit:159 */
1033 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1037 stack_frame_head
= fra
.me
.prev
;
1038 return fra
.me
.REG
[2];
1040 val_t
icode_dump___ICodeDumper___has_lab(val_t p0
, val_t p1
){
1041 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1044 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1045 fra
.me
.file
= LOCATE_icode_dump
;
1047 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___has_lab
;
1048 fra
.me
.has_broke
= 0;
1049 fra
.me
.REG_size
= 2;
1050 fra
.me
.REG
[0] = NIT_NULL
;
1051 fra
.me
.REG
[1] = NIT_NULL
;
1054 /* ./analysis//icode_dump.nit:166 */
1055 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1056 if (UNTAG_Bool(REGB0
)) {
1058 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_icode_dump
, 166);
1060 fra
.me
.REG
[0] = ATTR_icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1061 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1064 stack_frame_head
= fra
.me
.prev
;
1067 void icode_dump___ICodeDumper___write(val_t p0
, val_t p1
){
1068 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1073 static val_t once_value_1
; /* Once value */
1074 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1075 fra
.me
.file
= LOCATE_icode_dump
;
1077 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___write
;
1078 fra
.me
.has_broke
= 0;
1079 fra
.me
.REG_size
= 4;
1080 fra
.me
.REG
[0] = NIT_NULL
;
1081 fra
.me
.REG
[1] = NIT_NULL
;
1082 fra
.me
.REG
[2] = NIT_NULL
;
1083 fra
.me
.REG
[3] = NIT_NULL
;
1086 /* ./analysis//icode_dump.nit:172 */
1088 REGB1
= TAG_Bool(ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0])!=NIT_NULL
);
1089 if (UNTAG_Bool(REGB1
)) {
1091 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_icode_dump
, 172);
1093 REGB1
= ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1094 /* ./../lib/standard//kernel.nit:332 */
1096 /* ./../lib/standard//kernel.nit:212 */
1097 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1098 /* ./../lib/standard//kernel.nit:332 */
1099 if (UNTAG_Bool(REGB2
)) {
1100 /* ./analysis//icode_dump.nit:173 */
1102 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB2
);
1103 if (!once_value_1
) {
1104 fra
.me
.REG
[3] = BOX_NativeString(" ");
1106 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB2
);
1107 once_value_1
= fra
.me
.REG
[3];
1108 register_static_object(&once_value_1
);
1109 } else fra
.me
.REG
[3] = once_value_1
;
1110 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1111 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1112 CALL_file___Object___printn(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1113 /* ./../lib/standard//kernel.nit:334 */
1115 /* ./../lib/standard//kernel.nit:215 */
1116 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1117 /* ./../lib/standard//kernel.nit:334 */
1120 /* ./../lib/standard//kernel.nit:332 */
1125 /* ./analysis//icode_dump.nit:175 */
1126 CALL_file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1127 stack_frame_head
= fra
.me
.prev
;
1130 val_t
icode_dump___ICodeDumper___indent_level(val_t p0
){
1131 struct {struct stack_frame_t me
;} fra
;
1134 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1135 fra
.me
.file
= LOCATE_icode_dump
;
1137 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___indent_level
;
1138 fra
.me
.has_broke
= 0;
1139 fra
.me
.REG_size
= 1;
1140 fra
.me
.REG
[0] = NIT_NULL
;
1142 /* ./analysis//icode_dump.nit:178 */
1143 REGB0
= TAG_Bool(ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0])!=NIT_NULL
);
1144 if (UNTAG_Bool(REGB0
)) {
1146 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_icode_dump
, 178);
1148 REGB0
= ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1149 stack_frame_head
= fra
.me
.prev
;
1152 void icode_dump___ICodeDumper___indent(val_t p0
){
1153 struct {struct stack_frame_t me
;} fra
;
1157 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1158 fra
.me
.file
= LOCATE_icode_dump
;
1160 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___indent
;
1161 fra
.me
.has_broke
= 0;
1162 fra
.me
.REG_size
= 1;
1163 fra
.me
.REG
[0] = NIT_NULL
;
1165 /* ./analysis//icode_dump.nit:181 */
1166 REGB0
= ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1168 /* ./../lib/standard//kernel.nit:215 */
1169 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1170 /* ./analysis//icode_dump.nit:181 */
1171 ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]) = REGB1
;
1172 stack_frame_head
= fra
.me
.prev
;
1175 void icode_dump___ICodeDumper___unindent(val_t p0
){
1176 struct {struct stack_frame_t me
;} fra
;
1180 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1181 fra
.me
.file
= LOCATE_icode_dump
;
1183 fra
.me
.meth
= LOCATE_icode_dump___ICodeDumper___unindent
;
1184 fra
.me
.has_broke
= 0;
1185 fra
.me
.REG_size
= 1;
1186 fra
.me
.REG
[0] = NIT_NULL
;
1188 /* ./analysis//icode_dump.nit:184 */
1189 REGB0
= ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1191 /* ./../lib/standard//kernel.nit:217 */
1192 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1193 /* ./analysis//icode_dump.nit:184 */
1194 ATTR_icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]) = REGB1
;
1195 stack_frame_head
= fra
.me
.prev
;
1198 void icode_dump___ICode___dump(val_t p0
, val_t p1
){
1199 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
1203 static val_t once_value_1
; /* Once value */
1204 static val_t once_value_2
; /* Once value */
1205 static val_t once_value_3
; /* Once value */
1206 static val_t once_value_4
; /* Once value */
1207 static val_t once_value_5
; /* Once value */
1208 static val_t once_value_6
; /* Once value */
1209 static val_t once_value_7
; /* Once value */
1210 static val_t once_value_8
; /* Once value */
1211 static val_t once_value_9
; /* Once value */
1212 static val_t once_value_10
; /* Once value */
1213 static val_t once_value_11
; /* Once value */
1214 static val_t once_value_12
; /* Once value */
1215 static val_t once_value_13
; /* Once value */
1216 static val_t once_value_14
; /* Once value */
1217 static val_t once_value_15
; /* Once value */
1218 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1219 fra
.me
.file
= LOCATE_icode_dump
;
1221 fra
.me
.meth
= LOCATE_icode_dump___ICode___dump
;
1222 fra
.me
.has_broke
= 0;
1223 fra
.me
.REG_size
= 8;
1224 fra
.me
.REG
[0] = NIT_NULL
;
1225 fra
.me
.REG
[1] = NIT_NULL
;
1226 fra
.me
.REG
[2] = NIT_NULL
;
1227 fra
.me
.REG
[3] = NIT_NULL
;
1228 fra
.me
.REG
[4] = NIT_NULL
;
1229 fra
.me
.REG
[5] = NIT_NULL
;
1230 fra
.me
.REG
[6] = NIT_NULL
;
1231 fra
.me
.REG
[7] = NIT_NULL
;
1234 /* ./analysis//icode_dump.nit:191 */
1235 fra
.me
.REG
[2] = CALL_icode_base___ICode___result(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1236 /* ./analysis//icode_dump.nit:192 */
1237 if (!once_value_1
) {
1238 fra
.me
.REG
[3] = BOX_NativeString("");
1240 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1241 once_value_1
= fra
.me
.REG
[3];
1242 register_static_object(&once_value_1
);
1243 } else fra
.me
.REG
[3] = once_value_1
;
1244 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1245 /* ./analysis//icode_dump.nit:193 */
1246 if (!once_value_2
) {
1247 fra
.me
.REG
[4] = BOX_NativeString("");
1249 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
1250 once_value_2
= fra
.me
.REG
[4];
1251 register_static_object(&once_value_2
);
1252 } else fra
.me
.REG
[4] = once_value_2
;
1253 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1254 /* ./analysis//icode_dump.nit:194 */
1255 fra
.me
.REG
[5] = CALL_icode_base___ICode___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1256 /* ./analysis//icode_dump.nit:195 */
1257 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1258 if (UNTAG_Bool(REGB0
)) {
1260 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1261 if (UNTAG_Bool(REGB1
)) {
1262 REGB1
= TAG_Bool(false);
1265 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
1269 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1270 if (UNTAG_Bool(REGB0
)) {
1271 REGB0
= CALL_icode_dump___ICodeDumper___dump_locations(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1273 REGB1
= TAG_Bool(false);
1276 if (UNTAG_Bool(REGB0
)) {
1277 /* ./analysis//icode_dump.nit:196 */
1279 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
1280 if (!once_value_3
) {
1281 fra
.me
.REG
[7] = BOX_NativeString(" ... ");
1282 REGB0
= TAG_Int(12);
1283 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
1284 once_value_3
= fra
.me
.REG
[7];
1285 register_static_object(&once_value_3
);
1286 } else fra
.me
.REG
[7] = once_value_3
;
1287 fra
.me
.REG
[7] = fra
.me
.REG
[7];
1288 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
1289 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1290 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1291 if (!once_value_4
) {
1292 fra
.me
.REG
[5] = BOX_NativeString("");
1294 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1295 once_value_4
= fra
.me
.REG
[5];
1296 register_static_object(&once_value_4
);
1297 } else fra
.me
.REG
[5] = once_value_4
;
1298 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1299 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1300 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1301 fra
.me
.REG
[3] = fra
.me
.REG
[6];
1303 /* ./analysis//icode_dump.nit:198 */
1304 REGB0
= CALL_icode_dump___ICodeDumper___dump_line_numbers(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1305 if (UNTAG_Bool(REGB0
)) {
1306 /* ./analysis//icode_dump.nit:199 */
1308 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
1309 if (!once_value_5
) {
1310 fra
.me
.REG
[5] = BOX_NativeString("");
1312 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1313 once_value_5
= fra
.me
.REG
[5];
1314 register_static_object(&once_value_5
);
1315 } else fra
.me
.REG
[5] = once_value_5
;
1316 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1317 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1318 fra
.me
.REG
[5] = CALL_icode_dump___ICodeDumper___line(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1319 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1320 if (!once_value_6
) {
1321 fra
.me
.REG
[5] = BOX_NativeString(": ");
1323 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1324 once_value_6
= fra
.me
.REG
[5];
1325 register_static_object(&once_value_6
);
1326 } else fra
.me
.REG
[5] = once_value_6
;
1327 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1328 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1329 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1330 fra
.me
.REG
[4] = fra
.me
.REG
[6];
1332 /* ./analysis//icode_dump.nit:201 */
1333 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1334 if (UNTAG_Bool(REGB0
)) {
1336 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1337 if (UNTAG_Bool(REGB1
)) {
1338 REGB1
= TAG_Bool(false);
1341 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1345 if (UNTAG_Bool(REGB0
)) {
1346 /* ./analysis//icode_dump.nit:202 */
1348 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
1349 if (!once_value_7
) {
1350 fra
.me
.REG
[5] = BOX_NativeString("");
1352 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1353 once_value_7
= fra
.me
.REG
[5];
1354 register_static_object(&once_value_7
);
1355 } else fra
.me
.REG
[5] = once_value_7
;
1356 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1357 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1358 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1359 if (!once_value_8
) {
1360 fra
.me
.REG
[5] = BOX_NativeString("");
1362 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1363 once_value_8
= fra
.me
.REG
[5];
1364 register_static_object(&once_value_8
);
1365 } else fra
.me
.REG
[5] = once_value_8
;
1366 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1367 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1368 fra
.me
.REG
[5] = CALL_icode_dump___ICode___dump_intern(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1369 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1370 if (!once_value_9
) {
1371 fra
.me
.REG
[5] = BOX_NativeString("");
1373 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1374 once_value_9
= fra
.me
.REG
[5];
1375 register_static_object(&once_value_9
);
1376 } else fra
.me
.REG
[5] = once_value_9
;
1377 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1378 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1379 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1380 if (!once_value_10
) {
1381 fra
.me
.REG
[5] = BOX_NativeString("");
1383 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1384 once_value_10
= fra
.me
.REG
[5];
1385 register_static_object(&once_value_10
);
1386 } else fra
.me
.REG
[5] = once_value_10
;
1387 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1388 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1389 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1390 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1392 /* ./analysis//icode_dump.nit:204 */
1394 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
1395 if (!once_value_11
) {
1396 fra
.me
.REG
[5] = BOX_NativeString("");
1398 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1399 once_value_11
= fra
.me
.REG
[5];
1400 register_static_object(&once_value_11
);
1401 } else fra
.me
.REG
[5] = once_value_11
;
1402 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1403 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1404 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1405 if (!once_value_12
) {
1406 fra
.me
.REG
[4] = BOX_NativeString("");
1408 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
1409 once_value_12
= fra
.me
.REG
[4];
1410 register_static_object(&once_value_12
);
1411 } else fra
.me
.REG
[4] = once_value_12
;
1412 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1413 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1414 fra
.me
.REG
[2] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1415 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
1416 if (!once_value_13
) {
1417 fra
.me
.REG
[2] = BOX_NativeString(" := ");
1419 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1420 once_value_13
= fra
.me
.REG
[2];
1421 register_static_object(&once_value_13
);
1422 } else fra
.me
.REG
[2] = once_value_13
;
1423 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1424 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
1425 fra
.me
.REG
[0] = CALL_icode_dump___ICode___dump_intern(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1426 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
1427 if (!once_value_14
) {
1428 fra
.me
.REG
[0] = BOX_NativeString("");
1430 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1431 once_value_14
= fra
.me
.REG
[0];
1432 register_static_object(&once_value_14
);
1433 } else fra
.me
.REG
[0] = once_value_14
;
1434 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1435 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
1436 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1437 if (!once_value_15
) {
1438 fra
.me
.REG
[3] = BOX_NativeString("");
1440 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1441 once_value_15
= fra
.me
.REG
[3];
1442 register_static_object(&once_value_15
);
1443 } else fra
.me
.REG
[3] = once_value_15
;
1444 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1445 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1446 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1447 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1449 stack_frame_head
= fra
.me
.prev
;
1452 val_t
icode_dump___ICode___dump_intern(val_t p0
, val_t p1
){
1453 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1456 static val_t once_value_1
; /* Once value */
1457 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1458 fra
.me
.file
= LOCATE_icode_dump
;
1460 fra
.me
.meth
= LOCATE_icode_dump___ICode___dump_intern
;
1461 fra
.me
.has_broke
= 0;
1462 fra
.me
.REG_size
= 2;
1463 fra
.me
.REG
[0] = NIT_NULL
;
1464 fra
.me
.REG
[1] = NIT_NULL
;
1467 /* ./analysis//icode_dump.nit:209 */
1468 if (!once_value_1
) {
1469 fra
.me
.REG
[1] = BOX_NativeString("???");
1471 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1472 once_value_1
= fra
.me
.REG
[1];
1473 register_static_object(&once_value_1
);
1474 } else fra
.me
.REG
[1] = once_value_1
;
1475 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1478 stack_frame_head
= fra
.me
.prev
;
1479 return fra
.me
.REG
[1];
1481 void icode_dump___ICodeN___dump(val_t p0
, val_t p1
){
1482 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1486 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1487 fra
.me
.file
= LOCATE_icode_dump
;
1489 fra
.me
.meth
= LOCATE_icode_dump___ICodeN___dump
;
1490 fra
.me
.has_broke
= 0;
1491 fra
.me
.REG_size
= 4;
1492 fra
.me
.REG
[0] = NIT_NULL
;
1493 fra
.me
.REG
[1] = NIT_NULL
;
1494 fra
.me
.REG
[2] = NIT_NULL
;
1495 fra
.me
.REG
[3] = NIT_NULL
;
1498 /* ./analysis//icode_dump.nit:213 */
1499 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1500 fra
.me
.REG
[3] = fra
.me
.REG
[1];
1501 /* ./analysis//icode_dump.nit:215 */
1502 CALL_SUPER_icode_dump___ICodeN___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1503 /* ./analysis//icode_dump.nit:216 */
1504 fra
.me
.REG
[2] = CALL_icode_base___ICodeN___closure_defs(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1505 /* ./analysis//icode_dump.nit:217 */
1506 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1507 if (UNTAG_Bool(REGB0
)) {
1509 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1510 if (UNTAG_Bool(REGB1
)) {
1511 REGB1
= TAG_Bool(false);
1514 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1518 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1519 if (UNTAG_Bool(REGB0
)) {
1520 /* ./analysis//icode_dump.nit:218 */
1521 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1522 if (UNTAG_Bool(REGB0
)) {
1523 nit_abort("Reciever is null", NULL
, LOCATE_icode_dump
, 218);
1525 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_icode_dump___ICodeN___dump_1
));
1527 stack_frame_head
= fra
.me
.prev
;
1530 void OC_icode_dump___ICodeN___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1531 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1536 static val_t once_value_2
; /* Once value */
1537 static val_t once_value_3
; /* Once value */
1538 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1539 fra
.me
.file
= LOCATE_icode_dump
;
1541 fra
.me
.meth
= LOCATE_icode_dump___ICodeN___dump
;
1542 fra
.me
.has_broke
= 0;
1543 fra
.me
.REG_size
= 2;
1544 fra
.me
.REG
[0] = NIT_NULL
;
1545 fra
.me
.REG
[1] = NIT_NULL
;
1546 fra
.me
.closure_ctx
= closctx_param
;
1547 fra
.me
.closure_funs
= CREG
;
1549 CREG
[0] = clos_fun0
;
1550 /* ./analysis//icode_dump.nit:219 */
1551 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1552 if (UNTAG_Bool(REGB0
)) {
1554 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1555 if (UNTAG_Bool(REGB1
)) {
1556 REGB1
= TAG_Bool(false);
1559 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1563 if (UNTAG_Bool(REGB0
)) {
1564 /* ./analysis//icode_dump.nit:220 */
1565 if (!once_value_2
) {
1566 fra
.me
.REG
[1] = BOX_NativeString("CLOSURE = NULL");
1567 REGB0
= TAG_Int(14);
1568 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1569 once_value_2
= fra
.me
.REG
[1];
1570 register_static_object(&once_value_2
);
1571 } else fra
.me
.REG
[1] = once_value_2
;
1572 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1573 CALL_icode_dump___ICodeDumper___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
1575 /* ./analysis//icode_dump.nit:222 */
1576 if (!once_value_3
) {
1577 fra
.me
.REG
[1] = BOX_NativeString("CLOSURE");
1579 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1580 once_value_3
= fra
.me
.REG
[1];
1581 register_static_object(&once_value_3
);
1582 } else fra
.me
.REG
[1] = once_value_3
;
1583 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1584 CALL_icode_dump___ICodeDumper___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
1585 /* ./analysis//icode_dump.nit:223 */
1586 CALL_icode_dump___ICodeDumper___indent(closctx
->REG
[3])(closctx
->REG
[3]);
1587 /* ./analysis//icode_dump.nit:224 */
1588 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1589 if (UNTAG_Bool(REGB0
)) {
1590 nit_abort("Reciever is null", NULL
, LOCATE_icode_dump
, 224);
1592 CALL_icode_dump___IRoutine___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[3]);
1593 /* ./analysis//icode_dump.nit:225 */
1594 CALL_icode_dump___ICodeDumper___unindent(closctx
->REG
[3])(closctx
->REG
[3]);
1596 stack_frame_head
= fra
.me
.prev
;
1599 void icode_dump___ISeq___dump(val_t p0
, val_t p1
){
1600 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1604 static val_t once_value_2
; /* Once value */
1605 static val_t once_value_3
; /* Once value */
1606 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1607 fra
.me
.file
= LOCATE_icode_dump
;
1609 fra
.me
.meth
= LOCATE_icode_dump___ISeq___dump
;
1610 fra
.me
.has_broke
= 0;
1611 fra
.me
.REG_size
= 4;
1612 fra
.me
.REG
[0] = NIT_NULL
;
1613 fra
.me
.REG
[1] = NIT_NULL
;
1614 fra
.me
.REG
[2] = NIT_NULL
;
1615 fra
.me
.REG
[3] = NIT_NULL
;
1618 /* ./analysis//icode_dump.nit:235 */
1619 fra
.me
.REG
[2] = CALL_icode_base___ISeq___icodes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1620 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_icode_dump___ISeq___dump_1
));
1621 /* ./analysis//icode_dump.nit:238 */
1622 fra
.me
.REG
[0] = CALL_icode_base___ISeq___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1623 /* ./analysis//icode_dump.nit:239 */
1624 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1625 if (UNTAG_Bool(REGB0
)) {
1627 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1628 if (UNTAG_Bool(REGB1
)) {
1629 REGB1
= TAG_Bool(false);
1632 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1636 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1637 if (UNTAG_Bool(REGB0
)) {
1638 REGB0
= CALL_icode_dump___ICodeDumper___has_lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1640 REGB1
= TAG_Bool(false);
1643 if (UNTAG_Bool(REGB0
)) {
1645 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
1646 if (!once_value_2
) {
1647 fra
.me
.REG
[3] = BOX_NativeString("");
1649 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1650 once_value_2
= fra
.me
.REG
[3];
1651 register_static_object(&once_value_2
);
1652 } else fra
.me
.REG
[3] = once_value_2
;
1653 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1654 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1655 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1656 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1657 if (!once_value_3
) {
1658 fra
.me
.REG
[0] = BOX_NativeString(":");
1660 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1661 once_value_3
= fra
.me
.REG
[0];
1662 register_static_object(&once_value_3
);
1663 } else fra
.me
.REG
[0] = once_value_3
;
1664 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1665 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1666 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1667 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1669 stack_frame_head
= fra
.me
.prev
;
1672 void OC_icode_dump___ISeq___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1673 struct {struct stack_frame_t me
;} fra
;
1676 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1677 fra
.me
.file
= LOCATE_icode_dump
;
1679 fra
.me
.meth
= LOCATE_icode_dump___ISeq___dump
;
1680 fra
.me
.has_broke
= 0;
1681 fra
.me
.REG_size
= 1;
1682 fra
.me
.REG
[0] = NIT_NULL
;
1683 fra
.me
.closure_ctx
= closctx_param
;
1684 fra
.me
.closure_funs
= CREG
;
1686 CREG
[0] = clos_fun0
;
1687 /* ./analysis//icode_dump.nit:236 */
1688 CALL_icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
1689 stack_frame_head
= fra
.me
.prev
;
1692 void icode_dump___IIf___dump(val_t p0
, val_t p1
){
1693 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1696 static val_t once_value_1
; /* Once value */
1697 static val_t once_value_2
; /* Once value */
1698 static val_t once_value_3
; /* Once value */
1699 static val_t once_value_4
; /* Once value */
1700 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1701 fra
.me
.file
= LOCATE_icode_dump
;
1703 fra
.me
.meth
= LOCATE_icode_dump___IIf___dump
;
1704 fra
.me
.has_broke
= 0;
1705 fra
.me
.REG_size
= 4;
1706 fra
.me
.REG
[0] = NIT_NULL
;
1707 fra
.me
.REG
[1] = NIT_NULL
;
1708 fra
.me
.REG
[2] = NIT_NULL
;
1709 fra
.me
.REG
[3] = NIT_NULL
;
1712 /* ./analysis//icode_dump.nit:246 */
1714 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
1715 if (!once_value_1
) {
1716 fra
.me
.REG
[3] = BOX_NativeString("IF(");
1718 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1719 once_value_1
= fra
.me
.REG
[3];
1720 register_static_object(&once_value_1
);
1721 } else fra
.me
.REG
[3] = once_value_1
;
1722 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1723 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1724 fra
.me
.REG
[3] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1725 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1726 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1727 if (!once_value_2
) {
1728 fra
.me
.REG
[3] = BOX_NativeString(") {");
1730 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1731 once_value_2
= fra
.me
.REG
[3];
1732 register_static_object(&once_value_2
);
1733 } else fra
.me
.REG
[3] = once_value_2
;
1734 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1735 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1736 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1737 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1738 /* ./analysis//icode_dump.nit:247 */
1739 CALL_icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1740 /* ./analysis//icode_dump.nit:248 */
1741 fra
.me
.REG
[2] = CALL_icode_base___IIf___then_seq(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1742 CALL_icode_dump___ICode___dump(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1743 /* ./analysis//icode_dump.nit:249 */
1744 CALL_icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1745 /* ./analysis//icode_dump.nit:250 */
1746 if (!once_value_3
) {
1747 fra
.me
.REG
[2] = BOX_NativeString("} ELSE {");
1749 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1750 once_value_3
= fra
.me
.REG
[2];
1751 register_static_object(&once_value_3
);
1752 } else fra
.me
.REG
[2] = once_value_3
;
1753 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1754 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1755 /* ./analysis//icode_dump.nit:251 */
1756 CALL_icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1757 /* ./analysis//icode_dump.nit:252 */
1758 fra
.me
.REG
[0] = CALL_icode_base___IIf___else_seq(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1759 CALL_icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1760 /* ./analysis//icode_dump.nit:253 */
1761 CALL_icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1762 /* ./analysis//icode_dump.nit:254 */
1763 if (!once_value_4
) {
1764 fra
.me
.REG
[0] = BOX_NativeString("}");
1766 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1767 once_value_4
= fra
.me
.REG
[0];
1768 register_static_object(&once_value_4
);
1769 } else fra
.me
.REG
[0] = once_value_4
;
1770 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1771 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1772 stack_frame_head
= fra
.me
.prev
;
1775 void icode_dump___ILoop___dump(val_t p0
, val_t p1
){
1776 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1780 static val_t once_value_1
; /* Once value */
1781 static val_t once_value_3
; /* Once value */
1782 static val_t once_value_4
; /* Once value */
1783 static val_t once_value_5
; /* Once value */
1784 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1785 fra
.me
.file
= LOCATE_icode_dump
;
1787 fra
.me
.meth
= LOCATE_icode_dump___ILoop___dump
;
1788 fra
.me
.has_broke
= 0;
1789 fra
.me
.REG_size
= 4;
1790 fra
.me
.REG
[0] = NIT_NULL
;
1791 fra
.me
.REG
[1] = NIT_NULL
;
1792 fra
.me
.REG
[2] = NIT_NULL
;
1793 fra
.me
.REG
[3] = NIT_NULL
;
1796 /* ./analysis//icode_dump.nit:261 */
1797 if (!once_value_1
) {
1798 fra
.me
.REG
[2] = BOX_NativeString("LOOP {");
1800 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1801 once_value_1
= fra
.me
.REG
[2];
1802 register_static_object(&once_value_1
);
1803 } else fra
.me
.REG
[2] = once_value_1
;
1804 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1805 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1806 /* ./analysis//icode_dump.nit:262 */
1807 CALL_icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1808 /* ./analysis//icode_dump.nit:263 */
1809 fra
.me
.REG
[2] = CALL_icode_base___ISeq___icodes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1810 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_icode_dump___ILoop___dump_2
));
1811 /* ./analysis//icode_dump.nit:266 */
1812 CALL_icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1813 /* ./analysis//icode_dump.nit:267 */
1814 if (!once_value_3
) {
1815 fra
.me
.REG
[2] = BOX_NativeString("}");
1817 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1818 once_value_3
= fra
.me
.REG
[2];
1819 register_static_object(&once_value_3
);
1820 } else fra
.me
.REG
[2] = once_value_3
;
1821 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1822 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1823 /* ./analysis//icode_dump.nit:268 */
1824 fra
.me
.REG
[0] = CALL_icode_base___ISeq___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1825 /* ./analysis//icode_dump.nit:269 */
1826 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1827 if (UNTAG_Bool(REGB0
)) {
1829 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1830 if (UNTAG_Bool(REGB1
)) {
1831 REGB1
= TAG_Bool(false);
1834 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1838 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1839 if (UNTAG_Bool(REGB0
)) {
1840 REGB0
= CALL_icode_dump___ICodeDumper___has_lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1842 REGB1
= TAG_Bool(false);
1845 if (UNTAG_Bool(REGB0
)) {
1847 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
1848 if (!once_value_4
) {
1849 fra
.me
.REG
[3] = BOX_NativeString("");
1851 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1852 once_value_4
= fra
.me
.REG
[3];
1853 register_static_object(&once_value_4
);
1854 } else fra
.me
.REG
[3] = once_value_4
;
1855 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1856 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1857 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1858 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1859 if (!once_value_5
) {
1860 fra
.me
.REG
[0] = BOX_NativeString(":");
1862 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1863 once_value_5
= fra
.me
.REG
[0];
1864 register_static_object(&once_value_5
);
1865 } else fra
.me
.REG
[0] = once_value_5
;
1866 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1867 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1868 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1869 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1871 stack_frame_head
= fra
.me
.prev
;
1874 void OC_icode_dump___ILoop___dump_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1875 struct {struct stack_frame_t me
;} fra
;
1878 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1879 fra
.me
.file
= LOCATE_icode_dump
;
1881 fra
.me
.meth
= LOCATE_icode_dump___ILoop___dump
;
1882 fra
.me
.has_broke
= 0;
1883 fra
.me
.REG_size
= 1;
1884 fra
.me
.REG
[0] = NIT_NULL
;
1885 fra
.me
.closure_ctx
= closctx_param
;
1886 fra
.me
.closure_funs
= CREG
;
1888 CREG
[0] = clos_fun0
;
1889 /* ./analysis//icode_dump.nit:264 */
1890 CALL_icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
1891 stack_frame_head
= fra
.me
.prev
;
1894 val_t
icode_dump___IEscape___dump_intern(val_t p0
, val_t p1
){
1895 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1898 static val_t once_value_1
; /* Once value */
1899 static val_t once_value_2
; /* Once value */
1900 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1901 fra
.me
.file
= LOCATE_icode_dump
;
1903 fra
.me
.meth
= LOCATE_icode_dump___IEscape___dump_intern
;
1904 fra
.me
.has_broke
= 0;
1905 fra
.me
.REG_size
= 4;
1906 fra
.me
.REG
[0] = NIT_NULL
;
1907 fra
.me
.REG
[1] = NIT_NULL
;
1908 fra
.me
.REG
[2] = NIT_NULL
;
1909 fra
.me
.REG
[3] = NIT_NULL
;
1912 /* ./analysis//icode_dump.nit:276 */
1914 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
1915 if (!once_value_1
) {
1916 fra
.me
.REG
[3] = BOX_NativeString("ESCAPE ");
1918 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
1919 once_value_1
= fra
.me
.REG
[3];
1920 register_static_object(&once_value_1
);
1921 } else fra
.me
.REG
[3] = once_value_1
;
1922 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1923 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1924 fra
.me
.REG
[0] = CALL_icode_base___IEscape___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1925 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1926 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1927 if (!once_value_2
) {
1928 fra
.me
.REG
[0] = BOX_NativeString("");
1930 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1931 once_value_2
= fra
.me
.REG
[0];
1932 register_static_object(&once_value_2
);
1933 } else fra
.me
.REG
[0] = once_value_2
;
1934 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1935 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1936 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1939 stack_frame_head
= fra
.me
.prev
;
1940 return fra
.me
.REG
[2];
1942 val_t
icode_dump___IAbort___dump_intern(val_t p0
, val_t p1
){
1943 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1946 static val_t once_value_1
; /* Once value */
1947 static val_t once_value_2
; /* Once value */
1948 static val_t once_value_3
; /* Once value */
1949 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1950 fra
.me
.file
= LOCATE_icode_dump
;
1952 fra
.me
.meth
= LOCATE_icode_dump___IAbort___dump_intern
;
1953 fra
.me
.has_broke
= 0;
1954 fra
.me
.REG_size
= 3;
1955 fra
.me
.REG
[0] = NIT_NULL
;
1956 fra
.me
.REG
[1] = NIT_NULL
;
1957 fra
.me
.REG
[2] = NIT_NULL
;
1960 /* ./analysis//icode_dump.nit:283 */
1962 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
1963 if (!once_value_1
) {
1964 fra
.me
.REG
[2] = BOX_NativeString("ABORT (\"");
1966 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1967 once_value_1
= fra
.me
.REG
[2];
1968 register_static_object(&once_value_1
);
1969 } else fra
.me
.REG
[2] = once_value_1
;
1970 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1971 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1972 fra
.me
.REG
[0] = CALL_icode_base___IAbort___texts(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1973 if (!once_value_2
) {
1974 fra
.me
.REG
[2] = BOX_NativeString("\", \"");
1976 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1977 once_value_2
= fra
.me
.REG
[2];
1978 register_static_object(&once_value_2
);
1979 } else fra
.me
.REG
[2] = once_value_2
;
1980 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1981 fra
.me
.REG
[2] = CALL_string___Collection___join(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1982 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1983 if (!once_value_3
) {
1984 fra
.me
.REG
[2] = BOX_NativeString("\")");
1986 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
1987 once_value_3
= fra
.me
.REG
[2];
1988 register_static_object(&once_value_3
);
1989 } else fra
.me
.REG
[2] = once_value_3
;
1990 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1991 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1992 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1995 stack_frame_head
= fra
.me
.prev
;
1996 return fra
.me
.REG
[1];
1998 val_t
icode_dump___ICall___dump_intern(val_t p0
, val_t p1
){
1999 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2002 static val_t once_value_1
; /* Once value */
2003 static val_t once_value_2
; /* Once value */
2004 static val_t once_value_3
; /* Once value */
2005 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2006 fra
.me
.file
= LOCATE_icode_dump
;
2008 fra
.me
.meth
= LOCATE_icode_dump___ICall___dump_intern
;
2009 fra
.me
.has_broke
= 0;
2010 fra
.me
.REG_size
= 4;
2011 fra
.me
.REG
[0] = NIT_NULL
;
2012 fra
.me
.REG
[1] = NIT_NULL
;
2013 fra
.me
.REG
[2] = NIT_NULL
;
2014 fra
.me
.REG
[3] = NIT_NULL
;
2017 /* ./analysis//icode_dump.nit:290 */
2019 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2020 if (!once_value_1
) {
2021 fra
.me
.REG
[3] = BOX_NativeString("CALL ");
2023 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2024 once_value_1
= fra
.me
.REG
[3];
2025 register_static_object(&once_value_1
);
2026 } else fra
.me
.REG
[3] = once_value_1
;
2027 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2028 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2029 fra
.me
.REG
[3] = CALL_icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2030 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2031 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2032 if (!once_value_2
) {
2033 fra
.me
.REG
[3] = BOX_NativeString("(");
2035 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2036 once_value_2
= fra
.me
.REG
[3];
2037 register_static_object(&once_value_2
);
2038 } else fra
.me
.REG
[3] = once_value_2
;
2039 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2040 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2041 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2042 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2043 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2044 if (!once_value_3
) {
2045 fra
.me
.REG
[0] = BOX_NativeString(")");
2047 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2048 once_value_3
= fra
.me
.REG
[0];
2049 register_static_object(&once_value_3
);
2050 } else fra
.me
.REG
[0] = once_value_3
;
2051 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2052 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2053 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2056 stack_frame_head
= fra
.me
.prev
;
2057 return fra
.me
.REG
[2];
2059 val_t
icode_dump___INew___dump_intern(val_t p0
, val_t p1
){
2060 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2063 static val_t once_value_1
; /* Once value */
2064 static val_t once_value_2
; /* Once value */
2065 static val_t once_value_3
; /* Once value */
2066 static val_t once_value_4
; /* Once value */
2067 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2068 fra
.me
.file
= LOCATE_icode_dump
;
2070 fra
.me
.meth
= LOCATE_icode_dump___INew___dump_intern
;
2071 fra
.me
.has_broke
= 0;
2072 fra
.me
.REG_size
= 4;
2073 fra
.me
.REG
[0] = NIT_NULL
;
2074 fra
.me
.REG
[1] = NIT_NULL
;
2075 fra
.me
.REG
[2] = NIT_NULL
;
2076 fra
.me
.REG
[3] = NIT_NULL
;
2079 /* ./analysis//icode_dump.nit:297 */
2081 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2082 if (!once_value_1
) {
2083 fra
.me
.REG
[3] = BOX_NativeString("NEW ");
2085 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2086 once_value_1
= fra
.me
.REG
[3];
2087 register_static_object(&once_value_1
);
2088 } else fra
.me
.REG
[3] = once_value_1
;
2089 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2090 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2091 fra
.me
.REG
[3] = CALL_icode_base___INew___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2092 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2093 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2094 if (!once_value_2
) {
2095 fra
.me
.REG
[3] = BOX_NativeString(".");
2097 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2098 once_value_2
= fra
.me
.REG
[3];
2099 register_static_object(&once_value_2
);
2100 } else fra
.me
.REG
[3] = once_value_2
;
2101 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2102 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2103 fra
.me
.REG
[3] = CALL_icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2104 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2105 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2106 if (!once_value_3
) {
2107 fra
.me
.REG
[3] = BOX_NativeString("(");
2109 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2110 once_value_3
= fra
.me
.REG
[3];
2111 register_static_object(&once_value_3
);
2112 } else fra
.me
.REG
[3] = once_value_3
;
2113 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2114 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2115 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2116 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2117 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2118 if (!once_value_4
) {
2119 fra
.me
.REG
[0] = BOX_NativeString(")");
2121 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2122 once_value_4
= fra
.me
.REG
[0];
2123 register_static_object(&once_value_4
);
2124 } else fra
.me
.REG
[0] = once_value_4
;
2125 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2126 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2127 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2130 stack_frame_head
= fra
.me
.prev
;
2131 return fra
.me
.REG
[2];
2133 val_t
icode_dump___ISuper___dump_intern(val_t p0
, val_t p1
){
2134 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2137 static val_t once_value_1
; /* Once value */
2138 static val_t once_value_2
; /* Once value */
2139 static val_t once_value_3
; /* Once value */
2140 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2141 fra
.me
.file
= LOCATE_icode_dump
;
2143 fra
.me
.meth
= LOCATE_icode_dump___ISuper___dump_intern
;
2144 fra
.me
.has_broke
= 0;
2145 fra
.me
.REG_size
= 4;
2146 fra
.me
.REG
[0] = NIT_NULL
;
2147 fra
.me
.REG
[1] = NIT_NULL
;
2148 fra
.me
.REG
[2] = NIT_NULL
;
2149 fra
.me
.REG
[3] = NIT_NULL
;
2152 /* ./analysis//icode_dump.nit:304 */
2154 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2155 if (!once_value_1
) {
2156 fra
.me
.REG
[3] = BOX_NativeString("SUPER ");
2158 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2159 once_value_1
= fra
.me
.REG
[3];
2160 register_static_object(&once_value_1
);
2161 } else fra
.me
.REG
[3] = once_value_1
;
2162 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2163 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2164 fra
.me
.REG
[3] = CALL_icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2165 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2166 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2167 if (!once_value_2
) {
2168 fra
.me
.REG
[3] = BOX_NativeString("(");
2170 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2171 once_value_2
= fra
.me
.REG
[3];
2172 register_static_object(&once_value_2
);
2173 } else fra
.me
.REG
[3] = once_value_2
;
2174 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2175 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2176 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2177 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2178 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2179 if (!once_value_3
) {
2180 fra
.me
.REG
[0] = BOX_NativeString(")");
2182 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2183 once_value_3
= fra
.me
.REG
[0];
2184 register_static_object(&once_value_3
);
2185 } else fra
.me
.REG
[0] = once_value_3
;
2186 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2187 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2188 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2191 stack_frame_head
= fra
.me
.prev
;
2192 return fra
.me
.REG
[2];
2194 val_t
icode_dump___IStaticCall___dump_intern(val_t p0
, val_t p1
){
2195 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2198 static val_t once_value_1
; /* Once value */
2199 static val_t once_value_2
; /* Once value */
2200 static val_t once_value_3
; /* Once value */
2201 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2202 fra
.me
.file
= LOCATE_icode_dump
;
2204 fra
.me
.meth
= LOCATE_icode_dump___IStaticCall___dump_intern
;
2205 fra
.me
.has_broke
= 0;
2206 fra
.me
.REG_size
= 4;
2207 fra
.me
.REG
[0] = NIT_NULL
;
2208 fra
.me
.REG
[1] = NIT_NULL
;
2209 fra
.me
.REG
[2] = NIT_NULL
;
2210 fra
.me
.REG
[3] = NIT_NULL
;
2213 /* ./analysis//icode_dump.nit:311 */
2215 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2216 if (!once_value_1
) {
2217 fra
.me
.REG
[3] = BOX_NativeString("STATIC_CALL ");
2218 REGB0
= TAG_Int(12);
2219 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2220 once_value_1
= fra
.me
.REG
[3];
2221 register_static_object(&once_value_1
);
2222 } else fra
.me
.REG
[3] = once_value_1
;
2223 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2224 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2225 fra
.me
.REG
[3] = CALL_icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2226 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2227 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2228 if (!once_value_2
) {
2229 fra
.me
.REG
[3] = BOX_NativeString("(");
2231 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2232 once_value_2
= fra
.me
.REG
[3];
2233 register_static_object(&once_value_2
);
2234 } else fra
.me
.REG
[3] = once_value_2
;
2235 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2236 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2237 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2238 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2239 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2240 if (!once_value_3
) {
2241 fra
.me
.REG
[0] = BOX_NativeString(")");
2243 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2244 once_value_3
= fra
.me
.REG
[0];
2245 register_static_object(&once_value_3
);
2246 } else fra
.me
.REG
[0] = once_value_3
;
2247 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2248 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2249 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2252 stack_frame_head
= fra
.me
.prev
;
2253 return fra
.me
.REG
[2];
2255 val_t
icode_dump___IAllocateInstance___dump_intern(val_t p0
, val_t p1
){
2256 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2259 static val_t once_value_1
; /* Once value */
2260 static val_t once_value_2
; /* Once value */
2261 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2262 fra
.me
.file
= LOCATE_icode_dump
;
2264 fra
.me
.meth
= LOCATE_icode_dump___IAllocateInstance___dump_intern
;
2265 fra
.me
.has_broke
= 0;
2266 fra
.me
.REG_size
= 3;
2267 fra
.me
.REG
[0] = NIT_NULL
;
2268 fra
.me
.REG
[1] = NIT_NULL
;
2269 fra
.me
.REG
[2] = NIT_NULL
;
2272 /* ./analysis//icode_dump.nit:318 */
2274 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2275 if (!once_value_1
) {
2276 fra
.me
.REG
[2] = BOX_NativeString("ALLOCATE NEW_");
2277 REGB0
= TAG_Int(13);
2278 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2279 once_value_1
= fra
.me
.REG
[2];
2280 register_static_object(&once_value_1
);
2281 } else fra
.me
.REG
[2] = once_value_1
;
2282 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2283 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2284 fra
.me
.REG
[0] = CALL_icode_base___IAllocateInstance___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2285 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2286 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2287 if (!once_value_2
) {
2288 fra
.me
.REG
[0] = BOX_NativeString("");
2290 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2291 once_value_2
= fra
.me
.REG
[0];
2292 register_static_object(&once_value_2
);
2293 } else fra
.me
.REG
[0] = once_value_2
;
2294 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2295 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2296 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2299 stack_frame_head
= fra
.me
.prev
;
2300 return fra
.me
.REG
[1];
2302 val_t
icode_dump___ICheckInstance___dump_intern(val_t p0
, val_t p1
){
2303 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2306 static val_t once_value_1
; /* Once value */
2307 static val_t once_value_2
; /* Once value */
2308 static val_t once_value_3
; /* Once value */
2309 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2310 fra
.me
.file
= LOCATE_icode_dump
;
2312 fra
.me
.meth
= LOCATE_icode_dump___ICheckInstance___dump_intern
;
2313 fra
.me
.has_broke
= 0;
2314 fra
.me
.REG_size
= 4;
2315 fra
.me
.REG
[0] = NIT_NULL
;
2316 fra
.me
.REG
[1] = NIT_NULL
;
2317 fra
.me
.REG
[2] = NIT_NULL
;
2318 fra
.me
.REG
[3] = NIT_NULL
;
2321 /* ./analysis//icode_dump.nit:325 */
2323 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2324 if (!once_value_1
) {
2325 fra
.me
.REG
[3] = BOX_NativeString("CHECK_INSTANCE CHECKNEW_");
2326 REGB0
= TAG_Int(24);
2327 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2328 once_value_1
= fra
.me
.REG
[3];
2329 register_static_object(&once_value_1
);
2330 } else fra
.me
.REG
[3] = once_value_1
;
2331 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2332 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2333 fra
.me
.REG
[3] = CALL_icode_base___ICheckInstance___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2334 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2335 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2336 if (!once_value_2
) {
2337 fra
.me
.REG
[3] = BOX_NativeString("(");
2339 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2340 once_value_2
= fra
.me
.REG
[3];
2341 register_static_object(&once_value_2
);
2342 } else fra
.me
.REG
[3] = once_value_2
;
2343 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2344 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2345 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2346 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2347 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2348 if (!once_value_3
) {
2349 fra
.me
.REG
[0] = BOX_NativeString(")");
2351 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2352 once_value_3
= fra
.me
.REG
[0];
2353 register_static_object(&once_value_3
);
2354 } else fra
.me
.REG
[0] = once_value_3
;
2355 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2356 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2357 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2360 stack_frame_head
= fra
.me
.prev
;
2361 return fra
.me
.REG
[2];
2363 val_t
icode_dump___IInitAttributes___dump_intern(val_t p0
, val_t p1
){
2364 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2367 static val_t once_value_1
; /* Once value */
2368 static val_t once_value_2
; /* Once value */
2369 static val_t once_value_3
; /* Once value */
2370 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2371 fra
.me
.file
= LOCATE_icode_dump
;
2373 fra
.me
.meth
= LOCATE_icode_dump___IInitAttributes___dump_intern
;
2374 fra
.me
.has_broke
= 0;
2375 fra
.me
.REG_size
= 4;
2376 fra
.me
.REG
[0] = NIT_NULL
;
2377 fra
.me
.REG
[1] = NIT_NULL
;
2378 fra
.me
.REG
[2] = NIT_NULL
;
2379 fra
.me
.REG
[3] = NIT_NULL
;
2382 /* ./analysis//icode_dump.nit:332 */
2384 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2385 if (!once_value_1
) {
2386 fra
.me
.REG
[3] = BOX_NativeString("INIT_ATTRIBUTES INIT_ATTRIBUTES_");
2387 REGB0
= TAG_Int(32);
2388 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2389 once_value_1
= fra
.me
.REG
[3];
2390 register_static_object(&once_value_1
);
2391 } else fra
.me
.REG
[3] = once_value_1
;
2392 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2393 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2394 fra
.me
.REG
[3] = CALL_icode_base___IInitAttributes___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2395 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2396 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2397 if (!once_value_2
) {
2398 fra
.me
.REG
[3] = BOX_NativeString("(");
2400 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2401 once_value_2
= fra
.me
.REG
[3];
2402 register_static_object(&once_value_2
);
2403 } else fra
.me
.REG
[3] = once_value_2
;
2404 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2405 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2406 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2407 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2408 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2409 if (!once_value_3
) {
2410 fra
.me
.REG
[0] = BOX_NativeString(")");
2412 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2413 once_value_3
= fra
.me
.REG
[0];
2414 register_static_object(&once_value_3
);
2415 } else fra
.me
.REG
[0] = once_value_3
;
2416 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2417 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2418 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2421 stack_frame_head
= fra
.me
.prev
;
2422 return fra
.me
.REG
[2];
2424 val_t
icode_dump___IClosCall___dump_intern(val_t p0
, val_t p1
){
2425 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2428 static val_t once_value_1
; /* Once value */
2429 static val_t once_value_2
; /* Once value */
2430 static val_t once_value_3
; /* Once value */
2431 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2432 fra
.me
.file
= LOCATE_icode_dump
;
2434 fra
.me
.meth
= LOCATE_icode_dump___IClosCall___dump_intern
;
2435 fra
.me
.has_broke
= 0;
2436 fra
.me
.REG_size
= 4;
2437 fra
.me
.REG
[0] = NIT_NULL
;
2438 fra
.me
.REG
[1] = NIT_NULL
;
2439 fra
.me
.REG
[2] = NIT_NULL
;
2440 fra
.me
.REG
[3] = NIT_NULL
;
2443 /* ./analysis//icode_dump.nit:339 */
2445 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2446 if (!once_value_1
) {
2447 fra
.me
.REG
[3] = BOX_NativeString("CLOS_CALL ");
2448 REGB0
= TAG_Int(10);
2449 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2450 once_value_1
= fra
.me
.REG
[3];
2451 register_static_object(&once_value_1
);
2452 } else fra
.me
.REG
[3] = once_value_1
;
2453 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2454 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2455 fra
.me
.REG
[3] = CALL_icode_base___IClosCall___closure_decl(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2456 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2457 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2458 if (!once_value_2
) {
2459 fra
.me
.REG
[3] = BOX_NativeString("(");
2461 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2462 once_value_2
= fra
.me
.REG
[3];
2463 register_static_object(&once_value_2
);
2464 } else fra
.me
.REG
[3] = once_value_2
;
2465 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2466 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2467 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2468 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2469 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2470 if (!once_value_3
) {
2471 fra
.me
.REG
[0] = BOX_NativeString(")");
2473 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2474 once_value_3
= fra
.me
.REG
[0];
2475 register_static_object(&once_value_3
);
2476 } else fra
.me
.REG
[0] = once_value_3
;
2477 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2478 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2479 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2482 stack_frame_head
= fra
.me
.prev
;
2483 return fra
.me
.REG
[2];
2485 val_t
icode_dump___IAttrRead___dump_intern(val_t p0
, val_t p1
){
2486 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2489 static val_t once_value_1
; /* Once value */
2490 static val_t once_value_2
; /* Once value */
2491 static val_t once_value_3
; /* Once value */
2492 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2493 fra
.me
.file
= LOCATE_icode_dump
;
2495 fra
.me
.meth
= LOCATE_icode_dump___IAttrRead___dump_intern
;
2496 fra
.me
.has_broke
= 0;
2497 fra
.me
.REG_size
= 4;
2498 fra
.me
.REG
[0] = NIT_NULL
;
2499 fra
.me
.REG
[1] = NIT_NULL
;
2500 fra
.me
.REG
[2] = NIT_NULL
;
2501 fra
.me
.REG
[3] = NIT_NULL
;
2504 /* ./analysis//icode_dump.nit:346 */
2506 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2507 if (!once_value_1
) {
2508 fra
.me
.REG
[3] = BOX_NativeString("ATTR_READ ");
2509 REGB0
= TAG_Int(10);
2510 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2511 once_value_1
= fra
.me
.REG
[3];
2512 register_static_object(&once_value_1
);
2513 } else fra
.me
.REG
[3] = once_value_1
;
2514 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2515 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2516 fra
.me
.REG
[3] = CALL_icode_base___IAttrRead___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2517 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2518 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2519 if (!once_value_2
) {
2520 fra
.me
.REG
[3] = BOX_NativeString("(");
2522 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2523 once_value_2
= fra
.me
.REG
[3];
2524 register_static_object(&once_value_2
);
2525 } else fra
.me
.REG
[3] = once_value_2
;
2526 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2527 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2528 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2529 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2530 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2531 if (!once_value_3
) {
2532 fra
.me
.REG
[0] = BOX_NativeString(")");
2534 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2535 once_value_3
= fra
.me
.REG
[0];
2536 register_static_object(&once_value_3
);
2537 } else fra
.me
.REG
[0] = once_value_3
;
2538 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2539 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2540 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2543 stack_frame_head
= fra
.me
.prev
;
2544 return fra
.me
.REG
[2];
2546 val_t
icode_dump___IAttrWrite___dump_intern(val_t p0
, val_t p1
){
2547 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2550 static val_t once_value_1
; /* Once value */
2551 static val_t once_value_2
; /* Once value */
2552 static val_t once_value_3
; /* Once value */
2553 static val_t once_value_4
; /* Once value */
2554 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2555 fra
.me
.file
= LOCATE_icode_dump
;
2557 fra
.me
.meth
= LOCATE_icode_dump___IAttrWrite___dump_intern
;
2558 fra
.me
.has_broke
= 0;
2559 fra
.me
.REG_size
= 4;
2560 fra
.me
.REG
[0] = NIT_NULL
;
2561 fra
.me
.REG
[1] = NIT_NULL
;
2562 fra
.me
.REG
[2] = NIT_NULL
;
2563 fra
.me
.REG
[3] = NIT_NULL
;
2566 /* ./analysis//icode_dump.nit:353 */
2568 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2569 if (!once_value_1
) {
2570 fra
.me
.REG
[3] = BOX_NativeString("ATTR_WRITE ");
2571 REGB0
= TAG_Int(11);
2572 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2573 once_value_1
= fra
.me
.REG
[3];
2574 register_static_object(&once_value_1
);
2575 } else fra
.me
.REG
[3] = once_value_1
;
2576 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2577 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2578 fra
.me
.REG
[3] = CALL_icode_base___IAttrWrite___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2579 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2580 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2581 if (!once_value_2
) {
2582 fra
.me
.REG
[3] = BOX_NativeString("(");
2584 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2585 once_value_2
= fra
.me
.REG
[3];
2586 register_static_object(&once_value_2
);
2587 } else fra
.me
.REG
[3] = once_value_2
;
2588 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2589 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2590 fra
.me
.REG
[3] = CALL_icode_base___ICode2___expr1(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2591 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2592 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2593 if (!once_value_3
) {
2594 fra
.me
.REG
[3] = BOX_NativeString(") := ");
2596 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2597 once_value_3
= fra
.me
.REG
[3];
2598 register_static_object(&once_value_3
);
2599 } else fra
.me
.REG
[3] = once_value_3
;
2600 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2601 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2602 fra
.me
.REG
[0] = CALL_icode_base___ICode2___expr2(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2603 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2604 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2605 if (!once_value_4
) {
2606 fra
.me
.REG
[0] = BOX_NativeString("");
2608 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2609 once_value_4
= fra
.me
.REG
[0];
2610 register_static_object(&once_value_4
);
2611 } else fra
.me
.REG
[0] = once_value_4
;
2612 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2613 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2614 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2617 stack_frame_head
= fra
.me
.prev
;
2618 return fra
.me
.REG
[2];
2620 val_t
icode_dump___IAttrIsset___dump_intern(val_t p0
, val_t p1
){
2621 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2624 static val_t once_value_1
; /* Once value */
2625 static val_t once_value_2
; /* Once value */
2626 static val_t once_value_3
; /* Once value */
2627 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2628 fra
.me
.file
= LOCATE_icode_dump
;
2630 fra
.me
.meth
= LOCATE_icode_dump___IAttrIsset___dump_intern
;
2631 fra
.me
.has_broke
= 0;
2632 fra
.me
.REG_size
= 4;
2633 fra
.me
.REG
[0] = NIT_NULL
;
2634 fra
.me
.REG
[1] = NIT_NULL
;
2635 fra
.me
.REG
[2] = NIT_NULL
;
2636 fra
.me
.REG
[3] = NIT_NULL
;
2639 /* ./analysis//icode_dump.nit:360 */
2641 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2642 if (!once_value_1
) {
2643 fra
.me
.REG
[3] = BOX_NativeString("ATTR_ISSET ");
2644 REGB0
= TAG_Int(11);
2645 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2646 once_value_1
= fra
.me
.REG
[3];
2647 register_static_object(&once_value_1
);
2648 } else fra
.me
.REG
[3] = once_value_1
;
2649 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2650 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2651 fra
.me
.REG
[3] = CALL_icode_base___IAttrIsset___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2652 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2653 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2654 if (!once_value_2
) {
2655 fra
.me
.REG
[3] = BOX_NativeString("(");
2657 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2658 once_value_2
= fra
.me
.REG
[3];
2659 register_static_object(&once_value_2
);
2660 } else fra
.me
.REG
[3] = once_value_2
;
2661 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2662 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2663 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2664 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2665 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2666 if (!once_value_3
) {
2667 fra
.me
.REG
[0] = BOX_NativeString(")");
2669 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2670 once_value_3
= fra
.me
.REG
[0];
2671 register_static_object(&once_value_3
);
2672 } else fra
.me
.REG
[0] = once_value_3
;
2673 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2674 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2675 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2678 stack_frame_head
= fra
.me
.prev
;
2679 return fra
.me
.REG
[2];
2681 val_t
icode_dump___ITypeCheck___dump_intern(val_t p0
, val_t p1
){
2682 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2685 static val_t once_value_1
; /* Once value */
2686 static val_t once_value_2
; /* Once value */
2687 static val_t once_value_3
; /* Once value */
2688 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2689 fra
.me
.file
= LOCATE_icode_dump
;
2691 fra
.me
.meth
= LOCATE_icode_dump___ITypeCheck___dump_intern
;
2692 fra
.me
.has_broke
= 0;
2693 fra
.me
.REG_size
= 4;
2694 fra
.me
.REG
[0] = NIT_NULL
;
2695 fra
.me
.REG
[1] = NIT_NULL
;
2696 fra
.me
.REG
[2] = NIT_NULL
;
2697 fra
.me
.REG
[3] = NIT_NULL
;
2700 /* ./analysis//icode_dump.nit:367 */
2702 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2703 if (!once_value_1
) {
2704 fra
.me
.REG
[3] = BOX_NativeString("CHECKTYPE ");
2705 REGB0
= TAG_Int(10);
2706 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2707 once_value_1
= fra
.me
.REG
[3];
2708 register_static_object(&once_value_1
);
2709 } else fra
.me
.REG
[3] = once_value_1
;
2710 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2711 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2712 fra
.me
.REG
[3] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2713 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2714 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2715 if (!once_value_2
) {
2716 fra
.me
.REG
[3] = BOX_NativeString(" isa ");
2718 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2719 once_value_2
= fra
.me
.REG
[3];
2720 register_static_object(&once_value_2
);
2721 } else fra
.me
.REG
[3] = once_value_2
;
2722 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2723 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2724 fra
.me
.REG
[0] = CALL_icode_base___ITypeCheck___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2725 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2726 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2727 if (!once_value_3
) {
2728 fra
.me
.REG
[0] = BOX_NativeString("");
2730 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2731 once_value_3
= fra
.me
.REG
[0];
2732 register_static_object(&once_value_3
);
2733 } else fra
.me
.REG
[0] = once_value_3
;
2734 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2735 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2736 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2739 stack_frame_head
= fra
.me
.prev
;
2740 return fra
.me
.REG
[2];
2742 val_t
icode_dump___INative___dump_intern(val_t p0
, val_t p1
){
2743 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2746 static val_t once_value_1
; /* Once value */
2747 static val_t once_value_2
; /* Once value */
2748 static val_t once_value_3
; /* Once value */
2749 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2750 fra
.me
.file
= LOCATE_icode_dump
;
2752 fra
.me
.meth
= LOCATE_icode_dump___INative___dump_intern
;
2753 fra
.me
.has_broke
= 0;
2754 fra
.me
.REG_size
= 4;
2755 fra
.me
.REG
[0] = NIT_NULL
;
2756 fra
.me
.REG
[1] = NIT_NULL
;
2757 fra
.me
.REG
[2] = NIT_NULL
;
2758 fra
.me
.REG
[3] = NIT_NULL
;
2761 /* ./analysis//icode_dump.nit:374 */
2763 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2764 if (!once_value_1
) {
2765 fra
.me
.REG
[3] = BOX_NativeString("NATIVE \"");
2767 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2768 once_value_1
= fra
.me
.REG
[3];
2769 register_static_object(&once_value_1
);
2770 } else fra
.me
.REG
[3] = once_value_1
;
2771 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2772 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2773 fra
.me
.REG
[3] = CALL_icode_base___INative___method(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2774 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2775 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2776 if (!once_value_2
) {
2777 fra
.me
.REG
[3] = BOX_NativeString("\"(");
2779 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
2780 once_value_2
= fra
.me
.REG
[3];
2781 register_static_object(&once_value_2
);
2782 } else fra
.me
.REG
[3] = once_value_2
;
2783 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2784 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2785 fra
.me
.REG
[0] = CALL_icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2786 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2787 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2788 if (!once_value_3
) {
2789 fra
.me
.REG
[0] = BOX_NativeString(")");
2791 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2792 once_value_3
= fra
.me
.REG
[0];
2793 register_static_object(&once_value_3
);
2794 } else fra
.me
.REG
[0] = once_value_3
;
2795 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2796 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2797 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2800 stack_frame_head
= fra
.me
.prev
;
2801 return fra
.me
.REG
[2];
2803 val_t
icode_dump___IIntValue___dump_intern(val_t p0
, val_t p1
){
2804 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2807 static val_t once_value_1
; /* Once value */
2808 static val_t once_value_2
; /* Once value */
2809 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2810 fra
.me
.file
= LOCATE_icode_dump
;
2812 fra
.me
.meth
= LOCATE_icode_dump___IIntValue___dump_intern
;
2813 fra
.me
.has_broke
= 0;
2814 fra
.me
.REG_size
= 3;
2815 fra
.me
.REG
[0] = NIT_NULL
;
2816 fra
.me
.REG
[1] = NIT_NULL
;
2817 fra
.me
.REG
[2] = NIT_NULL
;
2820 /* ./analysis//icode_dump.nit:381 */
2822 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2823 if (!once_value_1
) {
2824 fra
.me
.REG
[2] = BOX_NativeString("INTVALUE ");
2826 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2827 once_value_1
= fra
.me
.REG
[2];
2828 register_static_object(&once_value_1
);
2829 } else fra
.me
.REG
[2] = once_value_1
;
2830 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2831 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2832 fra
.me
.REG
[0] = CALL_icode_base___IIntValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2833 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2834 if (!once_value_2
) {
2835 fra
.me
.REG
[0] = BOX_NativeString("");
2837 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2838 once_value_2
= fra
.me
.REG
[0];
2839 register_static_object(&once_value_2
);
2840 } else fra
.me
.REG
[0] = once_value_2
;
2841 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2842 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2843 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2846 stack_frame_head
= fra
.me
.prev
;
2847 return fra
.me
.REG
[1];
2849 val_t
icode_dump___IBoolValue___dump_intern(val_t p0
, val_t p1
){
2850 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2853 static val_t once_value_1
; /* Once value */
2854 static val_t once_value_2
; /* Once value */
2855 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2856 fra
.me
.file
= LOCATE_icode_dump
;
2858 fra
.me
.meth
= LOCATE_icode_dump___IBoolValue___dump_intern
;
2859 fra
.me
.has_broke
= 0;
2860 fra
.me
.REG_size
= 3;
2861 fra
.me
.REG
[0] = NIT_NULL
;
2862 fra
.me
.REG
[1] = NIT_NULL
;
2863 fra
.me
.REG
[2] = NIT_NULL
;
2866 /* ./analysis//icode_dump.nit:388 */
2868 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2869 if (!once_value_1
) {
2870 fra
.me
.REG
[2] = BOX_NativeString("BOOLVALUE ");
2871 REGB0
= TAG_Int(10);
2872 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2873 once_value_1
= fra
.me
.REG
[2];
2874 register_static_object(&once_value_1
);
2875 } else fra
.me
.REG
[2] = once_value_1
;
2876 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2877 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2878 REGB0
= CALL_icode_base___IBoolValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2879 fra
.me
.REG
[0] = CALL_string___Object___to_s(REGB0
)(REGB0
);
2880 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2881 if (!once_value_2
) {
2882 fra
.me
.REG
[0] = BOX_NativeString("");
2884 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2885 once_value_2
= fra
.me
.REG
[0];
2886 register_static_object(&once_value_2
);
2887 } else fra
.me
.REG
[0] = once_value_2
;
2888 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2889 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2890 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2893 stack_frame_head
= fra
.me
.prev
;
2894 return fra
.me
.REG
[1];
2896 val_t
icode_dump___IStringValue___dump_intern(val_t p0
, val_t p1
){
2897 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2900 static val_t once_value_1
; /* Once value */
2901 static val_t once_value_2
; /* Once value */
2902 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2903 fra
.me
.file
= LOCATE_icode_dump
;
2905 fra
.me
.meth
= LOCATE_icode_dump___IStringValue___dump_intern
;
2906 fra
.me
.has_broke
= 0;
2907 fra
.me
.REG_size
= 3;
2908 fra
.me
.REG
[0] = NIT_NULL
;
2909 fra
.me
.REG
[1] = NIT_NULL
;
2910 fra
.me
.REG
[2] = NIT_NULL
;
2913 /* ./analysis//icode_dump.nit:395 */
2915 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2916 if (!once_value_1
) {
2917 fra
.me
.REG
[2] = BOX_NativeString("STRINGVALUE ");
2918 REGB0
= TAG_Int(12);
2919 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2920 once_value_1
= fra
.me
.REG
[2];
2921 register_static_object(&once_value_1
);
2922 } else fra
.me
.REG
[2] = once_value_1
;
2923 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2924 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2925 fra
.me
.REG
[0] = CALL_icode_base___IStringValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2926 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2927 if (!once_value_2
) {
2928 fra
.me
.REG
[0] = BOX_NativeString("");
2930 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2931 once_value_2
= fra
.me
.REG
[0];
2932 register_static_object(&once_value_2
);
2933 } else fra
.me
.REG
[0] = once_value_2
;
2934 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2935 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2936 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2939 stack_frame_head
= fra
.me
.prev
;
2940 return fra
.me
.REG
[1];
2942 val_t
icode_dump___ICharValue___dump_intern(val_t p0
, val_t p1
){
2943 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2946 static val_t once_value_1
; /* Once value */
2947 static val_t once_value_2
; /* Once value */
2948 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2949 fra
.me
.file
= LOCATE_icode_dump
;
2951 fra
.me
.meth
= LOCATE_icode_dump___ICharValue___dump_intern
;
2952 fra
.me
.has_broke
= 0;
2953 fra
.me
.REG_size
= 3;
2954 fra
.me
.REG
[0] = NIT_NULL
;
2955 fra
.me
.REG
[1] = NIT_NULL
;
2956 fra
.me
.REG
[2] = NIT_NULL
;
2959 /* ./analysis//icode_dump.nit:402 */
2961 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2962 if (!once_value_1
) {
2963 fra
.me
.REG
[2] = BOX_NativeString("CHARVALUE ");
2964 REGB0
= TAG_Int(10);
2965 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2966 once_value_1
= fra
.me
.REG
[2];
2967 register_static_object(&once_value_1
);
2968 } else fra
.me
.REG
[2] = once_value_1
;
2969 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2970 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2971 fra
.me
.REG
[0] = CALL_icode_base___ICharValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2972 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2973 if (!once_value_2
) {
2974 fra
.me
.REG
[0] = BOX_NativeString("");
2976 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2977 once_value_2
= fra
.me
.REG
[0];
2978 register_static_object(&once_value_2
);
2979 } else fra
.me
.REG
[0] = once_value_2
;
2980 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2981 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2982 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2985 stack_frame_head
= fra
.me
.prev
;
2986 return fra
.me
.REG
[1];
2988 val_t
icode_dump___IFloatValue___dump_intern(val_t p0
, val_t p1
){
2989 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2992 static val_t once_value_1
; /* Once value */
2993 static val_t once_value_2
; /* Once value */
2994 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2995 fra
.me
.file
= LOCATE_icode_dump
;
2997 fra
.me
.meth
= LOCATE_icode_dump___IFloatValue___dump_intern
;
2998 fra
.me
.has_broke
= 0;
2999 fra
.me
.REG_size
= 3;
3000 fra
.me
.REG
[0] = NIT_NULL
;
3001 fra
.me
.REG
[1] = NIT_NULL
;
3002 fra
.me
.REG
[2] = NIT_NULL
;
3005 /* ./analysis//icode_dump.nit:409 */
3007 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
3008 if (!once_value_1
) {
3009 fra
.me
.REG
[2] = BOX_NativeString("FLOATVALUE ");
3010 REGB0
= TAG_Int(11);
3011 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3012 once_value_1
= fra
.me
.REG
[2];
3013 register_static_object(&once_value_1
);
3014 } else fra
.me
.REG
[2] = once_value_1
;
3015 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3016 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3017 fra
.me
.REG
[0] = CALL_icode_base___IFloatValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3018 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3019 if (!once_value_2
) {
3020 fra
.me
.REG
[0] = BOX_NativeString("");
3022 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3023 once_value_2
= fra
.me
.REG
[0];
3024 register_static_object(&once_value_2
);
3025 } else fra
.me
.REG
[0] = once_value_2
;
3026 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3027 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3028 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3031 stack_frame_head
= fra
.me
.prev
;
3032 return fra
.me
.REG
[1];
3034 val_t
icode_dump___IMove___dump_intern(val_t p0
, val_t p1
){
3035 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3038 static val_t once_value_1
; /* Once value */
3039 static val_t once_value_2
; /* Once value */
3040 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3041 fra
.me
.file
= LOCATE_icode_dump
;
3043 fra
.me
.meth
= LOCATE_icode_dump___IMove___dump_intern
;
3044 fra
.me
.has_broke
= 0;
3045 fra
.me
.REG_size
= 4;
3046 fra
.me
.REG
[0] = NIT_NULL
;
3047 fra
.me
.REG
[1] = NIT_NULL
;
3048 fra
.me
.REG
[2] = NIT_NULL
;
3049 fra
.me
.REG
[3] = NIT_NULL
;
3052 /* ./analysis//icode_dump.nit:416 */
3054 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
3055 if (!once_value_1
) {
3056 fra
.me
.REG
[3] = BOX_NativeString("");
3058 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3059 once_value_1
= fra
.me
.REG
[3];
3060 register_static_object(&once_value_1
);
3061 } else fra
.me
.REG
[3] = once_value_1
;
3062 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3063 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3064 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3065 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3066 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3067 if (!once_value_2
) {
3068 fra
.me
.REG
[0] = BOX_NativeString("");
3070 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3071 once_value_2
= fra
.me
.REG
[0];
3072 register_static_object(&once_value_2
);
3073 } else fra
.me
.REG
[0] = once_value_2
;
3074 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3075 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3076 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3079 stack_frame_head
= fra
.me
.prev
;
3080 return fra
.me
.REG
[2];
3082 val_t
icode_dump___IIs___dump_intern(val_t p0
, val_t p1
){
3083 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3086 static val_t once_value_1
; /* Once value */
3087 static val_t once_value_2
; /* Once value */
3088 static val_t once_value_3
; /* Once value */
3089 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3090 fra
.me
.file
= LOCATE_icode_dump
;
3092 fra
.me
.meth
= LOCATE_icode_dump___IIs___dump_intern
;
3093 fra
.me
.has_broke
= 0;
3094 fra
.me
.REG_size
= 4;
3095 fra
.me
.REG
[0] = NIT_NULL
;
3096 fra
.me
.REG
[1] = NIT_NULL
;
3097 fra
.me
.REG
[2] = NIT_NULL
;
3098 fra
.me
.REG
[3] = NIT_NULL
;
3101 /* ./analysis//icode_dump.nit:423 */
3103 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
3104 if (!once_value_1
) {
3105 fra
.me
.REG
[3] = BOX_NativeString("");
3107 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3108 once_value_1
= fra
.me
.REG
[3];
3109 register_static_object(&once_value_1
);
3110 } else fra
.me
.REG
[3] = once_value_1
;
3111 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3112 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3113 fra
.me
.REG
[3] = CALL_icode_base___ICode2___expr1(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3114 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3115 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3116 if (!once_value_2
) {
3117 fra
.me
.REG
[3] = BOX_NativeString(" is ");
3119 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3120 once_value_2
= fra
.me
.REG
[3];
3121 register_static_object(&once_value_2
);
3122 } else fra
.me
.REG
[3] = once_value_2
;
3123 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3124 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3125 fra
.me
.REG
[0] = CALL_icode_base___ICode2___expr2(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3126 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3127 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3128 if (!once_value_3
) {
3129 fra
.me
.REG
[0] = BOX_NativeString("");
3131 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3132 once_value_3
= fra
.me
.REG
[0];
3133 register_static_object(&once_value_3
);
3134 } else fra
.me
.REG
[0] = once_value_3
;
3135 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3136 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3137 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3140 stack_frame_head
= fra
.me
.prev
;
3141 return fra
.me
.REG
[2];
3143 val_t
icode_dump___INot___dump_intern(val_t p0
, val_t p1
){
3144 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3147 static val_t once_value_1
; /* Once value */
3148 static val_t once_value_2
; /* Once value */
3149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3150 fra
.me
.file
= LOCATE_icode_dump
;
3152 fra
.me
.meth
= LOCATE_icode_dump___INot___dump_intern
;
3153 fra
.me
.has_broke
= 0;
3154 fra
.me
.REG_size
= 4;
3155 fra
.me
.REG
[0] = NIT_NULL
;
3156 fra
.me
.REG
[1] = NIT_NULL
;
3157 fra
.me
.REG
[2] = NIT_NULL
;
3158 fra
.me
.REG
[3] = NIT_NULL
;
3161 /* ./analysis//icode_dump.nit:430 */
3163 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
3164 if (!once_value_1
) {
3165 fra
.me
.REG
[3] = BOX_NativeString("NOT ");
3167 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3168 once_value_1
= fra
.me
.REG
[3];
3169 register_static_object(&once_value_1
);
3170 } else fra
.me
.REG
[3] = once_value_1
;
3171 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3172 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3173 fra
.me
.REG
[0] = CALL_icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3174 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3175 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3176 if (!once_value_2
) {
3177 fra
.me
.REG
[0] = BOX_NativeString("");
3179 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3180 once_value_2
= fra
.me
.REG
[0];
3181 register_static_object(&once_value_2
);
3182 } else fra
.me
.REG
[0] = once_value_2
;
3183 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3184 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3185 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3188 stack_frame_head
= fra
.me
.prev
;
3189 return fra
.me
.REG
[2];
3191 void icode_dump___IOnce___dump(val_t p0
, val_t p1
){
3192 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3195 static val_t once_value_1
; /* Once value */
3196 static val_t once_value_2
; /* Once value */
3197 static val_t once_value_3
; /* Once value */
3198 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3199 fra
.me
.file
= LOCATE_icode_dump
;
3201 fra
.me
.meth
= LOCATE_icode_dump___IOnce___dump
;
3202 fra
.me
.has_broke
= 0;
3203 fra
.me
.REG_size
= 4;
3204 fra
.me
.REG
[0] = NIT_NULL
;
3205 fra
.me
.REG
[1] = NIT_NULL
;
3206 fra
.me
.REG
[2] = NIT_NULL
;
3207 fra
.me
.REG
[3] = NIT_NULL
;
3210 /* ./analysis//icode_dump.nit:437 */
3212 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
3213 if (!once_value_1
) {
3214 fra
.me
.REG
[3] = BOX_NativeString("");
3216 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3217 once_value_1
= fra
.me
.REG
[3];
3218 register_static_object(&once_value_1
);
3219 } else fra
.me
.REG
[3] = once_value_1
;
3220 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3221 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3222 fra
.me
.REG
[3] = CALL_icode_base___ICode___result(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3223 REGB0
= TAG_Bool((fra
.me
.REG
[3]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[3], COLOR_IRegister
, ID_IRegister
)) /*cast IRegister*/;
3224 if (UNTAG_Bool(REGB0
)) {
3226 nit_abort("Cast failed", NULL
, LOCATE_icode_dump
, 437);
3228 fra
.me
.REG
[3] = CALL_icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3229 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3230 if (!once_value_2
) {
3231 fra
.me
.REG
[3] = BOX_NativeString(" := ONCE {");
3232 REGB0
= TAG_Int(10);
3233 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3234 once_value_2
= fra
.me
.REG
[3];
3235 register_static_object(&once_value_2
);
3236 } else fra
.me
.REG
[3] = once_value_2
;
3237 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3238 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3239 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3240 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3241 /* ./analysis//icode_dump.nit:438 */
3242 CALL_icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3243 /* ./analysis//icode_dump.nit:439 */
3244 fra
.me
.REG
[0] = CALL_icode_base___IOnce___body(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3245 CALL_icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3246 /* ./analysis//icode_dump.nit:440 */
3247 CALL_icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3248 /* ./analysis//icode_dump.nit:441 */
3249 if (!once_value_3
) {
3250 fra
.me
.REG
[0] = BOX_NativeString("}");
3252 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3253 once_value_3
= fra
.me
.REG
[0];
3254 register_static_object(&once_value_3
);
3255 } else fra
.me
.REG
[0] = once_value_3
;
3256 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3257 CALL_icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3258 stack_frame_head
= fra
.me
.prev
;
3261 val_t
icode_dump___IHasClos___dump_intern(val_t p0
, val_t p1
){
3262 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3265 static val_t once_value_1
; /* Once value */
3266 static val_t once_value_2
; /* Once value */
3267 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3268 fra
.me
.file
= LOCATE_icode_dump
;
3270 fra
.me
.meth
= LOCATE_icode_dump___IHasClos___dump_intern
;
3271 fra
.me
.has_broke
= 0;
3272 fra
.me
.REG_size
= 4;
3273 fra
.me
.REG
[0] = NIT_NULL
;
3274 fra
.me
.REG
[1] = NIT_NULL
;
3275 fra
.me
.REG
[2] = NIT_NULL
;
3276 fra
.me
.REG
[3] = NIT_NULL
;
3279 /* ./analysis//icode_dump.nit:448 */
3281 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
3282 if (!once_value_1
) {
3283 fra
.me
.REG
[3] = BOX_NativeString("HASCLOS ");
3285 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3286 once_value_1
= fra
.me
.REG
[3];
3287 register_static_object(&once_value_1
);
3288 } else fra
.me
.REG
[3] = once_value_1
;
3289 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3290 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3291 fra
.me
.REG
[0] = CALL_icode_base___IHasClos___closure_decl(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3292 fra
.me
.REG
[0] = CALL_icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3293 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3294 if (!once_value_2
) {
3295 fra
.me
.REG
[0] = BOX_NativeString("");
3297 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3298 once_value_2
= fra
.me
.REG
[0];
3299 register_static_object(&once_value_2
);
3300 } else fra
.me
.REG
[0] = once_value_2
;
3301 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3302 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3303 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3306 stack_frame_head
= fra
.me
.prev
;
3307 return fra
.me
.REG
[2];