1 /* This C file is generated by NIT to compile module analysis___icode_dump. */
2 #include "analysis___icode_dump._sep.h"
3 static const char LOCATE_analysis___icode_dump___IRoutine___dump
[] = "icode_dump::IRoutine::dump";
4 void analysis___icode_dump___IRoutine___dump(val_t p0
, val_t p1
){
5 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
10 static val_t once_value_2
; /* Once value */
11 static val_t once_value_3
; /* Once value */
12 static val_t once_value_4
; /* Once value */
13 static val_t once_value_5
; /* Once value */
14 static val_t once_value_6
; /* Once value */
15 static val_t once_value_7
; /* Once value */
16 static val_t once_value_8
; /* Once value */
17 static val_t once_value_9
; /* Once value */
18 static val_t once_value_10
; /* Once value */
19 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
20 fra
.me
.file
= LOCATE_analysis___icode_dump
;
22 fra
.me
.meth
= LOCATE_analysis___icode_dump___IRoutine___dump
;
25 fra
.me
.nitni_local_ref_head
= NULL
;
26 fra
.me
.REG
[0] = NIT_NULL
;
27 fra
.me
.REG
[1] = NIT_NULL
;
28 fra
.me
.REG
[2] = NIT_NULL
;
29 fra
.me
.REG
[3] = NIT_NULL
;
30 fra
.me
.REG
[4] = NIT_NULL
;
33 /* analysis/icode_dump.nit:27 */
34 fra
.me
.REG
[2] = CALL_icode___icode_base___IRoutine___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
35 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
36 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
37 if (UNTAG_Bool(REGB0
)) {
38 /* analysis/icode_dump.nit:28 */
39 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___init();
40 /* analysis/icode_dump.nit:29 */
41 fra
.me
.REG
[3] = CALL_icode___icode_base___IRoutine___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
42 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___IRoutine___dump_1
));
43 /* analysis/icode_dump.nit:32 */
45 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
47 fra
.me
.REG
[4] = BOX_NativeString("Parameters: ");
49 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
50 once_value_2
= fra
.me
.REG
[4];
51 register_static_object(&once_value_2
);
52 } else fra
.me
.REG
[4] = once_value_2
;
53 fra
.me
.REG
[4] = fra
.me
.REG
[4];
54 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
56 fra
.me
.REG
[4] = BOX_NativeString(", ");
58 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
59 once_value_3
= fra
.me
.REG
[4];
60 register_static_object(&once_value_3
);
61 } else fra
.me
.REG
[4] = once_value_3
;
62 fra
.me
.REG
[4] = fra
.me
.REG
[4];
63 fra
.me
.REG
[4] = CALL_standard___string___Collection___join(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
64 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
66 fra
.me
.REG
[4] = BOX_NativeString("");
68 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
69 once_value_4
= fra
.me
.REG
[4];
70 register_static_object(&once_value_4
);
71 } else fra
.me
.REG
[4] = once_value_4
;
72 fra
.me
.REG
[4] = fra
.me
.REG
[4];
73 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
74 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
75 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
77 /* analysis/icode_dump.nit:34 */
78 fra
.me
.REG
[3] = CALL_icode___icode_base___IRoutine___result(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
79 /* analysis/icode_dump.nit:35 */
80 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
81 if (UNTAG_Bool(REGB0
)) {
83 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
84 if (UNTAG_Bool(REGB1
)) {
88 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
92 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
93 if (UNTAG_Bool(REGB0
)) {
94 /* analysis/icode_dump.nit:36 */
96 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
98 fra
.me
.REG
[2] = BOX_NativeString("Result: ");
100 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
101 once_value_5
= fra
.me
.REG
[2];
102 register_static_object(&once_value_5
);
103 } else fra
.me
.REG
[2] = once_value_5
;
104 fra
.me
.REG
[2] = fra
.me
.REG
[2];
105 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
106 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
107 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
109 fra
.me
.REG
[3] = BOX_NativeString("");
111 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
112 once_value_6
= fra
.me
.REG
[3];
113 register_static_object(&once_value_6
);
114 } else fra
.me
.REG
[3] = once_value_6
;
115 fra
.me
.REG
[3] = fra
.me
.REG
[3];
116 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
117 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
118 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
120 /* analysis/icode_dump.nit:38 */
121 REGB0
= CALL_analysis___allocate_iregister_slots___IRoutine___std_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
123 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
124 if (UNTAG_Bool(REGB2
)) {
126 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
128 /* ../lib/standard/kernel.nit:244 */
129 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
130 /* analysis/icode_dump.nit:38 */
131 if (UNTAG_Bool(REGB1
)) {
132 /* analysis/icode_dump.nit:39 */
134 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
136 fra
.me
.REG
[3] = BOX_NativeString("StdSlots: ");
138 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB1
);
139 once_value_7
= fra
.me
.REG
[3];
140 register_static_object(&once_value_7
);
141 } else fra
.me
.REG
[3] = once_value_7
;
142 fra
.me
.REG
[3] = fra
.me
.REG
[3];
143 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
144 REGB1
= CALL_analysis___allocate_iregister_slots___IRoutine___std_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
145 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
146 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
148 fra
.me
.REG
[3] = BOX_NativeString("");
150 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB1
);
151 once_value_8
= fra
.me
.REG
[3];
152 register_static_object(&once_value_8
);
153 } else fra
.me
.REG
[3] = once_value_8
;
154 fra
.me
.REG
[3] = fra
.me
.REG
[3];
155 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
156 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
157 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
159 /* analysis/icode_dump.nit:41 */
160 REGB1
= CALL_analysis___allocate_iregister_slots___IRoutine___tag_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
162 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
163 if (UNTAG_Bool(REGB2
)) {
165 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
167 /* ../lib/standard/kernel.nit:244 */
168 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
169 /* analysis/icode_dump.nit:41 */
170 if (UNTAG_Bool(REGB0
)) {
171 /* analysis/icode_dump.nit:42 */
173 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
175 fra
.me
.REG
[3] = BOX_NativeString("TagSlots: ");
177 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
178 once_value_9
= fra
.me
.REG
[3];
179 register_static_object(&once_value_9
);
180 } else fra
.me
.REG
[3] = once_value_9
;
181 fra
.me
.REG
[3] = fra
.me
.REG
[3];
182 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
183 REGB0
= CALL_analysis___allocate_iregister_slots___IRoutine___tag_slots_nb(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
184 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
185 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
186 if (!once_value_10
) {
187 fra
.me
.REG
[3] = BOX_NativeString("");
189 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
190 once_value_10
= fra
.me
.REG
[3];
191 register_static_object(&once_value_10
);
192 } else fra
.me
.REG
[3] = once_value_10
;
193 fra
.me
.REG
[3] = fra
.me
.REG
[3];
194 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
195 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
196 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
198 /* analysis/icode_dump.nit:44 */
199 fra
.me
.REG
[4] = CALL_icode___icode_base___IRoutine___closure_decls(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
200 /* analysis/icode_dump.nit:45 */
201 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
202 if (UNTAG_Bool(REGB0
)) {
204 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
205 if (UNTAG_Bool(REGB1
)) {
209 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
213 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
214 if (UNTAG_Bool(REGB0
)) {
215 /* analysis/icode_dump.nit:46 */
216 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
217 if (UNTAG_Bool(REGB0
)) {
218 nit_abort("Reciever is null", NULL
, LOCATE_analysis___icode_dump
, 46);
220 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[4])(fra
.me
.REG
[4], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___IRoutine___dump_11
));
222 /* analysis/icode_dump.nit:50 */
223 fra
.me
.REG
[0] = CALL_icode___icode_base___IRoutine___body(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
224 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
225 stack_frame_head
= fra
.me
.prev
;
228 void OC_analysis___icode_dump___IRoutine___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
229 struct {struct stack_frame_t me
;} fra
;
232 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
233 fra
.me
.file
= LOCATE_analysis___icode_dump
;
235 fra
.me
.meth
= LOCATE_analysis___icode_dump___IRoutine___dump
;
236 fra
.me
.has_broke
= 0;
238 fra
.me
.nitni_local_ref_head
= NULL
;
239 fra
.me
.REG
[0] = NIT_NULL
;
240 fra
.me
.closure_ctx
= closctx_param
;
241 fra
.me
.closure_funs
= CREG
;
244 /* analysis/icode_dump.nit:30 */
245 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[0]);
246 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[2])(closctx
->REG
[2], fra
.me
.REG
[0]);
247 stack_frame_head
= fra
.me
.prev
;
250 void OC_analysis___icode_dump___IRoutine___dump_11(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
251 struct {struct stack_frame_t me
;} fra
;
254 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
255 fra
.me
.file
= LOCATE_analysis___icode_dump
;
257 fra
.me
.meth
= LOCATE_analysis___icode_dump___IRoutine___dump
;
258 fra
.me
.has_broke
= 0;
260 fra
.me
.nitni_local_ref_head
= NULL
;
261 fra
.me
.REG
[0] = NIT_NULL
;
262 fra
.me
.closure_ctx
= closctx_param
;
263 fra
.me
.closure_funs
= CREG
;
266 /* analysis/icode_dump.nit:47 */
267 CALL_analysis___icode_dump___IClosureDecl___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
268 stack_frame_head
= fra
.me
.prev
;
271 static const char LOCATE_analysis___icode_dump___IClosureDecl___dump
[] = "icode_dump::IClosureDecl::dump";
272 void analysis___icode_dump___IClosureDecl___dump(val_t p0
, val_t p1
){
273 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
277 static val_t once_value_1
; /* Once value */
278 static val_t once_value_2
; /* Once value */
279 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
280 fra
.me
.file
= LOCATE_analysis___icode_dump
;
282 fra
.me
.meth
= LOCATE_analysis___icode_dump___IClosureDecl___dump
;
283 fra
.me
.has_broke
= 0;
285 fra
.me
.nitni_local_ref_head
= NULL
;
286 fra
.me
.REG
[0] = NIT_NULL
;
287 fra
.me
.REG
[1] = NIT_NULL
;
288 fra
.me
.REG
[2] = NIT_NULL
;
289 fra
.me
.REG
[3] = NIT_NULL
;
292 /* analysis/icode_dump.nit:58 */
294 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
296 fra
.me
.REG
[3] = BOX_NativeString("Closure: ");
298 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
299 once_value_1
= fra
.me
.REG
[3];
300 register_static_object(&once_value_1
);
301 } else fra
.me
.REG
[3] = once_value_1
;
302 fra
.me
.REG
[3] = fra
.me
.REG
[3];
303 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
304 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
305 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
307 fra
.me
.REG
[3] = BOX_NativeString("");
309 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
310 once_value_2
= fra
.me
.REG
[3];
311 register_static_object(&once_value_2
);
312 } else fra
.me
.REG
[3] = once_value_2
;
313 fra
.me
.REG
[3] = fra
.me
.REG
[3];
314 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
315 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
316 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
317 /* analysis/icode_dump.nit:59 */
318 fra
.me
.REG
[2] = CALL_icode___icode_base___IClosureDecl___default(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
319 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
320 if (UNTAG_Bool(REGB0
)) {
322 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
323 if (UNTAG_Bool(REGB1
)) {
327 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
331 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
332 if (UNTAG_Bool(REGB0
)) {
333 /* analysis/icode_dump.nit:60 */
334 CALL_analysis___icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
335 /* analysis/icode_dump.nit:61 */
336 fra
.me
.REG
[0] = CALL_icode___icode_base___IClosureDecl___default(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
337 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
338 if (UNTAG_Bool(REGB0
)) {
339 nit_abort("Reciever is null", NULL
, LOCATE_analysis___icode_dump
, 61);
341 CALL_analysis___icode_dump___IRoutine___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
342 /* analysis/icode_dump.nit:62 */
343 CALL_analysis___icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
345 stack_frame_head
= fra
.me
.prev
;
348 static const char LOCATE_analysis___icode_dump___ICodeDumper___dump_locations
[] = "icode_dump::ICodeDumper::dump_locations";
349 val_t
analysis___icode_dump___ICodeDumper___dump_locations(val_t p0
){
350 struct {struct stack_frame_t me
;} fra
;
353 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
354 fra
.me
.file
= LOCATE_analysis___icode_dump
;
356 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___dump_locations
;
357 fra
.me
.has_broke
= 0;
359 fra
.me
.nitni_local_ref_head
= NULL
;
360 fra
.me
.REG
[0] = NIT_NULL
;
362 /* analysis/icode_dump.nit:68 */
363 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0])!=NIT_NULL
);
364 if (UNTAG_Bool(REGB0
)) {
366 nit_abort("Uninitialized attribute %s", "_dump_locations", LOCATE_analysis___icode_dump
, 68);
368 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0]);
369 stack_frame_head
= fra
.me
.prev
;
372 static const char LOCATE_analysis___icode_dump___ICodeDumper___dump_line_numbers
[] = "icode_dump::ICodeDumper::dump_line_numbers";
373 val_t
analysis___icode_dump___ICodeDumper___dump_line_numbers(val_t p0
){
374 struct {struct stack_frame_t me
;} fra
;
377 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
378 fra
.me
.file
= LOCATE_analysis___icode_dump
;
380 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___dump_line_numbers
;
381 fra
.me
.has_broke
= 0;
383 fra
.me
.nitni_local_ref_head
= NULL
;
384 fra
.me
.REG
[0] = NIT_NULL
;
386 /* analysis/icode_dump.nit:69 */
387 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0])!=NIT_NULL
);
388 if (UNTAG_Bool(REGB0
)) {
390 nit_abort("Uninitialized attribute %s", "_dump_line_numbers", LOCATE_analysis___icode_dump
, 69);
392 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0]);
393 stack_frame_head
= fra
.me
.prev
;
396 static const char LOCATE_analysis___icode_dump___ICodeDumper___init
[] = "icode_dump::ICodeDumper::init";
397 void analysis___icode_dump___ICodeDumper___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
398 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_analysis___icode_dump___ICodeDumper
].i
;
399 struct {struct stack_frame_t me
;} fra
;
403 if (init_table
[itpos0
]) return;
404 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
405 fra
.me
.file
= LOCATE_analysis___icode_dump
;
407 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___init
;
408 fra
.me
.has_broke
= 0;
410 fra
.me
.nitni_local_ref_head
= NULL
;
411 fra
.me
.REG
[0] = NIT_NULL
;
415 /* analysis/icode_dump.nit:74 */
416 ATTR_analysis___icode_dump___ICodeDumper____dump_locations(fra
.me
.REG
[0]) = REGB0
;
417 /* analysis/icode_dump.nit:75 */
418 ATTR_analysis___icode_dump___ICodeDumper____dump_line_numbers(fra
.me
.REG
[0]) = REGB1
;
419 stack_frame_head
= fra
.me
.prev
;
420 init_table
[itpos0
] = 1;
423 static const char LOCATE_analysis___icode_dump___ICodeDumper___register
[] = "icode_dump::ICodeDumper::register";
424 val_t
analysis___icode_dump___ICodeDumper___register(val_t p0
, val_t p1
){
425 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
429 static val_t once_value_2
; /* Once value */
430 static val_t once_value_3
; /* Once value */
431 static val_t once_value_4
; /* Once value */
432 static val_t once_value_5
; /* Once value */
433 static val_t once_value_6
; /* Once value */
434 static val_t once_value_7
; /* Once value */
435 static val_t once_value_8
; /* Once value */
436 static val_t once_value_9
; /* Once value */
437 static val_t once_value_10
; /* Once value */
438 static val_t once_value_11
; /* Once value */
439 static val_t once_value_12
; /* Once value */
440 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
441 fra
.me
.file
= LOCATE_analysis___icode_dump
;
443 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___register
;
444 fra
.me
.has_broke
= 0;
446 fra
.me
.nitni_local_ref_head
= NULL
;
447 fra
.me
.REG
[0] = NIT_NULL
;
448 fra
.me
.REG
[1] = NIT_NULL
;
449 fra
.me
.REG
[2] = NIT_NULL
;
450 fra
.me
.REG
[3] = NIT_NULL
;
451 fra
.me
.REG
[4] = NIT_NULL
;
452 fra
.me
.REG
[5] = NIT_NULL
;
453 fra
.me
.REG
[6] = NIT_NULL
;
456 /* analysis/icode_dump.nit:82 */
457 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
458 if (UNTAG_Bool(REGB0
)) {
460 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 82);
462 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
463 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
464 if (UNTAG_Bool(REGB0
)) {
465 /* analysis/icode_dump.nit:83 */
466 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
467 if (UNTAG_Bool(REGB0
)) {
469 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 83);
471 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
472 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
475 /* analysis/icode_dump.nit:85 */
476 fra
.me
.REG
[3] = CALL_analysis___allocate_iregister_slots___IRegister___slot_index(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
477 /* analysis/icode_dump.nit:86 */
478 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
479 if (UNTAG_Bool(REGB0
)) {
481 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
482 if (UNTAG_Bool(REGB1
)) {
486 /* ../lib/standard/kernel.nit:237 */
487 REGB1
= TAG_Bool((fra
.me
.REG
[3])==(NIT_NULL
));
488 /* analysis/icode_dump.nit:86 */
492 if (UNTAG_Bool(REGB0
)) {
493 /* analysis/icode_dump.nit:87 */
494 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
496 /* ../lib/standard/kernel.nit:245 */
497 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
498 /* analysis/icode_dump.nit:87 */
499 ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]) = REGB1
;
500 /* analysis/icode_dump.nit:88 */
502 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
504 fra
.me
.REG
[5] = BOX_NativeString("r");
506 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB1
);
507 once_value_2
= fra
.me
.REG
[5];
508 register_static_object(&once_value_2
);
509 } else fra
.me
.REG
[5] = once_value_2
;
510 fra
.me
.REG
[5] = fra
.me
.REG
[5];
511 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
512 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
513 if (UNTAG_Bool(REGB1
)) {
515 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump
, 88);
517 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
518 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
519 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
521 fra
.me
.REG
[5] = BOX_NativeString("");
523 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB1
);
524 once_value_3
= fra
.me
.REG
[5];
525 register_static_object(&once_value_3
);
526 } else fra
.me
.REG
[5] = once_value_3
;
527 fra
.me
.REG
[5] = fra
.me
.REG
[5];
528 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
529 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
530 /* analysis/icode_dump.nit:89 */
531 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
532 if (UNTAG_Bool(REGB1
)) {
534 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 89);
536 fra
.me
.REG
[5] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
537 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[1], fra
.me
.REG
[4]);
538 /* analysis/icode_dump.nit:90 */
539 fra
.me
.REG
[2] = fra
.me
.REG
[4];
542 /* analysis/icode_dump.nit:92 */
543 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
545 /* ../lib/standard/kernel.nit:245 */
546 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
547 /* analysis/icode_dump.nit:92 */
548 ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]) = REGB0
;
549 /* analysis/icode_dump.nit:94 */
550 REGB0
= CALL_analysis___allocate_iregister_slots___IRegister___in_tag_slots(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
551 if (UNTAG_Bool(REGB0
)) {
552 /* analysis/icode_dump.nit:95 */
554 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
556 fra
.me
.REG
[5] = BOX_NativeString("BREG");
558 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
559 once_value_4
= fra
.me
.REG
[5];
560 register_static_object(&once_value_4
);
561 } else fra
.me
.REG
[5] = once_value_4
;
562 fra
.me
.REG
[5] = fra
.me
.REG
[5];
563 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
564 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
565 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
567 fra
.me
.REG
[5] = BOX_NativeString("(r");
569 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
570 once_value_5
= fra
.me
.REG
[5];
571 register_static_object(&once_value_5
);
572 } else fra
.me
.REG
[5] = once_value_5
;
573 fra
.me
.REG
[5] = fra
.me
.REG
[5];
574 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
575 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
576 if (UNTAG_Bool(REGB0
)) {
578 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump
, 95);
580 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
581 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
582 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
584 fra
.me
.REG
[5] = BOX_NativeString(")");
586 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
587 once_value_6
= fra
.me
.REG
[5];
588 register_static_object(&once_value_6
);
589 } else fra
.me
.REG
[5] = once_value_6
;
590 fra
.me
.REG
[5] = fra
.me
.REG
[5];
591 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
592 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
594 /* analysis/icode_dump.nit:96 */
595 REGB0
= CALL_analysis___allocate_iregister_slots___IRegister___is_local(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
596 if (UNTAG_Bool(REGB0
)) {
597 /* analysis/icode_dump.nit:97 */
599 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
601 fra
.me
.REG
[6] = BOX_NativeString("LREG");
603 fra
.me
.REG
[6] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB0
);
604 once_value_7
= fra
.me
.REG
[6];
605 register_static_object(&once_value_7
);
606 } else fra
.me
.REG
[6] = once_value_7
;
607 fra
.me
.REG
[6] = fra
.me
.REG
[6];
608 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
609 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
610 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
612 fra
.me
.REG
[6] = BOX_NativeString("(r");
614 fra
.me
.REG
[6] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB0
);
615 once_value_8
= fra
.me
.REG
[6];
616 register_static_object(&once_value_8
);
617 } else fra
.me
.REG
[6] = once_value_8
;
618 fra
.me
.REG
[6] = fra
.me
.REG
[6];
619 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
620 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
621 if (UNTAG_Bool(REGB0
)) {
623 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump
, 97);
625 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
626 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
627 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
629 fra
.me
.REG
[6] = BOX_NativeString(")");
631 fra
.me
.REG
[6] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB0
);
632 once_value_9
= fra
.me
.REG
[6];
633 register_static_object(&once_value_9
);
634 } else fra
.me
.REG
[6] = once_value_9
;
635 fra
.me
.REG
[6] = fra
.me
.REG
[6];
636 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
637 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
638 fra
.me
.REG
[4] = fra
.me
.REG
[5];
640 /* analysis/icode_dump.nit:99 */
642 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
643 if (!once_value_10
) {
644 fra
.me
.REG
[6] = BOX_NativeString("REG");
646 fra
.me
.REG
[6] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB0
);
647 once_value_10
= fra
.me
.REG
[6];
648 register_static_object(&once_value_10
);
649 } else fra
.me
.REG
[6] = once_value_10
;
650 fra
.me
.REG
[6] = fra
.me
.REG
[6];
651 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
652 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
653 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
654 if (!once_value_11
) {
655 fra
.me
.REG
[3] = BOX_NativeString("(r");
657 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
658 once_value_11
= fra
.me
.REG
[3];
659 register_static_object(&once_value_11
);
660 } else fra
.me
.REG
[3] = once_value_11
;
661 fra
.me
.REG
[3] = fra
.me
.REG
[3];
662 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
663 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0])!=NIT_NULL
);
664 if (UNTAG_Bool(REGB0
)) {
666 nit_abort("Uninitialized attribute %s", "_last_value", LOCATE_analysis___icode_dump
, 99);
668 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_value(fra
.me
.REG
[0]);
669 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
670 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
671 if (!once_value_12
) {
672 fra
.me
.REG
[3] = BOX_NativeString(")");
674 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
675 once_value_12
= fra
.me
.REG
[3];
676 register_static_object(&once_value_12
);
677 } else fra
.me
.REG
[3] = once_value_12
;
678 fra
.me
.REG
[3] = fra
.me
.REG
[3];
679 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
680 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
681 fra
.me
.REG
[4] = fra
.me
.REG
[5];
684 /* analysis/icode_dump.nit:101 */
685 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
686 if (UNTAG_Bool(REGB0
)) {
688 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 101);
690 fra
.me
.REG
[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
691 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[4]);
692 /* analysis/icode_dump.nit:102 */
693 fra
.me
.REG
[2] = fra
.me
.REG
[4];
698 stack_frame_head
= fra
.me
.prev
;
699 return fra
.me
.REG
[2];
701 static const char LOCATE_analysis___icode_dump___ICodeDumper___register_all
[] = "icode_dump::ICodeDumper::register_all";
702 val_t
analysis___icode_dump___ICodeDumper___register_all(val_t p0
, val_t p1
){
703 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
707 static val_t once_value_1
; /* Once value */
708 static val_t once_value_4
; /* Once value */
709 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
710 fra
.me
.file
= LOCATE_analysis___icode_dump
;
712 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___register_all
;
713 fra
.me
.has_broke
= 0;
715 fra
.me
.nitni_local_ref_head
= NULL
;
716 fra
.me
.REG
[0] = NIT_NULL
;
717 fra
.me
.REG
[1] = NIT_NULL
;
718 fra
.me
.REG
[2] = NIT_NULL
;
719 fra
.me
.REG
[3] = NIT_NULL
;
722 /* analysis/icode_dump.nit:110 */
723 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
724 if (UNTAG_Bool(REGB0
)) {
726 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
727 if (UNTAG_Bool(REGB1
)) {
731 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
735 if (UNTAG_Bool(REGB0
)) {
737 fra
.me
.REG
[2] = BOX_NativeString("");
739 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
740 once_value_1
= fra
.me
.REG
[2];
741 register_static_object(&once_value_1
);
742 } else fra
.me
.REG
[2] = once_value_1
;
743 fra
.me
.REG
[2] = fra
.me
.REG
[2];
746 /* analysis/icode_dump.nit:111 */
747 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___init();
748 /* analysis/icode_dump.nit:112 */
749 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
750 if (UNTAG_Bool(REGB0
)) {
751 nit_abort("Reciever is null", NULL
, LOCATE_analysis___icode_dump
, 112);
753 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[1])(fra
.me
.REG
[1], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___ICodeDumper___register_all_3
));
754 /* analysis/icode_dump.nit:115 */
756 fra
.me
.REG
[0] = BOX_NativeString(", ");
758 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
759 once_value_4
= fra
.me
.REG
[0];
760 register_static_object(&once_value_4
);
761 } else fra
.me
.REG
[0] = once_value_4
;
762 fra
.me
.REG
[0] = fra
.me
.REG
[0];
763 fra
.me
.REG
[0] = CALL_standard___string___Collection___join(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
764 fra
.me
.REG
[2] = fra
.me
.REG
[0];
767 stack_frame_head
= fra
.me
.prev
;
768 return fra
.me
.REG
[2];
770 void OC_analysis___icode_dump___ICodeDumper___register_all_3(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
771 struct {struct stack_frame_t me
;} fra
;
774 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
775 fra
.me
.file
= LOCATE_analysis___icode_dump
;
777 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___register_all
;
778 fra
.me
.has_broke
= 0;
780 fra
.me
.nitni_local_ref_head
= NULL
;
781 fra
.me
.REG
[0] = NIT_NULL
;
782 fra
.me
.closure_ctx
= closctx_param
;
783 fra
.me
.closure_funs
= CREG
;
786 /* analysis/icode_dump.nit:113 */
787 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0]);
788 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[0]);
789 stack_frame_head
= fra
.me
.prev
;
792 static const char LOCATE_analysis___icode_dump___ICodeDumper___closdecl
[] = "icode_dump::ICodeDumper::closdecl";
793 val_t
analysis___icode_dump___ICodeDumper___closdecl(val_t p0
, val_t p1
){
794 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
798 static val_t once_value_2
; /* Once value */
799 static val_t once_value_3
; /* Once value */
800 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
801 fra
.me
.file
= LOCATE_analysis___icode_dump
;
803 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___closdecl
;
804 fra
.me
.has_broke
= 0;
806 fra
.me
.nitni_local_ref_head
= NULL
;
807 fra
.me
.REG
[0] = NIT_NULL
;
808 fra
.me
.REG
[1] = NIT_NULL
;
809 fra
.me
.REG
[2] = NIT_NULL
;
810 fra
.me
.REG
[3] = NIT_NULL
;
811 fra
.me
.REG
[4] = NIT_NULL
;
814 /* analysis/icode_dump.nit:124 */
815 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
816 if (UNTAG_Bool(REGB0
)) {
818 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 124);
820 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
821 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
822 if (UNTAG_Bool(REGB0
)) {
823 /* analysis/icode_dump.nit:125 */
824 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
825 if (UNTAG_Bool(REGB0
)) {
827 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 125);
829 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
830 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
833 /* analysis/icode_dump.nit:127 */
834 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]);
836 /* ../lib/standard/kernel.nit:245 */
837 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
838 /* analysis/icode_dump.nit:127 */
839 ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]) = REGB1
;
840 /* analysis/icode_dump.nit:128 */
842 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
844 fra
.me
.REG
[4] = BOX_NativeString("clos");
846 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
847 once_value_2
= fra
.me
.REG
[4];
848 register_static_object(&once_value_2
);
849 } else fra
.me
.REG
[4] = once_value_2
;
850 fra
.me
.REG
[4] = fra
.me
.REG
[4];
851 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
852 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0])!=NIT_NULL
);
853 if (UNTAG_Bool(REGB1
)) {
855 nit_abort("Uninitialized attribute %s", "_last_clos", LOCATE_analysis___icode_dump
, 128);
857 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____last_clos(fra
.me
.REG
[0]);
858 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
859 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
861 fra
.me
.REG
[4] = BOX_NativeString("");
863 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
864 once_value_3
= fra
.me
.REG
[4];
865 register_static_object(&once_value_3
);
866 } else fra
.me
.REG
[4] = once_value_3
;
867 fra
.me
.REG
[4] = fra
.me
.REG
[4];
868 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
869 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
870 /* analysis/icode_dump.nit:129 */
871 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
872 if (UNTAG_Bool(REGB1
)) {
874 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 129);
876 fra
.me
.REG
[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
877 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
878 /* analysis/icode_dump.nit:130 */
879 fra
.me
.REG
[2] = fra
.me
.REG
[3];
883 stack_frame_head
= fra
.me
.prev
;
884 return fra
.me
.REG
[2];
886 static const char LOCATE_analysis___icode_dump___ICodeDumper___lab
[] = "icode_dump::ICodeDumper::lab";
887 val_t
analysis___icode_dump___ICodeDumper___lab(val_t p0
, val_t p1
){
888 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
892 static val_t once_value_2
; /* Once value */
893 static val_t once_value_3
; /* Once value */
894 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
895 fra
.me
.file
= LOCATE_analysis___icode_dump
;
897 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___lab
;
898 fra
.me
.has_broke
= 0;
900 fra
.me
.nitni_local_ref_head
= NULL
;
901 fra
.me
.REG
[0] = NIT_NULL
;
902 fra
.me
.REG
[1] = NIT_NULL
;
903 fra
.me
.REG
[2] = NIT_NULL
;
904 fra
.me
.REG
[3] = NIT_NULL
;
905 fra
.me
.REG
[4] = NIT_NULL
;
908 /* analysis/icode_dump.nit:139 */
909 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
910 if (UNTAG_Bool(REGB0
)) {
912 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 139);
914 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
915 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
916 if (UNTAG_Bool(REGB0
)) {
917 /* analysis/icode_dump.nit:140 */
918 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
919 if (UNTAG_Bool(REGB0
)) {
921 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 140);
923 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
924 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
927 /* analysis/icode_dump.nit:142 */
928 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]);
930 /* ../lib/standard/kernel.nit:245 */
931 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
932 /* analysis/icode_dump.nit:142 */
933 ATTR_analysis___icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]) = REGB1
;
934 /* analysis/icode_dump.nit:143 */
936 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
938 fra
.me
.REG
[4] = BOX_NativeString("[l");
940 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
941 once_value_2
= fra
.me
.REG
[4];
942 register_static_object(&once_value_2
);
943 } else fra
.me
.REG
[4] = once_value_2
;
944 fra
.me
.REG
[4] = fra
.me
.REG
[4];
945 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
946 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0])!=NIT_NULL
);
947 if (UNTAG_Bool(REGB1
)) {
949 nit_abort("Uninitialized attribute %s", "_last_label", LOCATE_analysis___icode_dump
, 143);
951 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____last_label(fra
.me
.REG
[0]);
952 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
953 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
955 fra
.me
.REG
[4] = BOX_NativeString("]");
957 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
958 once_value_3
= fra
.me
.REG
[4];
959 register_static_object(&once_value_3
);
960 } else fra
.me
.REG
[4] = once_value_3
;
961 fra
.me
.REG
[4] = fra
.me
.REG
[4];
962 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
963 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
964 /* analysis/icode_dump.nit:144 */
965 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
966 if (UNTAG_Bool(REGB1
)) {
968 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 144);
970 fra
.me
.REG
[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
971 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
972 /* analysis/icode_dump.nit:145 */
973 fra
.me
.REG
[2] = fra
.me
.REG
[3];
977 stack_frame_head
= fra
.me
.prev
;
978 return fra
.me
.REG
[2];
980 static const char LOCATE_analysis___icode_dump___ICodeDumper___line
[] = "icode_dump::ICodeDumper::line";
981 val_t
analysis___icode_dump___ICodeDumper___line(val_t p0
, val_t p1
){
982 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
986 static val_t once_value_2
; /* Once value */
987 static val_t once_value_3
; /* Once value */
988 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
989 fra
.me
.file
= LOCATE_analysis___icode_dump
;
991 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___line
;
992 fra
.me
.has_broke
= 0;
994 fra
.me
.nitni_local_ref_head
= NULL
;
995 fra
.me
.REG
[0] = NIT_NULL
;
996 fra
.me
.REG
[1] = NIT_NULL
;
997 fra
.me
.REG
[2] = NIT_NULL
;
998 fra
.me
.REG
[3] = NIT_NULL
;
999 fra
.me
.REG
[4] = NIT_NULL
;
1002 /* analysis/icode_dump.nit:153 */
1003 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1004 if (UNTAG_Bool(REGB0
)) {
1006 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 153);
1008 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1009 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1010 if (UNTAG_Bool(REGB0
)) {
1011 /* analysis/icode_dump.nit:154 */
1012 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1013 if (UNTAG_Bool(REGB0
)) {
1015 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 154);
1017 fra
.me
.REG
[2] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1018 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1021 /* analysis/icode_dump.nit:156 */
1022 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]);
1024 /* ../lib/standard/kernel.nit:245 */
1025 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1026 /* analysis/icode_dump.nit:156 */
1027 ATTR_analysis___icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]) = REGB1
;
1028 /* analysis/icode_dump.nit:157 */
1030 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1031 if (!once_value_2
) {
1032 fra
.me
.REG
[4] = BOX_NativeString("");
1034 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
1035 once_value_2
= fra
.me
.REG
[4];
1036 register_static_object(&once_value_2
);
1037 } else fra
.me
.REG
[4] = once_value_2
;
1038 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1039 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1040 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0])!=NIT_NULL
);
1041 if (UNTAG_Bool(REGB1
)) {
1043 nit_abort("Uninitialized attribute %s", "_last_line", LOCATE_analysis___icode_dump
, 157);
1045 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____last_line(fra
.me
.REG
[0]);
1046 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1047 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1048 if (!once_value_3
) {
1049 fra
.me
.REG
[4] = BOX_NativeString("");
1051 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
1052 once_value_3
= fra
.me
.REG
[4];
1053 register_static_object(&once_value_3
);
1054 } else fra
.me
.REG
[4] = once_value_3
;
1055 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1056 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1057 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1058 /* analysis/icode_dump.nit:158 */
1059 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1060 if (UNTAG_Bool(REGB1
)) {
1062 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 158);
1064 fra
.me
.REG
[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1065 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
1066 /* analysis/icode_dump.nit:159 */
1067 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1071 stack_frame_head
= fra
.me
.prev
;
1072 return fra
.me
.REG
[2];
1074 static const char LOCATE_analysis___icode_dump___ICodeDumper___has_lab
[] = "icode_dump::ICodeDumper::has_lab";
1075 val_t
analysis___icode_dump___ICodeDumper___has_lab(val_t p0
, val_t p1
){
1076 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1079 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1080 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1082 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___has_lab
;
1083 fra
.me
.has_broke
= 0;
1084 fra
.me
.REG_size
= 2;
1085 fra
.me
.nitni_local_ref_head
= NULL
;
1086 fra
.me
.REG
[0] = NIT_NULL
;
1087 fra
.me
.REG
[1] = NIT_NULL
;
1090 /* analysis/icode_dump.nit:166 */
1091 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0])!=NIT_NULL
);
1092 if (UNTAG_Bool(REGB0
)) {
1094 nit_abort("Uninitialized attribute %s", "_ids", LOCATE_analysis___icode_dump
, 166);
1096 fra
.me
.REG
[0] = ATTR_analysis___icode_dump___ICodeDumper____ids(fra
.me
.REG
[0]);
1097 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1100 stack_frame_head
= fra
.me
.prev
;
1103 static const char LOCATE_analysis___icode_dump___ICodeDumper___write
[] = "icode_dump::ICodeDumper::write";
1104 void analysis___icode_dump___ICodeDumper___write(val_t p0
, val_t p1
){
1105 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1110 static val_t once_value_1
; /* Once value */
1111 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1112 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1114 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___write
;
1115 fra
.me
.has_broke
= 0;
1116 fra
.me
.REG_size
= 4;
1117 fra
.me
.nitni_local_ref_head
= NULL
;
1118 fra
.me
.REG
[0] = NIT_NULL
;
1119 fra
.me
.REG
[1] = NIT_NULL
;
1120 fra
.me
.REG
[2] = NIT_NULL
;
1121 fra
.me
.REG
[3] = NIT_NULL
;
1124 /* analysis/icode_dump.nit:172 */
1126 REGB1
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0])!=NIT_NULL
);
1127 if (UNTAG_Bool(REGB1
)) {
1129 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_analysis___icode_dump
, 172);
1131 REGB1
= ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1132 /* ../lib/standard/kernel.nit:404 */
1134 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1135 if (UNTAG_Bool(REGB2
)) {
1137 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1139 /* ../lib/standard/kernel.nit:242 */
1140 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1141 /* ../lib/standard/kernel.nit:404 */
1142 if (UNTAG_Bool(REGB2
)) {
1143 /* analysis/icode_dump.nit:173 */
1145 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
1146 if (!once_value_1
) {
1147 fra
.me
.REG
[3] = BOX_NativeString(" ");
1149 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB2
);
1150 once_value_1
= fra
.me
.REG
[3];
1151 register_static_object(&once_value_1
);
1152 } else fra
.me
.REG
[3] = once_value_1
;
1153 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1154 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1155 CALL_standard___file___Object___printn(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1156 /* ../lib/standard/kernel.nit:406 */
1158 /* ../lib/standard/kernel.nit:245 */
1159 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1160 /* ../lib/standard/kernel.nit:406 */
1163 /* ../lib/standard/kernel.nit:404 */
1168 /* analysis/icode_dump.nit:175 */
1169 CALL_standard___file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1170 stack_frame_head
= fra
.me
.prev
;
1173 static const char LOCATE_analysis___icode_dump___ICodeDumper___indent_level
[] = "icode_dump::ICodeDumper::indent_level";
1174 val_t
analysis___icode_dump___ICodeDumper___indent_level(val_t p0
){
1175 struct {struct stack_frame_t me
;} fra
;
1178 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1179 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1181 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___indent_level
;
1182 fra
.me
.has_broke
= 0;
1183 fra
.me
.REG_size
= 1;
1184 fra
.me
.nitni_local_ref_head
= NULL
;
1185 fra
.me
.REG
[0] = NIT_NULL
;
1187 /* analysis/icode_dump.nit:178 */
1188 REGB0
= TAG_Bool(ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0])!=NIT_NULL
);
1189 if (UNTAG_Bool(REGB0
)) {
1191 nit_abort("Uninitialized attribute %s", "_indent_level", LOCATE_analysis___icode_dump
, 178);
1193 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1194 stack_frame_head
= fra
.me
.prev
;
1197 static const char LOCATE_analysis___icode_dump___ICodeDumper___indent
[] = "icode_dump::ICodeDumper::indent";
1198 void analysis___icode_dump___ICodeDumper___indent(val_t p0
){
1199 struct {struct stack_frame_t me
;} fra
;
1203 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1204 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1206 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___indent
;
1207 fra
.me
.has_broke
= 0;
1208 fra
.me
.REG_size
= 1;
1209 fra
.me
.nitni_local_ref_head
= NULL
;
1210 fra
.me
.REG
[0] = NIT_NULL
;
1212 /* analysis/icode_dump.nit:181 */
1213 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1215 /* ../lib/standard/kernel.nit:245 */
1216 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1217 /* analysis/icode_dump.nit:181 */
1218 ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]) = REGB1
;
1219 stack_frame_head
= fra
.me
.prev
;
1222 static const char LOCATE_analysis___icode_dump___ICodeDumper___unindent
[] = "icode_dump::ICodeDumper::unindent";
1223 void analysis___icode_dump___ICodeDumper___unindent(val_t p0
){
1224 struct {struct stack_frame_t me
;} fra
;
1228 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1229 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1231 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeDumper___unindent
;
1232 fra
.me
.has_broke
= 0;
1233 fra
.me
.REG_size
= 1;
1234 fra
.me
.nitni_local_ref_head
= NULL
;
1235 fra
.me
.REG
[0] = NIT_NULL
;
1237 /* analysis/icode_dump.nit:184 */
1238 REGB0
= ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]);
1240 /* ../lib/standard/kernel.nit:247 */
1241 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1242 /* analysis/icode_dump.nit:184 */
1243 ATTR_analysis___icode_dump___ICodeDumper____indent_level(fra
.me
.REG
[0]) = REGB1
;
1244 stack_frame_head
= fra
.me
.prev
;
1247 static const char LOCATE_analysis___icode_dump___ICode___dump
[] = "icode_dump::ICode::dump";
1248 void analysis___icode_dump___ICode___dump(val_t p0
, val_t p1
){
1249 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
1253 static val_t once_value_1
; /* Once value */
1254 static val_t once_value_2
; /* Once value */
1255 static val_t once_value_3
; /* Once value */
1256 static val_t once_value_4
; /* Once value */
1257 static val_t once_value_5
; /* Once value */
1258 static val_t once_value_6
; /* Once value */
1259 static val_t once_value_7
; /* Once value */
1260 static val_t once_value_8
; /* Once value */
1261 static val_t once_value_9
; /* Once value */
1262 static val_t once_value_10
; /* Once value */
1263 static val_t once_value_11
; /* Once value */
1264 static val_t once_value_12
; /* Once value */
1265 static val_t once_value_13
; /* Once value */
1266 static val_t once_value_14
; /* Once value */
1267 static val_t once_value_15
; /* Once value */
1268 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1269 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1271 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICode___dump
;
1272 fra
.me
.has_broke
= 0;
1273 fra
.me
.REG_size
= 8;
1274 fra
.me
.nitni_local_ref_head
= NULL
;
1275 fra
.me
.REG
[0] = NIT_NULL
;
1276 fra
.me
.REG
[1] = NIT_NULL
;
1277 fra
.me
.REG
[2] = NIT_NULL
;
1278 fra
.me
.REG
[3] = NIT_NULL
;
1279 fra
.me
.REG
[4] = NIT_NULL
;
1280 fra
.me
.REG
[5] = NIT_NULL
;
1281 fra
.me
.REG
[6] = NIT_NULL
;
1282 fra
.me
.REG
[7] = NIT_NULL
;
1285 /* analysis/icode_dump.nit:191 */
1286 fra
.me
.REG
[2] = CALL_icode___icode_base___ICode___result(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1287 /* analysis/icode_dump.nit:192 */
1288 if (!once_value_1
) {
1289 fra
.me
.REG
[3] = BOX_NativeString("");
1291 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1292 once_value_1
= fra
.me
.REG
[3];
1293 register_static_object(&once_value_1
);
1294 } else fra
.me
.REG
[3] = once_value_1
;
1295 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1296 /* analysis/icode_dump.nit:193 */
1297 if (!once_value_2
) {
1298 fra
.me
.REG
[4] = BOX_NativeString("");
1300 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
1301 once_value_2
= fra
.me
.REG
[4];
1302 register_static_object(&once_value_2
);
1303 } else fra
.me
.REG
[4] = once_value_2
;
1304 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1305 /* analysis/icode_dump.nit:194 */
1306 fra
.me
.REG
[5] = CALL_icode___icode_base___ICode___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1307 /* analysis/icode_dump.nit:195 */
1308 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1309 if (UNTAG_Bool(REGB0
)) {
1311 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1312 if (UNTAG_Bool(REGB1
)) {
1313 REGB1
= TAG_Bool(0);
1316 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
1320 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1321 if (UNTAG_Bool(REGB0
)) {
1322 REGB0
= CALL_analysis___icode_dump___ICodeDumper___dump_locations(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1324 REGB1
= TAG_Bool(0);
1327 if (UNTAG_Bool(REGB0
)) {
1328 /* analysis/icode_dump.nit:196 */
1330 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1331 if (!once_value_3
) {
1332 fra
.me
.REG
[7] = BOX_NativeString(" ... ");
1333 REGB0
= TAG_Int(12);
1334 fra
.me
.REG
[7] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB0
);
1335 once_value_3
= fra
.me
.REG
[7];
1336 register_static_object(&once_value_3
);
1337 } else fra
.me
.REG
[7] = once_value_3
;
1338 fra
.me
.REG
[7] = fra
.me
.REG
[7];
1339 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
1340 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1341 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1342 if (!once_value_4
) {
1343 fra
.me
.REG
[5] = BOX_NativeString("");
1345 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1346 once_value_4
= fra
.me
.REG
[5];
1347 register_static_object(&once_value_4
);
1348 } else fra
.me
.REG
[5] = once_value_4
;
1349 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1350 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1351 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1352 fra
.me
.REG
[3] = fra
.me
.REG
[6];
1354 /* analysis/icode_dump.nit:198 */
1355 REGB0
= CALL_analysis___icode_dump___ICodeDumper___dump_line_numbers(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1356 if (UNTAG_Bool(REGB0
)) {
1357 /* analysis/icode_dump.nit:199 */
1359 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1360 if (!once_value_5
) {
1361 fra
.me
.REG
[5] = BOX_NativeString("");
1363 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1364 once_value_5
= fra
.me
.REG
[5];
1365 register_static_object(&once_value_5
);
1366 } else fra
.me
.REG
[5] = once_value_5
;
1367 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1368 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1369 fra
.me
.REG
[5] = CALL_analysis___icode_dump___ICodeDumper___line(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1370 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1371 if (!once_value_6
) {
1372 fra
.me
.REG
[5] = BOX_NativeString(": ");
1374 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1375 once_value_6
= fra
.me
.REG
[5];
1376 register_static_object(&once_value_6
);
1377 } else fra
.me
.REG
[5] = once_value_6
;
1378 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1379 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1380 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1381 fra
.me
.REG
[4] = fra
.me
.REG
[6];
1383 /* analysis/icode_dump.nit:201 */
1384 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1385 if (UNTAG_Bool(REGB0
)) {
1387 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1388 if (UNTAG_Bool(REGB1
)) {
1389 REGB1
= TAG_Bool(0);
1392 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1396 if (UNTAG_Bool(REGB0
)) {
1397 /* analysis/icode_dump.nit:202 */
1399 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1400 if (!once_value_7
) {
1401 fra
.me
.REG
[5] = BOX_NativeString("");
1403 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1404 once_value_7
= fra
.me
.REG
[5];
1405 register_static_object(&once_value_7
);
1406 } else fra
.me
.REG
[5] = once_value_7
;
1407 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1408 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1409 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1410 if (!once_value_8
) {
1411 fra
.me
.REG
[5] = BOX_NativeString("");
1413 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1414 once_value_8
= fra
.me
.REG
[5];
1415 register_static_object(&once_value_8
);
1416 } else fra
.me
.REG
[5] = once_value_8
;
1417 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1418 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1419 fra
.me
.REG
[5] = CALL_analysis___icode_dump___ICode___dump_intern(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1420 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1421 if (!once_value_9
) {
1422 fra
.me
.REG
[5] = BOX_NativeString("");
1424 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1425 once_value_9
= fra
.me
.REG
[5];
1426 register_static_object(&once_value_9
);
1427 } else fra
.me
.REG
[5] = once_value_9
;
1428 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1429 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1430 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1431 if (!once_value_10
) {
1432 fra
.me
.REG
[5] = BOX_NativeString("");
1434 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1435 once_value_10
= fra
.me
.REG
[5];
1436 register_static_object(&once_value_10
);
1437 } else fra
.me
.REG
[5] = once_value_10
;
1438 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1439 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1440 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1441 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1443 /* analysis/icode_dump.nit:204 */
1445 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1446 if (!once_value_11
) {
1447 fra
.me
.REG
[5] = BOX_NativeString("");
1449 fra
.me
.REG
[5] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB0
);
1450 once_value_11
= fra
.me
.REG
[5];
1451 register_static_object(&once_value_11
);
1452 } else fra
.me
.REG
[5] = once_value_11
;
1453 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1454 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
1455 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1456 if (!once_value_12
) {
1457 fra
.me
.REG
[4] = BOX_NativeString("");
1459 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
1460 once_value_12
= fra
.me
.REG
[4];
1461 register_static_object(&once_value_12
);
1462 } else fra
.me
.REG
[4] = once_value_12
;
1463 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1464 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
1465 fra
.me
.REG
[2] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1466 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
1467 if (!once_value_13
) {
1468 fra
.me
.REG
[2] = BOX_NativeString(" := ");
1470 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
1471 once_value_13
= fra
.me
.REG
[2];
1472 register_static_object(&once_value_13
);
1473 } else fra
.me
.REG
[2] = once_value_13
;
1474 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1475 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
1476 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICode___dump_intern(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1477 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
1478 if (!once_value_14
) {
1479 fra
.me
.REG
[0] = BOX_NativeString("");
1481 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1482 once_value_14
= fra
.me
.REG
[0];
1483 register_static_object(&once_value_14
);
1484 } else fra
.me
.REG
[0] = once_value_14
;
1485 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1486 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
1487 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1488 if (!once_value_15
) {
1489 fra
.me
.REG
[3] = BOX_NativeString("");
1491 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1492 once_value_15
= fra
.me
.REG
[3];
1493 register_static_object(&once_value_15
);
1494 } else fra
.me
.REG
[3] = once_value_15
;
1495 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1496 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1497 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1498 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1500 stack_frame_head
= fra
.me
.prev
;
1503 static const char LOCATE_analysis___icode_dump___ICode___dump_intern
[] = "icode_dump::ICode::dump_intern";
1504 val_t
analysis___icode_dump___ICode___dump_intern(val_t p0
, val_t p1
){
1505 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1508 static val_t once_value_1
; /* Once value */
1509 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1510 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1512 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICode___dump_intern
;
1513 fra
.me
.has_broke
= 0;
1514 fra
.me
.REG_size
= 2;
1515 fra
.me
.nitni_local_ref_head
= NULL
;
1516 fra
.me
.REG
[0] = NIT_NULL
;
1517 fra
.me
.REG
[1] = NIT_NULL
;
1520 /* analysis/icode_dump.nit:209 */
1521 if (!once_value_1
) {
1522 fra
.me
.REG
[1] = BOX_NativeString("???");
1524 fra
.me
.REG
[1] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
1525 once_value_1
= fra
.me
.REG
[1];
1526 register_static_object(&once_value_1
);
1527 } else fra
.me
.REG
[1] = once_value_1
;
1528 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1531 stack_frame_head
= fra
.me
.prev
;
1532 return fra
.me
.REG
[1];
1534 static const char LOCATE_analysis___icode_dump___ICodeN___dump
[] = "icode_dump::ICodeN::(icode_dump::ICode::dump)";
1535 void analysis___icode_dump___ICodeN___dump(val_t p0
, val_t p1
){
1536 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1540 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1541 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1543 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeN___dump
;
1544 fra
.me
.has_broke
= 0;
1545 fra
.me
.REG_size
= 4;
1546 fra
.me
.nitni_local_ref_head
= NULL
;
1547 fra
.me
.REG
[0] = NIT_NULL
;
1548 fra
.me
.REG
[1] = NIT_NULL
;
1549 fra
.me
.REG
[2] = NIT_NULL
;
1550 fra
.me
.REG
[3] = NIT_NULL
;
1553 /* analysis/icode_dump.nit:213 */
1554 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1555 fra
.me
.REG
[3] = fra
.me
.REG
[1];
1556 /* analysis/icode_dump.nit:215 */
1557 CALL_SUPER_analysis___icode_dump___ICodeN___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1558 /* analysis/icode_dump.nit:216 */
1559 fra
.me
.REG
[2] = CALL_icode___icode_base___ICodeN___closure_defs(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1560 /* analysis/icode_dump.nit:217 */
1561 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1562 if (UNTAG_Bool(REGB0
)) {
1564 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1565 if (UNTAG_Bool(REGB1
)) {
1566 REGB1
= TAG_Bool(0);
1569 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1573 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1574 if (UNTAG_Bool(REGB0
)) {
1575 /* analysis/icode_dump.nit:218 */
1576 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1577 if (UNTAG_Bool(REGB0
)) {
1578 nit_abort("Reciever is null", NULL
, LOCATE_analysis___icode_dump
, 218);
1580 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___ICodeN___dump_1
));
1582 stack_frame_head
= fra
.me
.prev
;
1585 void OC_analysis___icode_dump___ICodeN___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1586 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1591 static val_t once_value_2
; /* Once value */
1592 static val_t once_value_3
; /* Once value */
1593 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1594 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1596 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICodeN___dump
;
1597 fra
.me
.has_broke
= 0;
1598 fra
.me
.REG_size
= 2;
1599 fra
.me
.nitni_local_ref_head
= NULL
;
1600 fra
.me
.REG
[0] = NIT_NULL
;
1601 fra
.me
.REG
[1] = NIT_NULL
;
1602 fra
.me
.closure_ctx
= closctx_param
;
1603 fra
.me
.closure_funs
= CREG
;
1605 CREG
[0] = clos_fun0
;
1606 /* analysis/icode_dump.nit:219 */
1607 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1608 if (UNTAG_Bool(REGB0
)) {
1610 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1611 if (UNTAG_Bool(REGB1
)) {
1612 REGB1
= TAG_Bool(0);
1615 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1619 if (UNTAG_Bool(REGB0
)) {
1620 /* analysis/icode_dump.nit:220 */
1621 if (!once_value_2
) {
1622 fra
.me
.REG
[1] = BOX_NativeString("CLOSURE = NULL");
1623 REGB0
= TAG_Int(14);
1624 fra
.me
.REG
[1] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
1625 once_value_2
= fra
.me
.REG
[1];
1626 register_static_object(&once_value_2
);
1627 } else fra
.me
.REG
[1] = once_value_2
;
1628 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1629 CALL_analysis___icode_dump___ICodeDumper___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
1631 /* analysis/icode_dump.nit:222 */
1632 if (!once_value_3
) {
1633 fra
.me
.REG
[1] = BOX_NativeString("CLOSURE");
1635 fra
.me
.REG
[1] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
1636 once_value_3
= fra
.me
.REG
[1];
1637 register_static_object(&once_value_3
);
1638 } else fra
.me
.REG
[1] = once_value_3
;
1639 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1640 CALL_analysis___icode_dump___ICodeDumper___write(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
1641 /* analysis/icode_dump.nit:223 */
1642 CALL_analysis___icode_dump___ICodeDumper___indent(closctx
->REG
[3])(closctx
->REG
[3]);
1643 /* analysis/icode_dump.nit:224 */
1644 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1645 if (UNTAG_Bool(REGB0
)) {
1646 nit_abort("Reciever is null", NULL
, LOCATE_analysis___icode_dump
, 224);
1648 CALL_analysis___icode_dump___IRoutine___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[3]);
1649 /* analysis/icode_dump.nit:225 */
1650 CALL_analysis___icode_dump___ICodeDumper___unindent(closctx
->REG
[3])(closctx
->REG
[3]);
1652 stack_frame_head
= fra
.me
.prev
;
1655 static const char LOCATE_analysis___icode_dump___ISeq___dump
[] = "icode_dump::ISeq::(icode_dump::ICode::dump)";
1656 void analysis___icode_dump___ISeq___dump(val_t p0
, val_t p1
){
1657 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1661 static val_t once_value_2
; /* Once value */
1662 static val_t once_value_3
; /* Once value */
1663 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1664 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1666 fra
.me
.meth
= LOCATE_analysis___icode_dump___ISeq___dump
;
1667 fra
.me
.has_broke
= 0;
1668 fra
.me
.REG_size
= 4;
1669 fra
.me
.nitni_local_ref_head
= NULL
;
1670 fra
.me
.REG
[0] = NIT_NULL
;
1671 fra
.me
.REG
[1] = NIT_NULL
;
1672 fra
.me
.REG
[2] = NIT_NULL
;
1673 fra
.me
.REG
[3] = NIT_NULL
;
1676 /* analysis/icode_dump.nit:235 */
1677 fra
.me
.REG
[2] = CALL_icode___icode_base___ISeq___icodes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1678 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___ISeq___dump_1
));
1679 /* analysis/icode_dump.nit:238 */
1680 fra
.me
.REG
[0] = CALL_icode___icode_base___ISeq___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1681 /* analysis/icode_dump.nit:239 */
1682 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1683 if (UNTAG_Bool(REGB0
)) {
1685 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1686 if (UNTAG_Bool(REGB1
)) {
1687 REGB1
= TAG_Bool(0);
1690 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1694 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1695 if (UNTAG_Bool(REGB0
)) {
1696 REGB0
= CALL_analysis___icode_dump___ICodeDumper___has_lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1698 REGB1
= TAG_Bool(0);
1701 if (UNTAG_Bool(REGB0
)) {
1703 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1704 if (!once_value_2
) {
1705 fra
.me
.REG
[3] = BOX_NativeString("");
1707 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1708 once_value_2
= fra
.me
.REG
[3];
1709 register_static_object(&once_value_2
);
1710 } else fra
.me
.REG
[3] = once_value_2
;
1711 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1712 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1713 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1714 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1715 if (!once_value_3
) {
1716 fra
.me
.REG
[0] = BOX_NativeString(":");
1718 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1719 once_value_3
= fra
.me
.REG
[0];
1720 register_static_object(&once_value_3
);
1721 } else fra
.me
.REG
[0] = once_value_3
;
1722 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1723 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1724 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1725 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1727 stack_frame_head
= fra
.me
.prev
;
1730 void OC_analysis___icode_dump___ISeq___dump_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1731 struct {struct stack_frame_t me
;} fra
;
1734 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1735 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1737 fra
.me
.meth
= LOCATE_analysis___icode_dump___ISeq___dump
;
1738 fra
.me
.has_broke
= 0;
1739 fra
.me
.REG_size
= 1;
1740 fra
.me
.nitni_local_ref_head
= NULL
;
1741 fra
.me
.REG
[0] = NIT_NULL
;
1742 fra
.me
.closure_ctx
= closctx_param
;
1743 fra
.me
.closure_funs
= CREG
;
1745 CREG
[0] = clos_fun0
;
1746 /* analysis/icode_dump.nit:236 */
1747 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
1748 stack_frame_head
= fra
.me
.prev
;
1751 static const char LOCATE_analysis___icode_dump___IIf___dump
[] = "icode_dump::IIf::(icode_dump::ICode::dump)";
1752 void analysis___icode_dump___IIf___dump(val_t p0
, val_t p1
){
1753 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1756 static val_t once_value_1
; /* Once value */
1757 static val_t once_value_2
; /* Once value */
1758 static val_t once_value_3
; /* Once value */
1759 static val_t once_value_4
; /* Once value */
1760 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1761 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1763 fra
.me
.meth
= LOCATE_analysis___icode_dump___IIf___dump
;
1764 fra
.me
.has_broke
= 0;
1765 fra
.me
.REG_size
= 4;
1766 fra
.me
.nitni_local_ref_head
= NULL
;
1767 fra
.me
.REG
[0] = NIT_NULL
;
1768 fra
.me
.REG
[1] = NIT_NULL
;
1769 fra
.me
.REG
[2] = NIT_NULL
;
1770 fra
.me
.REG
[3] = NIT_NULL
;
1773 /* analysis/icode_dump.nit:246 */
1775 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1776 if (!once_value_1
) {
1777 fra
.me
.REG
[3] = BOX_NativeString("IF(");
1779 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1780 once_value_1
= fra
.me
.REG
[3];
1781 register_static_object(&once_value_1
);
1782 } else fra
.me
.REG
[3] = once_value_1
;
1783 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1784 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1785 fra
.me
.REG
[3] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1786 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1787 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1788 if (!once_value_2
) {
1789 fra
.me
.REG
[3] = BOX_NativeString(") {");
1791 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1792 once_value_2
= fra
.me
.REG
[3];
1793 register_static_object(&once_value_2
);
1794 } else fra
.me
.REG
[3] = once_value_2
;
1795 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1796 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1797 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1798 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1799 /* analysis/icode_dump.nit:247 */
1800 CALL_analysis___icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1801 /* analysis/icode_dump.nit:248 */
1802 fra
.me
.REG
[2] = CALL_icode___icode_base___IIf___then_seq(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1803 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1804 /* analysis/icode_dump.nit:249 */
1805 CALL_analysis___icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1806 /* analysis/icode_dump.nit:250 */
1807 if (!once_value_3
) {
1808 fra
.me
.REG
[2] = BOX_NativeString("} ELSE {");
1810 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
1811 once_value_3
= fra
.me
.REG
[2];
1812 register_static_object(&once_value_3
);
1813 } else fra
.me
.REG
[2] = once_value_3
;
1814 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1815 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1816 /* analysis/icode_dump.nit:251 */
1817 CALL_analysis___icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1818 /* analysis/icode_dump.nit:252 */
1819 fra
.me
.REG
[0] = CALL_icode___icode_base___IIf___else_seq(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1820 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1821 /* analysis/icode_dump.nit:253 */
1822 CALL_analysis___icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1823 /* analysis/icode_dump.nit:254 */
1824 if (!once_value_4
) {
1825 fra
.me
.REG
[0] = BOX_NativeString("}");
1827 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1828 once_value_4
= fra
.me
.REG
[0];
1829 register_static_object(&once_value_4
);
1830 } else fra
.me
.REG
[0] = once_value_4
;
1831 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1832 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1833 stack_frame_head
= fra
.me
.prev
;
1836 static const char LOCATE_analysis___icode_dump___ILoop___dump
[] = "icode_dump::ILoop::(icode_dump::ICode::dump)";
1837 void analysis___icode_dump___ILoop___dump(val_t p0
, val_t p1
){
1838 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1842 static val_t once_value_1
; /* Once value */
1843 static val_t once_value_3
; /* Once value */
1844 static val_t once_value_4
; /* Once value */
1845 static val_t once_value_5
; /* Once value */
1846 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1847 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1849 fra
.me
.meth
= LOCATE_analysis___icode_dump___ILoop___dump
;
1850 fra
.me
.has_broke
= 0;
1851 fra
.me
.REG_size
= 4;
1852 fra
.me
.nitni_local_ref_head
= NULL
;
1853 fra
.me
.REG
[0] = NIT_NULL
;
1854 fra
.me
.REG
[1] = NIT_NULL
;
1855 fra
.me
.REG
[2] = NIT_NULL
;
1856 fra
.me
.REG
[3] = NIT_NULL
;
1859 /* analysis/icode_dump.nit:261 */
1860 if (!once_value_1
) {
1861 fra
.me
.REG
[2] = BOX_NativeString("LOOP {");
1863 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
1864 once_value_1
= fra
.me
.REG
[2];
1865 register_static_object(&once_value_1
);
1866 } else fra
.me
.REG
[2] = once_value_1
;
1867 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1868 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1869 /* analysis/icode_dump.nit:262 */
1870 CALL_analysis___icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1871 /* analysis/icode_dump.nit:263 */
1872 fra
.me
.REG
[2] = CALL_icode___icode_base___ISeq___icodes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1873 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_analysis___icode_dump___ILoop___dump_2
));
1874 /* analysis/icode_dump.nit:266 */
1875 CALL_analysis___icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1876 /* analysis/icode_dump.nit:267 */
1877 if (!once_value_3
) {
1878 fra
.me
.REG
[2] = BOX_NativeString("}");
1880 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
1881 once_value_3
= fra
.me
.REG
[2];
1882 register_static_object(&once_value_3
);
1883 } else fra
.me
.REG
[2] = once_value_3
;
1884 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1885 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1886 /* analysis/icode_dump.nit:268 */
1887 fra
.me
.REG
[0] = CALL_icode___icode_base___ISeq___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1888 /* analysis/icode_dump.nit:269 */
1889 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1890 if (UNTAG_Bool(REGB0
)) {
1892 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1893 if (UNTAG_Bool(REGB1
)) {
1894 REGB1
= TAG_Bool(0);
1897 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1901 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1902 if (UNTAG_Bool(REGB0
)) {
1903 REGB0
= CALL_analysis___icode_dump___ICodeDumper___has_lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1905 REGB1
= TAG_Bool(0);
1908 if (UNTAG_Bool(REGB0
)) {
1910 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1911 if (!once_value_4
) {
1912 fra
.me
.REG
[3] = BOX_NativeString("");
1914 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1915 once_value_4
= fra
.me
.REG
[3];
1916 register_static_object(&once_value_4
);
1917 } else fra
.me
.REG
[3] = once_value_4
;
1918 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1919 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1920 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1921 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1922 if (!once_value_5
) {
1923 fra
.me
.REG
[0] = BOX_NativeString(":");
1925 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1926 once_value_5
= fra
.me
.REG
[0];
1927 register_static_object(&once_value_5
);
1928 } else fra
.me
.REG
[0] = once_value_5
;
1929 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1930 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1931 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1932 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1934 stack_frame_head
= fra
.me
.prev
;
1937 void OC_analysis___icode_dump___ILoop___dump_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1938 struct {struct stack_frame_t me
;} fra
;
1941 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1942 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1944 fra
.me
.meth
= LOCATE_analysis___icode_dump___ILoop___dump
;
1945 fra
.me
.has_broke
= 0;
1946 fra
.me
.REG_size
= 1;
1947 fra
.me
.nitni_local_ref_head
= NULL
;
1948 fra
.me
.REG
[0] = NIT_NULL
;
1949 fra
.me
.closure_ctx
= closctx_param
;
1950 fra
.me
.closure_funs
= CREG
;
1952 CREG
[0] = clos_fun0
;
1953 /* analysis/icode_dump.nit:264 */
1954 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
1955 stack_frame_head
= fra
.me
.prev
;
1958 static const char LOCATE_analysis___icode_dump___IEscape___dump_intern
[] = "icode_dump::IEscape::(icode_dump::ICode::dump_intern)";
1959 val_t
analysis___icode_dump___IEscape___dump_intern(val_t p0
, val_t p1
){
1960 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1963 static val_t once_value_1
; /* Once value */
1964 static val_t once_value_2
; /* Once value */
1965 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1966 fra
.me
.file
= LOCATE_analysis___icode_dump
;
1968 fra
.me
.meth
= LOCATE_analysis___icode_dump___IEscape___dump_intern
;
1969 fra
.me
.has_broke
= 0;
1970 fra
.me
.REG_size
= 4;
1971 fra
.me
.nitni_local_ref_head
= NULL
;
1972 fra
.me
.REG
[0] = NIT_NULL
;
1973 fra
.me
.REG
[1] = NIT_NULL
;
1974 fra
.me
.REG
[2] = NIT_NULL
;
1975 fra
.me
.REG
[3] = NIT_NULL
;
1978 /* analysis/icode_dump.nit:276 */
1980 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1981 if (!once_value_1
) {
1982 fra
.me
.REG
[3] = BOX_NativeString("ESCAPE ");
1984 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1985 once_value_1
= fra
.me
.REG
[3];
1986 register_static_object(&once_value_1
);
1987 } else fra
.me
.REG
[3] = once_value_1
;
1988 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1989 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1990 fra
.me
.REG
[0] = CALL_icode___icode_base___IEscape___iescape_mark(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1991 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___lab(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1992 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1993 if (!once_value_2
) {
1994 fra
.me
.REG
[0] = BOX_NativeString("");
1996 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1997 once_value_2
= fra
.me
.REG
[0];
1998 register_static_object(&once_value_2
);
1999 } else fra
.me
.REG
[0] = once_value_2
;
2000 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2001 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2002 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2005 stack_frame_head
= fra
.me
.prev
;
2006 return fra
.me
.REG
[2];
2008 static const char LOCATE_analysis___icode_dump___IAbort___dump_intern
[] = "icode_dump::IAbort::(icode_dump::ICode::dump_intern)";
2009 val_t
analysis___icode_dump___IAbort___dump_intern(val_t p0
, val_t p1
){
2010 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2013 static val_t once_value_1
; /* Once value */
2014 static val_t once_value_2
; /* Once value */
2015 static val_t once_value_3
; /* Once value */
2016 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2017 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2019 fra
.me
.meth
= LOCATE_analysis___icode_dump___IAbort___dump_intern
;
2020 fra
.me
.has_broke
= 0;
2021 fra
.me
.REG_size
= 3;
2022 fra
.me
.nitni_local_ref_head
= NULL
;
2023 fra
.me
.REG
[0] = NIT_NULL
;
2024 fra
.me
.REG
[1] = NIT_NULL
;
2025 fra
.me
.REG
[2] = NIT_NULL
;
2028 /* analysis/icode_dump.nit:283 */
2030 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2031 if (!once_value_1
) {
2032 fra
.me
.REG
[2] = BOX_NativeString("ABORT (\"");
2034 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2035 once_value_1
= fra
.me
.REG
[2];
2036 register_static_object(&once_value_1
);
2037 } else fra
.me
.REG
[2] = once_value_1
;
2038 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2039 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2040 fra
.me
.REG
[0] = CALL_icode___icode_base___IAbort___texts(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2041 if (!once_value_2
) {
2042 fra
.me
.REG
[2] = BOX_NativeString("\", \"");
2044 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2045 once_value_2
= fra
.me
.REG
[2];
2046 register_static_object(&once_value_2
);
2047 } else fra
.me
.REG
[2] = once_value_2
;
2048 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2049 fra
.me
.REG
[2] = CALL_standard___string___Collection___join(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
2050 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2051 if (!once_value_3
) {
2052 fra
.me
.REG
[2] = BOX_NativeString("\")");
2054 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2055 once_value_3
= fra
.me
.REG
[2];
2056 register_static_object(&once_value_3
);
2057 } else fra
.me
.REG
[2] = once_value_3
;
2058 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2059 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2060 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2063 stack_frame_head
= fra
.me
.prev
;
2064 return fra
.me
.REG
[1];
2066 static const char LOCATE_analysis___icode_dump___ICall___dump_intern
[] = "icode_dump::ICall::(icode_dump::ICode::dump_intern)";
2067 val_t
analysis___icode_dump___ICall___dump_intern(val_t p0
, val_t p1
){
2068 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2071 static val_t once_value_1
; /* Once value */
2072 static val_t once_value_2
; /* Once value */
2073 static val_t once_value_3
; /* Once value */
2074 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2075 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2077 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICall___dump_intern
;
2078 fra
.me
.has_broke
= 0;
2079 fra
.me
.REG_size
= 4;
2080 fra
.me
.nitni_local_ref_head
= NULL
;
2081 fra
.me
.REG
[0] = NIT_NULL
;
2082 fra
.me
.REG
[1] = NIT_NULL
;
2083 fra
.me
.REG
[2] = NIT_NULL
;
2084 fra
.me
.REG
[3] = NIT_NULL
;
2087 /* analysis/icode_dump.nit:290 */
2089 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2090 if (!once_value_1
) {
2091 fra
.me
.REG
[3] = BOX_NativeString("CALL ");
2093 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2094 once_value_1
= fra
.me
.REG
[3];
2095 register_static_object(&once_value_1
);
2096 } else fra
.me
.REG
[3] = once_value_1
;
2097 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2098 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2099 fra
.me
.REG
[3] = CALL_icode___icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2100 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2101 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2102 if (!once_value_2
) {
2103 fra
.me
.REG
[3] = BOX_NativeString("(");
2105 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2106 once_value_2
= fra
.me
.REG
[3];
2107 register_static_object(&once_value_2
);
2108 } else fra
.me
.REG
[3] = once_value_2
;
2109 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2110 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2111 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2112 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2113 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2114 if (!once_value_3
) {
2115 fra
.me
.REG
[0] = BOX_NativeString(")");
2117 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2118 once_value_3
= fra
.me
.REG
[0];
2119 register_static_object(&once_value_3
);
2120 } else fra
.me
.REG
[0] = once_value_3
;
2121 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2122 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2123 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2126 stack_frame_head
= fra
.me
.prev
;
2127 return fra
.me
.REG
[2];
2129 static const char LOCATE_analysis___icode_dump___INew___dump_intern
[] = "icode_dump::INew::(icode_dump::ICode::dump_intern)";
2130 val_t
analysis___icode_dump___INew___dump_intern(val_t p0
, val_t p1
){
2131 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2134 static val_t once_value_1
; /* Once value */
2135 static val_t once_value_2
; /* Once value */
2136 static val_t once_value_3
; /* Once value */
2137 static val_t once_value_4
; /* Once value */
2138 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2139 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2141 fra
.me
.meth
= LOCATE_analysis___icode_dump___INew___dump_intern
;
2142 fra
.me
.has_broke
= 0;
2143 fra
.me
.REG_size
= 4;
2144 fra
.me
.nitni_local_ref_head
= NULL
;
2145 fra
.me
.REG
[0] = NIT_NULL
;
2146 fra
.me
.REG
[1] = NIT_NULL
;
2147 fra
.me
.REG
[2] = NIT_NULL
;
2148 fra
.me
.REG
[3] = NIT_NULL
;
2151 /* analysis/icode_dump.nit:297 */
2153 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2154 if (!once_value_1
) {
2155 fra
.me
.REG
[3] = BOX_NativeString("NEW ");
2157 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2158 once_value_1
= fra
.me
.REG
[3];
2159 register_static_object(&once_value_1
);
2160 } else fra
.me
.REG
[3] = once_value_1
;
2161 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2162 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2163 fra
.me
.REG
[3] = CALL_icode___icode_base___INew___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2164 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2165 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2166 if (!once_value_2
) {
2167 fra
.me
.REG
[3] = BOX_NativeString(".");
2169 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2170 once_value_2
= fra
.me
.REG
[3];
2171 register_static_object(&once_value_2
);
2172 } else fra
.me
.REG
[3] = once_value_2
;
2173 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2174 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2175 fra
.me
.REG
[3] = CALL_icode___icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2176 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2177 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2178 if (!once_value_3
) {
2179 fra
.me
.REG
[3] = BOX_NativeString("(");
2181 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2182 once_value_3
= fra
.me
.REG
[3];
2183 register_static_object(&once_value_3
);
2184 } else fra
.me
.REG
[3] = once_value_3
;
2185 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2186 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2187 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2188 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2189 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2190 if (!once_value_4
) {
2191 fra
.me
.REG
[0] = BOX_NativeString(")");
2193 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2194 once_value_4
= fra
.me
.REG
[0];
2195 register_static_object(&once_value_4
);
2196 } else fra
.me
.REG
[0] = once_value_4
;
2197 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2198 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2199 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2202 stack_frame_head
= fra
.me
.prev
;
2203 return fra
.me
.REG
[2];
2205 static const char LOCATE_analysis___icode_dump___ISuper___dump_intern
[] = "icode_dump::ISuper::(icode_dump::ICode::dump_intern)";
2206 val_t
analysis___icode_dump___ISuper___dump_intern(val_t p0
, val_t p1
){
2207 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2210 static val_t once_value_1
; /* Once value */
2211 static val_t once_value_2
; /* Once value */
2212 static val_t once_value_3
; /* Once value */
2213 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2214 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2216 fra
.me
.meth
= LOCATE_analysis___icode_dump___ISuper___dump_intern
;
2217 fra
.me
.has_broke
= 0;
2218 fra
.me
.REG_size
= 4;
2219 fra
.me
.nitni_local_ref_head
= NULL
;
2220 fra
.me
.REG
[0] = NIT_NULL
;
2221 fra
.me
.REG
[1] = NIT_NULL
;
2222 fra
.me
.REG
[2] = NIT_NULL
;
2223 fra
.me
.REG
[3] = NIT_NULL
;
2226 /* analysis/icode_dump.nit:304 */
2228 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2229 if (!once_value_1
) {
2230 fra
.me
.REG
[3] = BOX_NativeString("SUPER ");
2232 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2233 once_value_1
= fra
.me
.REG
[3];
2234 register_static_object(&once_value_1
);
2235 } else fra
.me
.REG
[3] = once_value_1
;
2236 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2237 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2238 fra
.me
.REG
[3] = CALL_icode___icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2239 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2240 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2241 if (!once_value_2
) {
2242 fra
.me
.REG
[3] = BOX_NativeString("(");
2244 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2245 once_value_2
= fra
.me
.REG
[3];
2246 register_static_object(&once_value_2
);
2247 } else fra
.me
.REG
[3] = once_value_2
;
2248 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2249 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2250 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2251 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2252 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2253 if (!once_value_3
) {
2254 fra
.me
.REG
[0] = BOX_NativeString(")");
2256 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2257 once_value_3
= fra
.me
.REG
[0];
2258 register_static_object(&once_value_3
);
2259 } else fra
.me
.REG
[0] = once_value_3
;
2260 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2261 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2262 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2265 stack_frame_head
= fra
.me
.prev
;
2266 return fra
.me
.REG
[2];
2268 static const char LOCATE_analysis___icode_dump___IStaticCall___dump_intern
[] = "icode_dump::IStaticCall::(icode_dump::ICode::dump_intern)";
2269 val_t
analysis___icode_dump___IStaticCall___dump_intern(val_t p0
, val_t p1
){
2270 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2273 static val_t once_value_1
; /* Once value */
2274 static val_t once_value_2
; /* Once value */
2275 static val_t once_value_3
; /* Once value */
2276 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2277 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2279 fra
.me
.meth
= LOCATE_analysis___icode_dump___IStaticCall___dump_intern
;
2280 fra
.me
.has_broke
= 0;
2281 fra
.me
.REG_size
= 4;
2282 fra
.me
.nitni_local_ref_head
= NULL
;
2283 fra
.me
.REG
[0] = NIT_NULL
;
2284 fra
.me
.REG
[1] = NIT_NULL
;
2285 fra
.me
.REG
[2] = NIT_NULL
;
2286 fra
.me
.REG
[3] = NIT_NULL
;
2289 /* analysis/icode_dump.nit:311 */
2291 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2292 if (!once_value_1
) {
2293 fra
.me
.REG
[3] = BOX_NativeString("STATIC_CALL ");
2294 REGB0
= TAG_Int(12);
2295 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2296 once_value_1
= fra
.me
.REG
[3];
2297 register_static_object(&once_value_1
);
2298 } else fra
.me
.REG
[3] = once_value_1
;
2299 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2300 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2301 fra
.me
.REG
[3] = CALL_icode___icode_base___IAbsCall___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2302 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2303 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2304 if (!once_value_2
) {
2305 fra
.me
.REG
[3] = BOX_NativeString("(");
2307 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2308 once_value_2
= fra
.me
.REG
[3];
2309 register_static_object(&once_value_2
);
2310 } else fra
.me
.REG
[3] = once_value_2
;
2311 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2312 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2313 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2314 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2315 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2316 if (!once_value_3
) {
2317 fra
.me
.REG
[0] = BOX_NativeString(")");
2319 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2320 once_value_3
= fra
.me
.REG
[0];
2321 register_static_object(&once_value_3
);
2322 } else fra
.me
.REG
[0] = once_value_3
;
2323 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2324 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2325 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2328 stack_frame_head
= fra
.me
.prev
;
2329 return fra
.me
.REG
[2];
2331 static const char LOCATE_analysis___icode_dump___IAllocateInstance___dump_intern
[] = "icode_dump::IAllocateInstance::(icode_dump::ICode::dump_intern)";
2332 val_t
analysis___icode_dump___IAllocateInstance___dump_intern(val_t p0
, val_t p1
){
2333 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2336 static val_t once_value_1
; /* Once value */
2337 static val_t once_value_2
; /* Once value */
2338 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2339 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2341 fra
.me
.meth
= LOCATE_analysis___icode_dump___IAllocateInstance___dump_intern
;
2342 fra
.me
.has_broke
= 0;
2343 fra
.me
.REG_size
= 3;
2344 fra
.me
.nitni_local_ref_head
= NULL
;
2345 fra
.me
.REG
[0] = NIT_NULL
;
2346 fra
.me
.REG
[1] = NIT_NULL
;
2347 fra
.me
.REG
[2] = NIT_NULL
;
2350 /* analysis/icode_dump.nit:318 */
2352 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2353 if (!once_value_1
) {
2354 fra
.me
.REG
[2] = BOX_NativeString("ALLOCATE NEW_");
2355 REGB0
= TAG_Int(13);
2356 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2357 once_value_1
= fra
.me
.REG
[2];
2358 register_static_object(&once_value_1
);
2359 } else fra
.me
.REG
[2] = once_value_1
;
2360 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2361 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2362 fra
.me
.REG
[0] = CALL_icode___icode_base___IAllocateInstance___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2363 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2364 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2365 if (!once_value_2
) {
2366 fra
.me
.REG
[0] = BOX_NativeString("");
2368 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2369 once_value_2
= fra
.me
.REG
[0];
2370 register_static_object(&once_value_2
);
2371 } else fra
.me
.REG
[0] = once_value_2
;
2372 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2373 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2374 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2377 stack_frame_head
= fra
.me
.prev
;
2378 return fra
.me
.REG
[1];
2380 static const char LOCATE_analysis___icode_dump___ICheckInstance___dump_intern
[] = "icode_dump::ICheckInstance::(icode_dump::ICode::dump_intern)";
2381 val_t
analysis___icode_dump___ICheckInstance___dump_intern(val_t p0
, val_t p1
){
2382 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2385 static val_t once_value_1
; /* Once value */
2386 static val_t once_value_2
; /* Once value */
2387 static val_t once_value_3
; /* Once value */
2388 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2389 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2391 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICheckInstance___dump_intern
;
2392 fra
.me
.has_broke
= 0;
2393 fra
.me
.REG_size
= 4;
2394 fra
.me
.nitni_local_ref_head
= NULL
;
2395 fra
.me
.REG
[0] = NIT_NULL
;
2396 fra
.me
.REG
[1] = NIT_NULL
;
2397 fra
.me
.REG
[2] = NIT_NULL
;
2398 fra
.me
.REG
[3] = NIT_NULL
;
2401 /* analysis/icode_dump.nit:325 */
2403 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2404 if (!once_value_1
) {
2405 fra
.me
.REG
[3] = BOX_NativeString("CHECK_INSTANCE CHECKNEW_");
2406 REGB0
= TAG_Int(24);
2407 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2408 once_value_1
= fra
.me
.REG
[3];
2409 register_static_object(&once_value_1
);
2410 } else fra
.me
.REG
[3] = once_value_1
;
2411 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2412 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2413 fra
.me
.REG
[3] = CALL_icode___icode_base___ICheckInstance___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2414 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2415 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2416 if (!once_value_2
) {
2417 fra
.me
.REG
[3] = BOX_NativeString("(");
2419 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2420 once_value_2
= fra
.me
.REG
[3];
2421 register_static_object(&once_value_2
);
2422 } else fra
.me
.REG
[3] = once_value_2
;
2423 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2424 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2425 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2426 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2427 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2428 if (!once_value_3
) {
2429 fra
.me
.REG
[0] = BOX_NativeString(")");
2431 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2432 once_value_3
= fra
.me
.REG
[0];
2433 register_static_object(&once_value_3
);
2434 } else fra
.me
.REG
[0] = once_value_3
;
2435 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2436 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2437 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2440 stack_frame_head
= fra
.me
.prev
;
2441 return fra
.me
.REG
[2];
2443 static const char LOCATE_analysis___icode_dump___IInitAttributes___dump_intern
[] = "icode_dump::IInitAttributes::(icode_dump::ICode::dump_intern)";
2444 val_t
analysis___icode_dump___IInitAttributes___dump_intern(val_t p0
, val_t p1
){
2445 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2448 static val_t once_value_1
; /* Once value */
2449 static val_t once_value_2
; /* Once value */
2450 static val_t once_value_3
; /* Once value */
2451 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2452 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2454 fra
.me
.meth
= LOCATE_analysis___icode_dump___IInitAttributes___dump_intern
;
2455 fra
.me
.has_broke
= 0;
2456 fra
.me
.REG_size
= 4;
2457 fra
.me
.nitni_local_ref_head
= NULL
;
2458 fra
.me
.REG
[0] = NIT_NULL
;
2459 fra
.me
.REG
[1] = NIT_NULL
;
2460 fra
.me
.REG
[2] = NIT_NULL
;
2461 fra
.me
.REG
[3] = NIT_NULL
;
2464 /* analysis/icode_dump.nit:332 */
2466 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2467 if (!once_value_1
) {
2468 fra
.me
.REG
[3] = BOX_NativeString("INIT_ATTRIBUTES INIT_ATTRIBUTES_");
2469 REGB0
= TAG_Int(32);
2470 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2471 once_value_1
= fra
.me
.REG
[3];
2472 register_static_object(&once_value_1
);
2473 } else fra
.me
.REG
[3] = once_value_1
;
2474 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2475 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2476 fra
.me
.REG
[3] = CALL_icode___icode_base___IInitAttributes___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2477 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2478 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2479 if (!once_value_2
) {
2480 fra
.me
.REG
[3] = BOX_NativeString("(");
2482 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2483 once_value_2
= fra
.me
.REG
[3];
2484 register_static_object(&once_value_2
);
2485 } else fra
.me
.REG
[3] = once_value_2
;
2486 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2487 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2488 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2489 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2490 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2491 if (!once_value_3
) {
2492 fra
.me
.REG
[0] = BOX_NativeString(")");
2494 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2495 once_value_3
= fra
.me
.REG
[0];
2496 register_static_object(&once_value_3
);
2497 } else fra
.me
.REG
[0] = once_value_3
;
2498 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2499 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2500 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2503 stack_frame_head
= fra
.me
.prev
;
2504 return fra
.me
.REG
[2];
2506 static const char LOCATE_analysis___icode_dump___IClosCall___dump_intern
[] = "icode_dump::IClosCall::(icode_dump::ICode::dump_intern)";
2507 val_t
analysis___icode_dump___IClosCall___dump_intern(val_t p0
, val_t p1
){
2508 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2511 static val_t once_value_1
; /* Once value */
2512 static val_t once_value_2
; /* Once value */
2513 static val_t once_value_3
; /* Once value */
2514 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2515 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2517 fra
.me
.meth
= LOCATE_analysis___icode_dump___IClosCall___dump_intern
;
2518 fra
.me
.has_broke
= 0;
2519 fra
.me
.REG_size
= 4;
2520 fra
.me
.nitni_local_ref_head
= NULL
;
2521 fra
.me
.REG
[0] = NIT_NULL
;
2522 fra
.me
.REG
[1] = NIT_NULL
;
2523 fra
.me
.REG
[2] = NIT_NULL
;
2524 fra
.me
.REG
[3] = NIT_NULL
;
2527 /* analysis/icode_dump.nit:339 */
2529 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2530 if (!once_value_1
) {
2531 fra
.me
.REG
[3] = BOX_NativeString("CLOS_CALL ");
2532 REGB0
= TAG_Int(10);
2533 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2534 once_value_1
= fra
.me
.REG
[3];
2535 register_static_object(&once_value_1
);
2536 } else fra
.me
.REG
[3] = once_value_1
;
2537 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2538 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2539 fra
.me
.REG
[3] = CALL_icode___icode_base___IClosCall___closure_decl(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2540 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2541 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2542 if (!once_value_2
) {
2543 fra
.me
.REG
[3] = BOX_NativeString("(");
2545 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2546 once_value_2
= fra
.me
.REG
[3];
2547 register_static_object(&once_value_2
);
2548 } else fra
.me
.REG
[3] = once_value_2
;
2549 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2550 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2551 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2552 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2553 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2554 if (!once_value_3
) {
2555 fra
.me
.REG
[0] = BOX_NativeString(")");
2557 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2558 once_value_3
= fra
.me
.REG
[0];
2559 register_static_object(&once_value_3
);
2560 } else fra
.me
.REG
[0] = once_value_3
;
2561 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2562 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2563 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2566 stack_frame_head
= fra
.me
.prev
;
2567 return fra
.me
.REG
[2];
2569 static const char LOCATE_analysis___icode_dump___IAttrRead___dump_intern
[] = "icode_dump::IAttrRead::(icode_dump::ICode::dump_intern)";
2570 val_t
analysis___icode_dump___IAttrRead___dump_intern(val_t p0
, val_t p1
){
2571 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2574 static val_t once_value_1
; /* Once value */
2575 static val_t once_value_2
; /* Once value */
2576 static val_t once_value_3
; /* Once value */
2577 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2578 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2580 fra
.me
.meth
= LOCATE_analysis___icode_dump___IAttrRead___dump_intern
;
2581 fra
.me
.has_broke
= 0;
2582 fra
.me
.REG_size
= 4;
2583 fra
.me
.nitni_local_ref_head
= NULL
;
2584 fra
.me
.REG
[0] = NIT_NULL
;
2585 fra
.me
.REG
[1] = NIT_NULL
;
2586 fra
.me
.REG
[2] = NIT_NULL
;
2587 fra
.me
.REG
[3] = NIT_NULL
;
2590 /* analysis/icode_dump.nit:346 */
2592 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2593 if (!once_value_1
) {
2594 fra
.me
.REG
[3] = BOX_NativeString("ATTR_READ ");
2595 REGB0
= TAG_Int(10);
2596 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2597 once_value_1
= fra
.me
.REG
[3];
2598 register_static_object(&once_value_1
);
2599 } else fra
.me
.REG
[3] = once_value_1
;
2600 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2601 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2602 fra
.me
.REG
[3] = CALL_icode___icode_base___IAttrRead___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2603 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2604 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2605 if (!once_value_2
) {
2606 fra
.me
.REG
[3] = BOX_NativeString("(");
2608 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2609 once_value_2
= fra
.me
.REG
[3];
2610 register_static_object(&once_value_2
);
2611 } else fra
.me
.REG
[3] = once_value_2
;
2612 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2613 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2614 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2615 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2616 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2617 if (!once_value_3
) {
2618 fra
.me
.REG
[0] = BOX_NativeString(")");
2620 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2621 once_value_3
= fra
.me
.REG
[0];
2622 register_static_object(&once_value_3
);
2623 } else fra
.me
.REG
[0] = once_value_3
;
2624 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2625 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2626 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2629 stack_frame_head
= fra
.me
.prev
;
2630 return fra
.me
.REG
[2];
2632 static const char LOCATE_analysis___icode_dump___IAttrWrite___dump_intern
[] = "icode_dump::IAttrWrite::(icode_dump::ICode::dump_intern)";
2633 val_t
analysis___icode_dump___IAttrWrite___dump_intern(val_t p0
, val_t p1
){
2634 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2637 static val_t once_value_1
; /* Once value */
2638 static val_t once_value_2
; /* Once value */
2639 static val_t once_value_3
; /* Once value */
2640 static val_t once_value_4
; /* Once value */
2641 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2642 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2644 fra
.me
.meth
= LOCATE_analysis___icode_dump___IAttrWrite___dump_intern
;
2645 fra
.me
.has_broke
= 0;
2646 fra
.me
.REG_size
= 4;
2647 fra
.me
.nitni_local_ref_head
= NULL
;
2648 fra
.me
.REG
[0] = NIT_NULL
;
2649 fra
.me
.REG
[1] = NIT_NULL
;
2650 fra
.me
.REG
[2] = NIT_NULL
;
2651 fra
.me
.REG
[3] = NIT_NULL
;
2654 /* analysis/icode_dump.nit:353 */
2656 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2657 if (!once_value_1
) {
2658 fra
.me
.REG
[3] = BOX_NativeString("ATTR_WRITE ");
2659 REGB0
= TAG_Int(11);
2660 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2661 once_value_1
= fra
.me
.REG
[3];
2662 register_static_object(&once_value_1
);
2663 } else fra
.me
.REG
[3] = once_value_1
;
2664 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2665 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2666 fra
.me
.REG
[3] = CALL_icode___icode_base___IAttrWrite___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2667 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2668 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2669 if (!once_value_2
) {
2670 fra
.me
.REG
[3] = BOX_NativeString("(");
2672 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2673 once_value_2
= fra
.me
.REG
[3];
2674 register_static_object(&once_value_2
);
2675 } else fra
.me
.REG
[3] = once_value_2
;
2676 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2677 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2678 fra
.me
.REG
[3] = CALL_icode___icode_base___ICode2___expr1(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2679 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2680 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2681 if (!once_value_3
) {
2682 fra
.me
.REG
[3] = BOX_NativeString(") := ");
2684 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2685 once_value_3
= fra
.me
.REG
[3];
2686 register_static_object(&once_value_3
);
2687 } else fra
.me
.REG
[3] = once_value_3
;
2688 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2689 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2690 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode2___expr2(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2691 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2692 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2693 if (!once_value_4
) {
2694 fra
.me
.REG
[0] = BOX_NativeString("");
2696 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2697 once_value_4
= fra
.me
.REG
[0];
2698 register_static_object(&once_value_4
);
2699 } else fra
.me
.REG
[0] = once_value_4
;
2700 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2701 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2702 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2705 stack_frame_head
= fra
.me
.prev
;
2706 return fra
.me
.REG
[2];
2708 static const char LOCATE_analysis___icode_dump___IAttrIsset___dump_intern
[] = "icode_dump::IAttrIsset::(icode_dump::ICode::dump_intern)";
2709 val_t
analysis___icode_dump___IAttrIsset___dump_intern(val_t p0
, val_t p1
){
2710 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2713 static val_t once_value_1
; /* Once value */
2714 static val_t once_value_2
; /* Once value */
2715 static val_t once_value_3
; /* Once value */
2716 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2717 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2719 fra
.me
.meth
= LOCATE_analysis___icode_dump___IAttrIsset___dump_intern
;
2720 fra
.me
.has_broke
= 0;
2721 fra
.me
.REG_size
= 4;
2722 fra
.me
.nitni_local_ref_head
= NULL
;
2723 fra
.me
.REG
[0] = NIT_NULL
;
2724 fra
.me
.REG
[1] = NIT_NULL
;
2725 fra
.me
.REG
[2] = NIT_NULL
;
2726 fra
.me
.REG
[3] = NIT_NULL
;
2729 /* analysis/icode_dump.nit:360 */
2731 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2732 if (!once_value_1
) {
2733 fra
.me
.REG
[3] = BOX_NativeString("ATTR_ISSET ");
2734 REGB0
= TAG_Int(11);
2735 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2736 once_value_1
= fra
.me
.REG
[3];
2737 register_static_object(&once_value_1
);
2738 } else fra
.me
.REG
[3] = once_value_1
;
2739 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2740 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2741 fra
.me
.REG
[3] = CALL_icode___icode_base___IAttrIsset___property(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2742 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2743 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2744 if (!once_value_2
) {
2745 fra
.me
.REG
[3] = BOX_NativeString("(");
2747 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2748 once_value_2
= fra
.me
.REG
[3];
2749 register_static_object(&once_value_2
);
2750 } else fra
.me
.REG
[3] = once_value_2
;
2751 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2752 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2753 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2754 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2755 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2756 if (!once_value_3
) {
2757 fra
.me
.REG
[0] = BOX_NativeString(")");
2759 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2760 once_value_3
= fra
.me
.REG
[0];
2761 register_static_object(&once_value_3
);
2762 } else fra
.me
.REG
[0] = once_value_3
;
2763 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2764 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2765 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2768 stack_frame_head
= fra
.me
.prev
;
2769 return fra
.me
.REG
[2];
2771 static const char LOCATE_analysis___icode_dump___ITypeCheck___dump_intern
[] = "icode_dump::ITypeCheck::(icode_dump::ICode::dump_intern)";
2772 val_t
analysis___icode_dump___ITypeCheck___dump_intern(val_t p0
, val_t p1
){
2773 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2776 static val_t once_value_1
; /* Once value */
2777 static val_t once_value_2
; /* Once value */
2778 static val_t once_value_3
; /* Once value */
2779 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2780 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2782 fra
.me
.meth
= LOCATE_analysis___icode_dump___ITypeCheck___dump_intern
;
2783 fra
.me
.has_broke
= 0;
2784 fra
.me
.REG_size
= 4;
2785 fra
.me
.nitni_local_ref_head
= NULL
;
2786 fra
.me
.REG
[0] = NIT_NULL
;
2787 fra
.me
.REG
[1] = NIT_NULL
;
2788 fra
.me
.REG
[2] = NIT_NULL
;
2789 fra
.me
.REG
[3] = NIT_NULL
;
2792 /* analysis/icode_dump.nit:367 */
2794 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2795 if (!once_value_1
) {
2796 fra
.me
.REG
[3] = BOX_NativeString("CHECKTYPE ");
2797 REGB0
= TAG_Int(10);
2798 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2799 once_value_1
= fra
.me
.REG
[3];
2800 register_static_object(&once_value_1
);
2801 } else fra
.me
.REG
[3] = once_value_1
;
2802 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2803 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2804 fra
.me
.REG
[3] = CALL_icode___icode_base___ICode2___expr2(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2805 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2806 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2807 if (!once_value_2
) {
2808 fra
.me
.REG
[3] = BOX_NativeString(" isa ");
2810 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2811 once_value_2
= fra
.me
.REG
[3];
2812 register_static_object(&once_value_2
);
2813 } else fra
.me
.REG
[3] = once_value_2
;
2814 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2815 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2816 fra
.me
.REG
[0] = CALL_icode___icode_base___ITypeCheck___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2817 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2818 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2819 if (!once_value_3
) {
2820 fra
.me
.REG
[0] = BOX_NativeString("");
2822 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2823 once_value_3
= fra
.me
.REG
[0];
2824 register_static_object(&once_value_3
);
2825 } else fra
.me
.REG
[0] = once_value_3
;
2826 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2827 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2828 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2831 stack_frame_head
= fra
.me
.prev
;
2832 return fra
.me
.REG
[2];
2834 static const char LOCATE_analysis___icode_dump___INative___dump_intern
[] = "icode_dump::INative::(icode_dump::ICode::dump_intern)";
2835 val_t
analysis___icode_dump___INative___dump_intern(val_t p0
, val_t p1
){
2836 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2839 static val_t once_value_1
; /* Once value */
2840 static val_t once_value_2
; /* Once value */
2841 static val_t once_value_3
; /* Once value */
2842 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2843 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2845 fra
.me
.meth
= LOCATE_analysis___icode_dump___INative___dump_intern
;
2846 fra
.me
.has_broke
= 0;
2847 fra
.me
.REG_size
= 4;
2848 fra
.me
.nitni_local_ref_head
= NULL
;
2849 fra
.me
.REG
[0] = NIT_NULL
;
2850 fra
.me
.REG
[1] = NIT_NULL
;
2851 fra
.me
.REG
[2] = NIT_NULL
;
2852 fra
.me
.REG
[3] = NIT_NULL
;
2855 /* analysis/icode_dump.nit:374 */
2857 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2858 if (!once_value_1
) {
2859 fra
.me
.REG
[3] = BOX_NativeString("NATIVE \"");
2861 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2862 once_value_1
= fra
.me
.REG
[3];
2863 register_static_object(&once_value_1
);
2864 } else fra
.me
.REG
[3] = once_value_1
;
2865 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2866 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2867 fra
.me
.REG
[3] = CALL_icode___icode_base___INative___method(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2868 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2869 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2870 if (!once_value_2
) {
2871 fra
.me
.REG
[3] = BOX_NativeString("\"(");
2873 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
2874 once_value_2
= fra
.me
.REG
[3];
2875 register_static_object(&once_value_2
);
2876 } else fra
.me
.REG
[3] = once_value_2
;
2877 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2878 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2879 fra
.me
.REG
[0] = CALL_icode___icode_base___ICodeN___exprs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2880 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2881 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2882 if (!once_value_3
) {
2883 fra
.me
.REG
[0] = BOX_NativeString(")");
2885 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2886 once_value_3
= fra
.me
.REG
[0];
2887 register_static_object(&once_value_3
);
2888 } else fra
.me
.REG
[0] = once_value_3
;
2889 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2890 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2891 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2894 stack_frame_head
= fra
.me
.prev
;
2895 return fra
.me
.REG
[2];
2897 static const char LOCATE_analysis___icode_dump___IIntValue___dump_intern
[] = "icode_dump::IIntValue::(icode_dump::ICode::dump_intern)";
2898 val_t
analysis___icode_dump___IIntValue___dump_intern(val_t p0
, val_t p1
){
2899 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2902 static val_t once_value_1
; /* Once value */
2903 static val_t once_value_2
; /* Once value */
2904 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2905 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2907 fra
.me
.meth
= LOCATE_analysis___icode_dump___IIntValue___dump_intern
;
2908 fra
.me
.has_broke
= 0;
2909 fra
.me
.REG_size
= 3;
2910 fra
.me
.nitni_local_ref_head
= NULL
;
2911 fra
.me
.REG
[0] = NIT_NULL
;
2912 fra
.me
.REG
[1] = NIT_NULL
;
2913 fra
.me
.REG
[2] = NIT_NULL
;
2916 /* analysis/icode_dump.nit:381 */
2918 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2919 if (!once_value_1
) {
2920 fra
.me
.REG
[2] = BOX_NativeString("INTVALUE ");
2922 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2923 once_value_1
= fra
.me
.REG
[2];
2924 register_static_object(&once_value_1
);
2925 } else fra
.me
.REG
[2] = once_value_1
;
2926 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2927 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2928 fra
.me
.REG
[0] = CALL_icode___icode_base___IIntValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2929 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2930 if (!once_value_2
) {
2931 fra
.me
.REG
[0] = BOX_NativeString("");
2933 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2934 once_value_2
= fra
.me
.REG
[0];
2935 register_static_object(&once_value_2
);
2936 } else fra
.me
.REG
[0] = once_value_2
;
2937 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2938 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2939 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2942 stack_frame_head
= fra
.me
.prev
;
2943 return fra
.me
.REG
[1];
2945 static const char LOCATE_analysis___icode_dump___IBoolValue___dump_intern
[] = "icode_dump::IBoolValue::(icode_dump::ICode::dump_intern)";
2946 val_t
analysis___icode_dump___IBoolValue___dump_intern(val_t p0
, val_t p1
){
2947 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2950 static val_t once_value_1
; /* Once value */
2951 static val_t once_value_2
; /* Once value */
2952 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2953 fra
.me
.file
= LOCATE_analysis___icode_dump
;
2955 fra
.me
.meth
= LOCATE_analysis___icode_dump___IBoolValue___dump_intern
;
2956 fra
.me
.has_broke
= 0;
2957 fra
.me
.REG_size
= 3;
2958 fra
.me
.nitni_local_ref_head
= NULL
;
2959 fra
.me
.REG
[0] = NIT_NULL
;
2960 fra
.me
.REG
[1] = NIT_NULL
;
2961 fra
.me
.REG
[2] = NIT_NULL
;
2964 /* analysis/icode_dump.nit:388 */
2966 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2967 if (!once_value_1
) {
2968 fra
.me
.REG
[2] = BOX_NativeString("BOOLVALUE ");
2969 REGB0
= TAG_Int(10);
2970 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
2971 once_value_1
= fra
.me
.REG
[2];
2972 register_static_object(&once_value_1
);
2973 } else fra
.me
.REG
[2] = once_value_1
;
2974 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2975 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2976 REGB0
= CALL_icode___icode_base___IBoolValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2977 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
2978 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2979 if (!once_value_2
) {
2980 fra
.me
.REG
[0] = BOX_NativeString("");
2982 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2983 once_value_2
= fra
.me
.REG
[0];
2984 register_static_object(&once_value_2
);
2985 } else fra
.me
.REG
[0] = once_value_2
;
2986 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2987 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2988 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2991 stack_frame_head
= fra
.me
.prev
;
2992 return fra
.me
.REG
[1];
2994 static const char LOCATE_analysis___icode_dump___IStringValue___dump_intern
[] = "icode_dump::IStringValue::(icode_dump::ICode::dump_intern)";
2995 val_t
analysis___icode_dump___IStringValue___dump_intern(val_t p0
, val_t p1
){
2996 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2999 static val_t once_value_1
; /* Once value */
3000 static val_t once_value_2
; /* Once value */
3001 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3002 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3004 fra
.me
.meth
= LOCATE_analysis___icode_dump___IStringValue___dump_intern
;
3005 fra
.me
.has_broke
= 0;
3006 fra
.me
.REG_size
= 3;
3007 fra
.me
.nitni_local_ref_head
= NULL
;
3008 fra
.me
.REG
[0] = NIT_NULL
;
3009 fra
.me
.REG
[1] = NIT_NULL
;
3010 fra
.me
.REG
[2] = NIT_NULL
;
3013 /* analysis/icode_dump.nit:395 */
3015 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3016 if (!once_value_1
) {
3017 fra
.me
.REG
[2] = BOX_NativeString("STRINGVALUE ");
3018 REGB0
= TAG_Int(12);
3019 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3020 once_value_1
= fra
.me
.REG
[2];
3021 register_static_object(&once_value_1
);
3022 } else fra
.me
.REG
[2] = once_value_1
;
3023 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3024 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3025 fra
.me
.REG
[0] = CALL_icode___icode_base___IStringValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3026 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3027 if (!once_value_2
) {
3028 fra
.me
.REG
[0] = BOX_NativeString("");
3030 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3031 once_value_2
= fra
.me
.REG
[0];
3032 register_static_object(&once_value_2
);
3033 } else fra
.me
.REG
[0] = once_value_2
;
3034 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3035 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3036 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3039 stack_frame_head
= fra
.me
.prev
;
3040 return fra
.me
.REG
[1];
3042 static const char LOCATE_analysis___icode_dump___ICharValue___dump_intern
[] = "icode_dump::ICharValue::(icode_dump::ICode::dump_intern)";
3043 val_t
analysis___icode_dump___ICharValue___dump_intern(val_t p0
, val_t p1
){
3044 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3047 static val_t once_value_1
; /* Once value */
3048 static val_t once_value_2
; /* Once value */
3049 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3050 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3052 fra
.me
.meth
= LOCATE_analysis___icode_dump___ICharValue___dump_intern
;
3053 fra
.me
.has_broke
= 0;
3054 fra
.me
.REG_size
= 3;
3055 fra
.me
.nitni_local_ref_head
= NULL
;
3056 fra
.me
.REG
[0] = NIT_NULL
;
3057 fra
.me
.REG
[1] = NIT_NULL
;
3058 fra
.me
.REG
[2] = NIT_NULL
;
3061 /* analysis/icode_dump.nit:402 */
3063 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3064 if (!once_value_1
) {
3065 fra
.me
.REG
[2] = BOX_NativeString("CHARVALUE ");
3066 REGB0
= TAG_Int(10);
3067 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3068 once_value_1
= fra
.me
.REG
[2];
3069 register_static_object(&once_value_1
);
3070 } else fra
.me
.REG
[2] = once_value_1
;
3071 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3072 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3073 fra
.me
.REG
[0] = CALL_icode___icode_base___ICharValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3074 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3075 if (!once_value_2
) {
3076 fra
.me
.REG
[0] = BOX_NativeString("");
3078 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3079 once_value_2
= fra
.me
.REG
[0];
3080 register_static_object(&once_value_2
);
3081 } else fra
.me
.REG
[0] = once_value_2
;
3082 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3083 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3084 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3087 stack_frame_head
= fra
.me
.prev
;
3088 return fra
.me
.REG
[1];
3090 static const char LOCATE_analysis___icode_dump___IFloatValue___dump_intern
[] = "icode_dump::IFloatValue::(icode_dump::ICode::dump_intern)";
3091 val_t
analysis___icode_dump___IFloatValue___dump_intern(val_t p0
, val_t p1
){
3092 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3095 static val_t once_value_1
; /* Once value */
3096 static val_t once_value_2
; /* Once value */
3097 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3098 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3100 fra
.me
.meth
= LOCATE_analysis___icode_dump___IFloatValue___dump_intern
;
3101 fra
.me
.has_broke
= 0;
3102 fra
.me
.REG_size
= 3;
3103 fra
.me
.nitni_local_ref_head
= NULL
;
3104 fra
.me
.REG
[0] = NIT_NULL
;
3105 fra
.me
.REG
[1] = NIT_NULL
;
3106 fra
.me
.REG
[2] = NIT_NULL
;
3109 /* analysis/icode_dump.nit:409 */
3111 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3112 if (!once_value_1
) {
3113 fra
.me
.REG
[2] = BOX_NativeString("FLOATVALUE ");
3114 REGB0
= TAG_Int(11);
3115 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3116 once_value_1
= fra
.me
.REG
[2];
3117 register_static_object(&once_value_1
);
3118 } else fra
.me
.REG
[2] = once_value_1
;
3119 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3120 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3121 fra
.me
.REG
[0] = CALL_icode___icode_base___IFloatValue___value(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3122 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3123 if (!once_value_2
) {
3124 fra
.me
.REG
[0] = BOX_NativeString("");
3126 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3127 once_value_2
= fra
.me
.REG
[0];
3128 register_static_object(&once_value_2
);
3129 } else fra
.me
.REG
[0] = once_value_2
;
3130 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3131 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3132 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3135 stack_frame_head
= fra
.me
.prev
;
3136 return fra
.me
.REG
[1];
3138 static const char LOCATE_analysis___icode_dump___IMove___dump_intern
[] = "icode_dump::IMove::(icode_dump::ICode::dump_intern)";
3139 val_t
analysis___icode_dump___IMove___dump_intern(val_t p0
, val_t p1
){
3140 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3143 static val_t once_value_1
; /* Once value */
3144 static val_t once_value_2
; /* Once value */
3145 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3146 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3148 fra
.me
.meth
= LOCATE_analysis___icode_dump___IMove___dump_intern
;
3149 fra
.me
.has_broke
= 0;
3150 fra
.me
.REG_size
= 4;
3151 fra
.me
.nitni_local_ref_head
= NULL
;
3152 fra
.me
.REG
[0] = NIT_NULL
;
3153 fra
.me
.REG
[1] = NIT_NULL
;
3154 fra
.me
.REG
[2] = NIT_NULL
;
3155 fra
.me
.REG
[3] = NIT_NULL
;
3158 /* analysis/icode_dump.nit:416 */
3160 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3161 if (!once_value_1
) {
3162 fra
.me
.REG
[3] = BOX_NativeString("");
3164 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3165 once_value_1
= fra
.me
.REG
[3];
3166 register_static_object(&once_value_1
);
3167 } else fra
.me
.REG
[3] = once_value_1
;
3168 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3169 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3170 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3171 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3172 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3173 if (!once_value_2
) {
3174 fra
.me
.REG
[0] = BOX_NativeString("");
3176 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3177 once_value_2
= fra
.me
.REG
[0];
3178 register_static_object(&once_value_2
);
3179 } else fra
.me
.REG
[0] = once_value_2
;
3180 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3181 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3182 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3185 stack_frame_head
= fra
.me
.prev
;
3186 return fra
.me
.REG
[2];
3188 static const char LOCATE_analysis___icode_dump___IIs___dump_intern
[] = "icode_dump::IIs::(icode_dump::ICode::dump_intern)";
3189 val_t
analysis___icode_dump___IIs___dump_intern(val_t p0
, val_t p1
){
3190 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3193 static val_t once_value_1
; /* Once value */
3194 static val_t once_value_2
; /* Once value */
3195 static val_t once_value_3
; /* Once value */
3196 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3197 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3199 fra
.me
.meth
= LOCATE_analysis___icode_dump___IIs___dump_intern
;
3200 fra
.me
.has_broke
= 0;
3201 fra
.me
.REG_size
= 4;
3202 fra
.me
.nitni_local_ref_head
= NULL
;
3203 fra
.me
.REG
[0] = NIT_NULL
;
3204 fra
.me
.REG
[1] = NIT_NULL
;
3205 fra
.me
.REG
[2] = NIT_NULL
;
3206 fra
.me
.REG
[3] = NIT_NULL
;
3209 /* analysis/icode_dump.nit:423 */
3211 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3212 if (!once_value_1
) {
3213 fra
.me
.REG
[3] = BOX_NativeString("");
3215 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3216 once_value_1
= fra
.me
.REG
[3];
3217 register_static_object(&once_value_1
);
3218 } else fra
.me
.REG
[3] = once_value_1
;
3219 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3220 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3221 fra
.me
.REG
[3] = CALL_icode___icode_base___ICode2___expr1(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3222 fra
.me
.REG
[3] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3223 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3224 if (!once_value_2
) {
3225 fra
.me
.REG
[3] = BOX_NativeString(" is ");
3227 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3228 once_value_2
= fra
.me
.REG
[3];
3229 register_static_object(&once_value_2
);
3230 } else fra
.me
.REG
[3] = once_value_2
;
3231 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3232 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3233 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode2___expr2(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3234 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3235 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3236 if (!once_value_3
) {
3237 fra
.me
.REG
[0] = BOX_NativeString("");
3239 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3240 once_value_3
= fra
.me
.REG
[0];
3241 register_static_object(&once_value_3
);
3242 } else fra
.me
.REG
[0] = once_value_3
;
3243 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3244 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3245 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3248 stack_frame_head
= fra
.me
.prev
;
3249 return fra
.me
.REG
[2];
3251 static const char LOCATE_analysis___icode_dump___INot___dump_intern
[] = "icode_dump::INot::(icode_dump::ICode::dump_intern)";
3252 val_t
analysis___icode_dump___INot___dump_intern(val_t p0
, val_t p1
){
3253 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3256 static val_t once_value_1
; /* Once value */
3257 static val_t once_value_2
; /* Once value */
3258 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3259 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3261 fra
.me
.meth
= LOCATE_analysis___icode_dump___INot___dump_intern
;
3262 fra
.me
.has_broke
= 0;
3263 fra
.me
.REG_size
= 4;
3264 fra
.me
.nitni_local_ref_head
= NULL
;
3265 fra
.me
.REG
[0] = NIT_NULL
;
3266 fra
.me
.REG
[1] = NIT_NULL
;
3267 fra
.me
.REG
[2] = NIT_NULL
;
3268 fra
.me
.REG
[3] = NIT_NULL
;
3271 /* analysis/icode_dump.nit:430 */
3273 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3274 if (!once_value_1
) {
3275 fra
.me
.REG
[3] = BOX_NativeString("NOT ");
3277 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3278 once_value_1
= fra
.me
.REG
[3];
3279 register_static_object(&once_value_1
);
3280 } else fra
.me
.REG
[3] = once_value_1
;
3281 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3282 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3283 fra
.me
.REG
[0] = CALL_icode___icode_base___ICode1___expr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3284 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3285 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3286 if (!once_value_2
) {
3287 fra
.me
.REG
[0] = BOX_NativeString("");
3289 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3290 once_value_2
= fra
.me
.REG
[0];
3291 register_static_object(&once_value_2
);
3292 } else fra
.me
.REG
[0] = once_value_2
;
3293 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3294 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3295 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3298 stack_frame_head
= fra
.me
.prev
;
3299 return fra
.me
.REG
[2];
3301 static const char LOCATE_analysis___icode_dump___IOnce___dump
[] = "icode_dump::IOnce::(icode_dump::ICode::dump)";
3302 void analysis___icode_dump___IOnce___dump(val_t p0
, val_t p1
){
3303 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
3306 static val_t once_value_1
; /* Once value */
3307 static val_t once_value_2
; /* Once value */
3308 static val_t once_value_3
; /* Once value */
3309 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3310 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3312 fra
.me
.meth
= LOCATE_analysis___icode_dump___IOnce___dump
;
3313 fra
.me
.has_broke
= 0;
3314 fra
.me
.REG_size
= 5;
3315 fra
.me
.nitni_local_ref_head
= NULL
;
3316 fra
.me
.REG
[0] = NIT_NULL
;
3317 fra
.me
.REG
[1] = NIT_NULL
;
3318 fra
.me
.REG
[2] = NIT_NULL
;
3319 fra
.me
.REG
[3] = NIT_NULL
;
3320 fra
.me
.REG
[4] = NIT_NULL
;
3323 /* analysis/icode_dump.nit:435 */
3324 fra
.me
.REG
[2] = fra
.me
.REG
[0];
3325 /* analysis/icode_dump.nit:437 */
3327 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3328 if (!once_value_1
) {
3329 fra
.me
.REG
[4] = BOX_NativeString("");
3331 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
3332 once_value_1
= fra
.me
.REG
[4];
3333 register_static_object(&once_value_1
);
3334 } else fra
.me
.REG
[4] = once_value_1
;
3335 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3336 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3337 fra
.me
.REG
[4] = CALL_icode___icode_base___ICode___result(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3338 REGB0
= TAG_Bool((fra
.me
.REG
[4]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[4], COLOR_icode___icode_base___IRegister
, ID_icode___icode_base___IRegister
)) /*cast IRegister*/;
3339 if (UNTAG_Bool(REGB0
)) {
3341 nit_abort("Cast failed", NULL
, LOCATE_analysis___icode_dump
, 437);
3343 fra
.me
.REG
[4] = CALL_analysis___icode_dump___ICodeDumper___register(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
3344 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3345 if (!once_value_2
) {
3346 fra
.me
.REG
[4] = BOX_NativeString(" := ONCE {");
3347 REGB0
= TAG_Int(10);
3348 fra
.me
.REG
[4] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB0
);
3349 once_value_2
= fra
.me
.REG
[4];
3350 register_static_object(&once_value_2
);
3351 } else fra
.me
.REG
[4] = once_value_2
;
3352 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3353 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3354 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3355 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3356 /* analysis/icode_dump.nit:438 */
3357 CALL_analysis___icode_dump___ICodeDumper___indent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3358 /* analysis/icode_dump.nit:439 */
3359 fra
.me
.REG
[2] = CALL_icode___icode_base___IOnce___body(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3360 CALL_analysis___icode_dump___ICode___dump(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3361 /* analysis/icode_dump.nit:440 */
3362 CALL_analysis___icode_dump___ICodeDumper___unindent(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3363 /* analysis/icode_dump.nit:441 */
3364 if (!once_value_3
) {
3365 fra
.me
.REG
[2] = BOX_NativeString("}");
3367 fra
.me
.REG
[2] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3368 once_value_3
= fra
.me
.REG
[2];
3369 register_static_object(&once_value_3
);
3370 } else fra
.me
.REG
[2] = once_value_3
;
3371 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3372 CALL_analysis___icode_dump___ICodeDumper___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3373 stack_frame_head
= fra
.me
.prev
;
3376 static const char LOCATE_analysis___icode_dump___IHasClos___dump_intern
[] = "icode_dump::IHasClos::(icode_dump::ICode::dump_intern)";
3377 val_t
analysis___icode_dump___IHasClos___dump_intern(val_t p0
, val_t p1
){
3378 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3381 static val_t once_value_1
; /* Once value */
3382 static val_t once_value_2
; /* Once value */
3383 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3384 fra
.me
.file
= LOCATE_analysis___icode_dump
;
3386 fra
.me
.meth
= LOCATE_analysis___icode_dump___IHasClos___dump_intern
;
3387 fra
.me
.has_broke
= 0;
3388 fra
.me
.REG_size
= 4;
3389 fra
.me
.nitni_local_ref_head
= NULL
;
3390 fra
.me
.REG
[0] = NIT_NULL
;
3391 fra
.me
.REG
[1] = NIT_NULL
;
3392 fra
.me
.REG
[2] = NIT_NULL
;
3393 fra
.me
.REG
[3] = NIT_NULL
;
3396 /* analysis/icode_dump.nit:448 */
3398 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3399 if (!once_value_1
) {
3400 fra
.me
.REG
[3] = BOX_NativeString("HASCLOS ");
3402 fra
.me
.REG
[3] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3403 once_value_1
= fra
.me
.REG
[3];
3404 register_static_object(&once_value_1
);
3405 } else fra
.me
.REG
[3] = once_value_1
;
3406 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3407 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3408 fra
.me
.REG
[0] = CALL_icode___icode_base___IHasClos___closure_decl(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3409 fra
.me
.REG
[0] = CALL_analysis___icode_dump___ICodeDumper___closdecl(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
3410 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3411 if (!once_value_2
) {
3412 fra
.me
.REG
[0] = BOX_NativeString("");
3414 fra
.me
.REG
[0] = CALL_standard___string___NativeString___to_s_with_length(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3415 once_value_2
= fra
.me
.REG
[0];
3416 register_static_object(&once_value_2
);
3417 } else fra
.me
.REG
[0] = once_value_2
;
3418 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3419 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
3420 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3423 stack_frame_head
= fra
.me
.prev
;
3424 return fra
.me
.REG
[2];