c_src: fix last update, _nitni.h s were referring to _nit.h from Nit src
[nit.git] / c_src / standard___kernel._sep.c
1 /* This C file is generated by NIT to compile module standard___kernel. */
2 #include "standard___kernel._sep.h"
3 val_t standard___kernel___Object___object_id(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t tmp;
7 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
8 fra.me.file = LOCATE_standard___kernel;
9 fra.me.line = 28;
10 fra.me.meth = LOCATE_standard___kernel___Object___object_id;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.REG[0] = NIT_NULL;
14 fra.me.REG[0] = p0;
15 /* ./../lib/standard//kernel.nit:28 */
16 REGB0 = TAG_Int((bigint)((obj_t)fra.me.REG[0])[1].object_id);
17 stack_frame_head = fra.me.prev;
18 return REGB0;
19 }
20 val_t standard___kernel___Object___is_same_type(val_t p0, val_t p1){
21 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
22 val_t REGB0;
23 val_t tmp;
24 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
25 fra.me.file = LOCATE_standard___kernel;
26 fra.me.line = 33;
27 fra.me.meth = LOCATE_standard___kernel___Object___is_same_type;
28 fra.me.has_broke = 0;
29 fra.me.REG_size = 2;
30 fra.me.REG[0] = NIT_NULL;
31 fra.me.REG[1] = NIT_NULL;
32 fra.me.REG[0] = p0;
33 fra.me.REG[1] = p1;
34 /* ./../lib/standard//kernel.nit:33 */
35 REGB0 = TAG_Bool((VAL2VFT(fra.me.REG[0])==VAL2VFT(fra.me.REG[1])));
36 stack_frame_head = fra.me.prev;
37 return REGB0;
38 }
39 val_t standard___kernel___Object_____eqeq(val_t p0, val_t p1){
40 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
41 val_t REGB0;
42 val_t tmp;
43 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
44 fra.me.file = LOCATE_standard___kernel;
45 fra.me.line = 37;
46 fra.me.meth = LOCATE_standard___kernel___Object_____eqeq;
47 fra.me.has_broke = 0;
48 fra.me.REG_size = 2;
49 fra.me.REG[0] = NIT_NULL;
50 fra.me.REG[1] = NIT_NULL;
51 fra.me.REG[0] = p0;
52 fra.me.REG[1] = p1;
53 /* ./../lib/standard//kernel.nit:41 */
54 REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[0],fra.me.REG[1]));
55 goto label1;
56 label1: while(0);
57 stack_frame_head = fra.me.prev;
58 return REGB0;
59 }
60 val_t standard___kernel___Object_____neq(val_t p0, val_t p1){
61 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
62 val_t REGB0;
63 val_t REGB1;
64 val_t tmp;
65 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
66 fra.me.file = LOCATE_standard___kernel;
67 fra.me.line = 43;
68 fra.me.meth = LOCATE_standard___kernel___Object_____neq;
69 fra.me.has_broke = 0;
70 fra.me.REG_size = 2;
71 fra.me.REG[0] = NIT_NULL;
72 fra.me.REG[1] = NIT_NULL;
73 fra.me.REG[0] = p0;
74 fra.me.REG[1] = p1;
75 /* ./../lib/standard//kernel.nit:46 */
76 REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[0],fra.me.REG[1]));
77 if (UNTAG_Bool(REGB0)) {
78 } else {
79 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
80 REGB0 = REGB1;
81 }
82 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
83 goto label1;
84 label1: while(0);
85 stack_frame_head = fra.me.prev;
86 return REGB0;
87 }
88 void standard___kernel___Object___output(val_t p0){
89 struct {struct stack_frame_t me;} fra;
90 val_t REGB0;
91 val_t tmp;
92 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
93 fra.me.file = LOCATE_standard___kernel;
94 fra.me.line = 48;
95 fra.me.meth = LOCATE_standard___kernel___Object___output;
96 fra.me.has_broke = 0;
97 fra.me.REG_size = 1;
98 fra.me.REG[0] = NIT_NULL;
99 fra.me.REG[0] = p0;
100 /* ./../lib/standard//kernel.nit:52 */
101 REGB0 = TAG_Char('<');
102 /* ./../lib/standard//kernel.nit:380 */
103 printf("%c", (unsigned char)UNTAG_Char(REGB0));;
104 /* ./../lib/standard//kernel.nit:53 */
105 REGB0 = CALL_standard___kernel___Object___object_id(fra.me.REG[0])(fra.me.REG[0]);
106 /* ./../lib/standard//kernel.nit:229 */
107 printf("%ld\n", UNTAG_Int(REGB0));;
108 /* ./../lib/standard//kernel.nit:54 */
109 REGB0 = TAG_Char('>');
110 /* ./../lib/standard//kernel.nit:380 */
111 printf("%c", (unsigned char)UNTAG_Char(REGB0));;
112 stack_frame_head = fra.me.prev;
113 return;
114 }
115 void standard___kernel___Object___output_class_name(val_t p0){
116 struct {struct stack_frame_t me;} fra;
117 val_t tmp;
118 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
119 fra.me.file = LOCATE_standard___kernel;
120 fra.me.line = 57;
121 fra.me.meth = LOCATE_standard___kernel___Object___output_class_name;
122 fra.me.has_broke = 0;
123 fra.me.REG_size = 1;
124 fra.me.REG[0] = NIT_NULL;
125 fra.me.REG[0] = p0;
126 /* ./../lib/standard//kernel.nit:57 */
127 printf("%s\n", VAL2VFT(fra.me.REG[0])[2].cname);;
128 stack_frame_head = fra.me.prev;
129 return;
130 }
131 void standard___kernel___Object___exit(val_t p0, val_t p1){
132 struct {struct stack_frame_t me;} fra;
133 val_t REGB0;
134 val_t tmp;
135 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
136 fra.me.file = LOCATE_standard___kernel;
137 fra.me.line = 61;
138 fra.me.meth = LOCATE_standard___kernel___Object___exit;
139 fra.me.has_broke = 0;
140 fra.me.REG_size = 1;
141 fra.me.REG[0] = NIT_NULL;
142 fra.me.REG[0] = p0;
143 REGB0 = p1;
144 /* ./../lib/standard//kernel.nit:61 */
145 exit(UNTAG_Int(REGB0));;
146 stack_frame_head = fra.me.prev;
147 return;
148 }
149 val_t standard___kernel___Object___sys(val_t p0){
150 struct {struct stack_frame_t me;} fra;
151 val_t tmp;
152 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
153 fra.me.file = LOCATE_standard___kernel;
154 fra.me.line = 64;
155 fra.me.meth = LOCATE_standard___kernel___Object___sys;
156 fra.me.has_broke = 0;
157 fra.me.REG_size = 1;
158 fra.me.REG[0] = NIT_NULL;
159 fra.me.REG[0] = p0;
160 /* ./../lib/standard//kernel.nit:64 */
161 fra.me.REG[0] = (G_sys);
162 stack_frame_head = fra.me.prev;
163 return fra.me.REG[0];
164 }
165 void standard___kernel___Sys___main(val_t p0){
166 struct {struct stack_frame_t me;} fra;
167 val_t tmp;
168 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
169 fra.me.file = LOCATE_standard___kernel;
170 fra.me.line = 72;
171 fra.me.meth = LOCATE_standard___kernel___Sys___main;
172 fra.me.has_broke = 0;
173 fra.me.REG_size = 1;
174 fra.me.REG[0] = NIT_NULL;
175 fra.me.REG[0] = p0;
176 stack_frame_head = fra.me.prev;
177 return;
178 }
179 void standard___kernel___Sys___init(val_t p0, int* init_table){
180 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_standard___kernel___Sys].i;
181 struct {struct stack_frame_t me;} fra;
182 val_t tmp;
183 if (init_table[itpos0]) return;
184 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
185 fra.me.file = LOCATE_standard___kernel;
186 fra.me.line = 0;
187 fra.me.meth = LOCATE_standard___kernel___Sys___init;
188 fra.me.has_broke = 0;
189 fra.me.REG_size = 0;
190 stack_frame_head = fra.me.prev;
191 init_table[itpos0] = 1;
192 return;
193 }
194 val_t standard___kernel___Comparable_____l(val_t p0, val_t p1){
195 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
196 val_t REGB0;
197 val_t tmp;
198 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
199 fra.me.file = LOCATE_standard___kernel;
200 fra.me.line = 86;
201 fra.me.meth = LOCATE_standard___kernel___Comparable_____l;
202 fra.me.has_broke = 0;
203 fra.me.REG_size = 2;
204 fra.me.REG[0] = NIT_NULL;
205 fra.me.REG[1] = NIT_NULL;
206 fra.me.REG[0] = p0;
207 fra.me.REG[1] = p1;
208 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
209 if (UNTAG_Bool(REGB0)) {
210 } else {
211 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
212 }
213 /* ./../lib/standard//kernel.nit:86 */
214 nit_abort("Deferred method called", NULL, LOCATE_standard___kernel, 86);
215 stack_frame_head = fra.me.prev;
216 return NIT_NULL;
217 }
218 val_t standard___kernel___Comparable_____leq(val_t p0, val_t p1){
219 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
220 val_t REGB0;
221 val_t tmp;
222 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
223 fra.me.file = LOCATE_standard___kernel;
224 fra.me.line = 89;
225 fra.me.meth = LOCATE_standard___kernel___Comparable_____leq;
226 fra.me.has_broke = 0;
227 fra.me.REG_size = 2;
228 fra.me.REG[0] = NIT_NULL;
229 fra.me.REG[1] = NIT_NULL;
230 fra.me.REG[0] = p0;
231 fra.me.REG[1] = p1;
232 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
233 if (UNTAG_Bool(REGB0)) {
234 } else {
235 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
236 }
237 /* ./../lib/standard//kernel.nit:91 */
238 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
239 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
240 goto label1;
241 label1: while(0);
242 stack_frame_head = fra.me.prev;
243 return REGB0;
244 }
245 val_t standard___kernel___Comparable_____geq(val_t p0, val_t p1){
246 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
247 val_t REGB0;
248 val_t tmp;
249 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
250 fra.me.file = LOCATE_standard___kernel;
251 fra.me.line = 93;
252 fra.me.meth = LOCATE_standard___kernel___Comparable_____geq;
253 fra.me.has_broke = 0;
254 fra.me.REG_size = 2;
255 fra.me.REG[0] = NIT_NULL;
256 fra.me.REG[1] = NIT_NULL;
257 fra.me.REG[0] = p0;
258 fra.me.REG[1] = p1;
259 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
260 if (UNTAG_Bool(REGB0)) {
261 } else {
262 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
263 }
264 /* ./../lib/standard//kernel.nit:95 */
265 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
266 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
267 goto label1;
268 label1: while(0);
269 stack_frame_head = fra.me.prev;
270 return REGB0;
271 }
272 val_t standard___kernel___Comparable_____g(val_t p0, val_t p1){
273 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
274 val_t REGB0;
275 val_t tmp;
276 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
277 fra.me.file = LOCATE_standard___kernel;
278 fra.me.line = 97;
279 fra.me.meth = LOCATE_standard___kernel___Comparable_____g;
280 fra.me.has_broke = 0;
281 fra.me.REG_size = 2;
282 fra.me.REG[0] = NIT_NULL;
283 fra.me.REG[1] = NIT_NULL;
284 fra.me.REG[0] = p0;
285 fra.me.REG[1] = p1;
286 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
287 if (UNTAG_Bool(REGB0)) {
288 } else {
289 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
290 }
291 /* ./../lib/standard//kernel.nit:98 */
292 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
293 goto label1;
294 label1: while(0);
295 stack_frame_head = fra.me.prev;
296 return REGB0;
297 }
298 val_t standard___kernel___Comparable_____leqg(val_t p0, val_t p1){
299 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
300 val_t REGB0;
301 val_t REGB1;
302 val_t tmp;
303 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
304 fra.me.file = LOCATE_standard___kernel;
305 fra.me.line = 100;
306 fra.me.meth = LOCATE_standard___kernel___Comparable_____leqg;
307 fra.me.has_broke = 0;
308 fra.me.REG_size = 2;
309 fra.me.REG[0] = NIT_NULL;
310 fra.me.REG[1] = NIT_NULL;
311 fra.me.REG[0] = p0;
312 fra.me.REG[1] = p1;
313 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
314 if (UNTAG_Bool(REGB0)) {
315 } else {
316 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
317 }
318 /* ./../lib/standard//kernel.nit:104 */
319 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
320 if (UNTAG_Bool(REGB0)) {
321 /* ./../lib/standard//kernel.nit:105 */
322 REGB0 = TAG_Int(1);
323 /* ./../lib/standard//kernel.nit:236 */
324 REGB0 = TAG_Int(-UNTAG_Int(REGB0));
325 /* ./../lib/standard//kernel.nit:105 */
326 goto label1;
327 } else {
328 /* ./../lib/standard//kernel.nit:106 */
329 REGB1 = CALL_standard___kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
330 if (UNTAG_Bool(REGB1)) {
331 /* ./../lib/standard//kernel.nit:107 */
332 REGB1 = TAG_Int(1);
333 REGB0 = REGB1;
334 goto label1;
335 } else {
336 /* ./../lib/standard//kernel.nit:109 */
337 REGB1 = TAG_Int(0);
338 REGB0 = REGB1;
339 goto label1;
340 }
341 }
342 label1: while(0);
343 stack_frame_head = fra.me.prev;
344 return REGB0;
345 }
346 val_t standard___kernel___Comparable___is_between(val_t p0, val_t p1, val_t p2){
347 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
348 val_t REGB0;
349 val_t REGB1;
350 val_t tmp;
351 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
352 fra.me.file = LOCATE_standard___kernel;
353 fra.me.line = 113;
354 fra.me.meth = LOCATE_standard___kernel___Comparable___is_between;
355 fra.me.has_broke = 0;
356 fra.me.REG_size = 3;
357 fra.me.REG[0] = NIT_NULL;
358 fra.me.REG[1] = NIT_NULL;
359 fra.me.REG[2] = NIT_NULL;
360 fra.me.REG[0] = p0;
361 fra.me.REG[1] = p1;
362 fra.me.REG[2] = p2;
363 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
364 if (UNTAG_Bool(REGB0)) {
365 } else {
366 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
367 }
368 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[2], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
369 if (UNTAG_Bool(REGB0)) {
370 } else {
371 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
372 }
373 /* ./../lib/standard//kernel.nit:116 */
374 REGB0 = CALL_standard___kernel___Comparable_____leq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
375 if (UNTAG_Bool(REGB0)) {
376 REGB0 = CALL_standard___kernel___Comparable_____leq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
377 } else {
378 REGB1 = TAG_Bool(false);
379 REGB0 = REGB1;
380 }
381 goto label1;
382 label1: while(0);
383 stack_frame_head = fra.me.prev;
384 return REGB0;
385 }
386 val_t standard___kernel___Comparable___max(val_t p0, val_t p1){
387 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
388 val_t REGB0;
389 val_t tmp;
390 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
391 fra.me.file = LOCATE_standard___kernel;
392 fra.me.line = 119;
393 fra.me.meth = LOCATE_standard___kernel___Comparable___max;
394 fra.me.has_broke = 0;
395 fra.me.REG_size = 2;
396 fra.me.REG[0] = NIT_NULL;
397 fra.me.REG[1] = NIT_NULL;
398 fra.me.REG[0] = p0;
399 fra.me.REG[1] = p1;
400 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
401 if (UNTAG_Bool(REGB0)) {
402 } else {
403 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
404 }
405 /* ./../lib/standard//kernel.nit:122 */
406 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
407 if (UNTAG_Bool(REGB0)) {
408 /* ./../lib/standard//kernel.nit:123 */
409 goto label1;
410 } else {
411 /* ./../lib/standard//kernel.nit:125 */
412 fra.me.REG[1] = fra.me.REG[0];
413 goto label1;
414 }
415 label1: while(0);
416 stack_frame_head = fra.me.prev;
417 return fra.me.REG[1];
418 }
419 val_t standard___kernel___Comparable___min(val_t p0, val_t p1){
420 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
421 val_t REGB0;
422 val_t tmp;
423 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
424 fra.me.file = LOCATE_standard___kernel;
425 fra.me.line = 129;
426 fra.me.meth = LOCATE_standard___kernel___Comparable___min;
427 fra.me.has_broke = 0;
428 fra.me.REG_size = 2;
429 fra.me.REG[0] = NIT_NULL;
430 fra.me.REG[1] = NIT_NULL;
431 fra.me.REG[0] = p0;
432 fra.me.REG[1] = p1;
433 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
434 if (UNTAG_Bool(REGB0)) {
435 } else {
436 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
437 }
438 /* ./../lib/standard//kernel.nit:132 */
439 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
440 if (UNTAG_Bool(REGB0)) {
441 /* ./../lib/standard//kernel.nit:133 */
442 goto label1;
443 } else {
444 /* ./../lib/standard//kernel.nit:135 */
445 fra.me.REG[1] = fra.me.REG[0];
446 goto label1;
447 }
448 label1: while(0);
449 stack_frame_head = fra.me.prev;
450 return fra.me.REG[1];
451 }
452 val_t standard___kernel___Discrete___succ(val_t p0){
453 struct {struct stack_frame_t me;} fra;
454 val_t REGB0;
455 val_t tmp;
456 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
457 fra.me.file = LOCATE_standard___kernel;
458 fra.me.line = 146;
459 fra.me.meth = LOCATE_standard___kernel___Discrete___succ;
460 fra.me.has_broke = 0;
461 fra.me.REG_size = 1;
462 fra.me.REG[0] = NIT_NULL;
463 fra.me.REG[0] = p0;
464 /* ./../lib/standard//kernel.nit:147 */
465 REGB0 = TAG_Int(1);
466 fra.me.REG[0] = CALL_standard___kernel___Discrete_____plus(fra.me.REG[0])(fra.me.REG[0], REGB0);
467 goto label1;
468 label1: while(0);
469 stack_frame_head = fra.me.prev;
470 return fra.me.REG[0];
471 }
472 val_t standard___kernel___Discrete___prec(val_t p0){
473 struct {struct stack_frame_t me;} fra;
474 val_t REGB0;
475 val_t tmp;
476 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
477 fra.me.file = LOCATE_standard___kernel;
478 fra.me.line = 149;
479 fra.me.meth = LOCATE_standard___kernel___Discrete___prec;
480 fra.me.has_broke = 0;
481 fra.me.REG_size = 1;
482 fra.me.REG[0] = NIT_NULL;
483 fra.me.REG[0] = p0;
484 /* ./../lib/standard//kernel.nit:150 */
485 REGB0 = TAG_Int(1);
486 fra.me.REG[0] = CALL_standard___kernel___Discrete_____minus(fra.me.REG[0])(fra.me.REG[0], REGB0);
487 goto label1;
488 label1: while(0);
489 stack_frame_head = fra.me.prev;
490 return fra.me.REG[0];
491 }
492 val_t standard___kernel___Discrete_____plus(val_t p0, val_t p1){
493 struct {struct stack_frame_t me;} fra;
494 val_t tmp;
495 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
496 fra.me.file = LOCATE_standard___kernel;
497 fra.me.line = 152;
498 fra.me.meth = LOCATE_standard___kernel___Discrete_____plus;
499 fra.me.has_broke = 0;
500 fra.me.REG_size = 0;
501 /* ./../lib/standard//kernel.nit:152 */
502 nit_abort("Deferred method called", NULL, LOCATE_standard___kernel, 152);
503 stack_frame_head = fra.me.prev;
504 return NIT_NULL;
505 }
506 val_t standard___kernel___Discrete_____minus(val_t p0, val_t p1){
507 struct {struct stack_frame_t me;} fra;
508 val_t tmp;
509 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
510 fra.me.file = LOCATE_standard___kernel;
511 fra.me.line = 155;
512 fra.me.meth = LOCATE_standard___kernel___Discrete_____minus;
513 fra.me.has_broke = 0;
514 fra.me.REG_size = 0;
515 /* ./../lib/standard//kernel.nit:155 */
516 nit_abort("Deferred method called", NULL, LOCATE_standard___kernel, 155);
517 stack_frame_head = fra.me.prev;
518 return NIT_NULL;
519 }
520 val_t standard___kernel___Discrete___distance(val_t p0, val_t p1){
521 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
522 val_t REGB0;
523 val_t REGB1;
524 val_t REGB2;
525 val_t tmp;
526 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
527 fra.me.file = LOCATE_standard___kernel;
528 fra.me.line = 158;
529 fra.me.meth = LOCATE_standard___kernel___Discrete___distance;
530 fra.me.has_broke = 0;
531 fra.me.REG_size = 4;
532 fra.me.REG[0] = NIT_NULL;
533 fra.me.REG[1] = NIT_NULL;
534 fra.me.REG[2] = NIT_NULL;
535 fra.me.REG[3] = NIT_NULL;
536 fra.me.REG[0] = p0;
537 fra.me.REG[1] = p1;
538 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
539 if (UNTAG_Bool(REGB0)) {
540 } else {
541 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
542 }
543 /* ./../lib/standard//kernel.nit:165 */
544 REGB0 = CALL_standard___kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
545 if (UNTAG_Bool(REGB0)) {
546 /* ./../lib/standard//kernel.nit:166 */
547 fra.me.REG[2] = fra.me.REG[0];
548 /* ./../lib/standard//kernel.nit:167 */
549 fra.me.REG[3] = fra.me.REG[1];
550 } else {
551 /* ./../lib/standard//kernel.nit:168 */
552 REGB0 = CALL_standard___kernel___Comparable_____g(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
553 if (UNTAG_Bool(REGB0)) {
554 /* ./../lib/standard//kernel.nit:169 */
555 fra.me.REG[2] = fra.me.REG[1];
556 /* ./../lib/standard//kernel.nit:170 */
557 fra.me.REG[3] = fra.me.REG[0];
558 } else {
559 /* ./../lib/standard//kernel.nit:172 */
560 REGB0 = TAG_Int(0);
561 goto label1;
562 }
563 }
564 /* ./../lib/standard//kernel.nit:175 */
565 REGB1 = TAG_Int(0);
566 /* ./../lib/standard//kernel.nit:176 */
567 while(1) {
568 REGB2 = CALL_standard___kernel___Comparable_____l(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
569 if (UNTAG_Bool(REGB2)) {
570 /* ./../lib/standard//kernel.nit:177 */
571 fra.me.REG[0] = CALL_standard___kernel___Discrete___succ(fra.me.REG[2])(fra.me.REG[2]);
572 fra.me.REG[2] = fra.me.REG[0];
573 /* ./../lib/standard//kernel.nit:178 */
574 REGB2 = TAG_Int(1);
575 /* ./../lib/standard//kernel.nit:235 */
576 REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
577 /* ./../lib/standard//kernel.nit:178 */
578 REGB1 = REGB2;
579 } else {
580 /* ./../lib/standard//kernel.nit:176 */
581 goto label2;
582 }
583 }
584 label2: while(0);
585 /* ./../lib/standard//kernel.nit:180 */
586 REGB0 = REGB1;
587 goto label1;
588 label1: while(0);
589 stack_frame_head = fra.me.prev;
590 return REGB0;
591 }
592 val_t standard___kernel___Bool___object_id(val_t p0){
593 struct {struct stack_frame_t me;} fra;
594 val_t REGB0;
595 val_t tmp;
596 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
597 fra.me.file = LOCATE_standard___kernel;
598 fra.me.line = 194;
599 fra.me.meth = LOCATE_standard___kernel___Bool___object_id;
600 fra.me.has_broke = 0;
601 fra.me.REG_size = 0;
602 REGB0 = p0;
603 /* ./../lib/standard//kernel.nit:194 */
604 REGB0 = TAG_Int(UNTAG_Bool(REGB0));
605 stack_frame_head = fra.me.prev;
606 return REGB0;
607 }
608 val_t standard___kernel___Bool_____eqeq(val_t p0, val_t p1){
609 struct {struct stack_frame_t me;} fra;
610 val_t REGB0;
611 val_t tmp;
612 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
613 fra.me.file = LOCATE_standard___kernel;
614 fra.me.line = 195;
615 fra.me.meth = LOCATE_standard___kernel___Bool_____eqeq;
616 fra.me.has_broke = 0;
617 fra.me.REG_size = 1;
618 fra.me.REG[0] = NIT_NULL;
619 REGB0 = p0;
620 fra.me.REG[0] = p1;
621 /* ./../lib/standard//kernel.nit:195 */
622 REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
623 stack_frame_head = fra.me.prev;
624 return REGB0;
625 }
626 val_t standard___kernel___Bool_____neq(val_t p0, val_t p1){
627 struct {struct stack_frame_t me;} fra;
628 val_t REGB0;
629 val_t tmp;
630 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
631 fra.me.file = LOCATE_standard___kernel;
632 fra.me.line = 196;
633 fra.me.meth = LOCATE_standard___kernel___Bool_____neq;
634 fra.me.has_broke = 0;
635 fra.me.REG_size = 1;
636 fra.me.REG[0] = NIT_NULL;
637 REGB0 = p0;
638 fra.me.REG[0] = p1;
639 /* ./../lib/standard//kernel.nit:196 */
640 REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
641 stack_frame_head = fra.me.prev;
642 return REGB0;
643 }
644 void standard___kernel___Bool___output(val_t p0){
645 struct {struct stack_frame_t me;} fra;
646 val_t REGB0;
647 val_t tmp;
648 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
649 fra.me.file = LOCATE_standard___kernel;
650 fra.me.line = 197;
651 fra.me.meth = LOCATE_standard___kernel___Bool___output;
652 fra.me.has_broke = 0;
653 fra.me.REG_size = 0;
654 REGB0 = p0;
655 /* ./../lib/standard//kernel.nit:197 */
656 (void)printf(UNTAG_Bool(REGB0)?"true\n":"false\n");;
657 stack_frame_head = fra.me.prev;
658 return;
659 }
660 val_t standard___kernel___Float___object_id(val_t p0){
661 struct {struct stack_frame_t me;} fra;
662 val_t REGB0;
663 val_t tmp;
664 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
665 fra.me.file = LOCATE_standard___kernel;
666 fra.me.line = 203;
667 fra.me.meth = LOCATE_standard___kernel___Float___object_id;
668 fra.me.has_broke = 0;
669 fra.me.REG_size = 1;
670 fra.me.REG[0] = NIT_NULL;
671 fra.me.REG[0] = p0;
672 /* ./../lib/standard//kernel.nit:203 */
673 REGB0 = TAG_Int((bigint)UNBOX_Float(fra.me.REG[0]));
674 stack_frame_head = fra.me.prev;
675 return REGB0;
676 }
677 void standard___kernel___Float___output(val_t p0){
678 struct {struct stack_frame_t me;} fra;
679 val_t tmp;
680 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
681 fra.me.file = LOCATE_standard___kernel;
682 fra.me.line = 204;
683 fra.me.meth = LOCATE_standard___kernel___Float___output;
684 fra.me.has_broke = 0;
685 fra.me.REG_size = 1;
686 fra.me.REG[0] = NIT_NULL;
687 fra.me.REG[0] = p0;
688 /* ./../lib/standard//kernel.nit:204 */
689 printf("%f\n", UNBOX_Float(fra.me.REG[0]));;
690 stack_frame_head = fra.me.prev;
691 return;
692 }
693 val_t standard___kernel___Float_____leq(val_t p0, val_t p1){
694 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
695 val_t REGB0;
696 val_t tmp;
697 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
698 fra.me.file = LOCATE_standard___kernel;
699 fra.me.line = 206;
700 fra.me.meth = LOCATE_standard___kernel___Float_____leq;
701 fra.me.has_broke = 0;
702 fra.me.REG_size = 2;
703 fra.me.REG[0] = NIT_NULL;
704 fra.me.REG[1] = NIT_NULL;
705 fra.me.REG[0] = p0;
706 fra.me.REG[1] = p1;
707 /* ./../lib/standard//kernel.nit:206 */
708 REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])<=UNBOX_Float(fra.me.REG[1]));
709 stack_frame_head = fra.me.prev;
710 return REGB0;
711 }
712 val_t standard___kernel___Float_____l(val_t p0, val_t p1){
713 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
714 val_t REGB0;
715 val_t tmp;
716 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
717 fra.me.file = LOCATE_standard___kernel;
718 fra.me.line = 207;
719 fra.me.meth = LOCATE_standard___kernel___Float_____l;
720 fra.me.has_broke = 0;
721 fra.me.REG_size = 2;
722 fra.me.REG[0] = NIT_NULL;
723 fra.me.REG[1] = NIT_NULL;
724 fra.me.REG[0] = p0;
725 fra.me.REG[1] = p1;
726 /* ./../lib/standard//kernel.nit:207 */
727 REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])<UNBOX_Float(fra.me.REG[1]));
728 stack_frame_head = fra.me.prev;
729 return REGB0;
730 }
731 val_t standard___kernel___Float_____geq(val_t p0, val_t p1){
732 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
733 val_t REGB0;
734 val_t tmp;
735 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
736 fra.me.file = LOCATE_standard___kernel;
737 fra.me.line = 208;
738 fra.me.meth = LOCATE_standard___kernel___Float_____geq;
739 fra.me.has_broke = 0;
740 fra.me.REG_size = 2;
741 fra.me.REG[0] = NIT_NULL;
742 fra.me.REG[1] = NIT_NULL;
743 fra.me.REG[0] = p0;
744 fra.me.REG[1] = p1;
745 /* ./../lib/standard//kernel.nit:208 */
746 REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])>=UNBOX_Float(fra.me.REG[1]));
747 stack_frame_head = fra.me.prev;
748 return REGB0;
749 }
750 val_t standard___kernel___Float_____g(val_t p0, val_t p1){
751 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
752 val_t REGB0;
753 val_t tmp;
754 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
755 fra.me.file = LOCATE_standard___kernel;
756 fra.me.line = 209;
757 fra.me.meth = LOCATE_standard___kernel___Float_____g;
758 fra.me.has_broke = 0;
759 fra.me.REG_size = 2;
760 fra.me.REG[0] = NIT_NULL;
761 fra.me.REG[1] = NIT_NULL;
762 fra.me.REG[0] = p0;
763 fra.me.REG[1] = p1;
764 /* ./../lib/standard//kernel.nit:209 */
765 REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])>UNBOX_Float(fra.me.REG[1]));
766 stack_frame_head = fra.me.prev;
767 return REGB0;
768 }
769 val_t standard___kernel___Float_____plus(val_t p0, val_t p1){
770 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
771 val_t tmp;
772 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
773 fra.me.file = LOCATE_standard___kernel;
774 fra.me.line = 210;
775 fra.me.meth = LOCATE_standard___kernel___Float_____plus;
776 fra.me.has_broke = 0;
777 fra.me.REG_size = 2;
778 fra.me.REG[0] = NIT_NULL;
779 fra.me.REG[1] = NIT_NULL;
780 fra.me.REG[0] = p0;
781 fra.me.REG[1] = p1;
782 /* ./../lib/standard//kernel.nit:210 */
783 fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])+UNBOX_Float(fra.me.REG[1]));
784 stack_frame_head = fra.me.prev;
785 return fra.me.REG[1];
786 }
787 val_t standard___kernel___Float___unary__minus(val_t p0){
788 struct {struct stack_frame_t me;} fra;
789 val_t tmp;
790 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
791 fra.me.file = LOCATE_standard___kernel;
792 fra.me.line = 211;
793 fra.me.meth = LOCATE_standard___kernel___Float___unary__minus;
794 fra.me.has_broke = 0;
795 fra.me.REG_size = 1;
796 fra.me.REG[0] = NIT_NULL;
797 fra.me.REG[0] = p0;
798 /* ./../lib/standard//kernel.nit:211 */
799 fra.me.REG[0] = BOX_Float(-UNBOX_Float(fra.me.REG[0]));
800 stack_frame_head = fra.me.prev;
801 return fra.me.REG[0];
802 }
803 val_t standard___kernel___Float_____minus(val_t p0, val_t p1){
804 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
805 val_t tmp;
806 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
807 fra.me.file = LOCATE_standard___kernel;
808 fra.me.line = 212;
809 fra.me.meth = LOCATE_standard___kernel___Float_____minus;
810 fra.me.has_broke = 0;
811 fra.me.REG_size = 2;
812 fra.me.REG[0] = NIT_NULL;
813 fra.me.REG[1] = NIT_NULL;
814 fra.me.REG[0] = p0;
815 fra.me.REG[1] = p1;
816 /* ./../lib/standard//kernel.nit:212 */
817 fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])-UNBOX_Float(fra.me.REG[1]));
818 stack_frame_head = fra.me.prev;
819 return fra.me.REG[1];
820 }
821 val_t standard___kernel___Float_____star(val_t p0, val_t p1){
822 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
823 val_t tmp;
824 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
825 fra.me.file = LOCATE_standard___kernel;
826 fra.me.line = 213;
827 fra.me.meth = LOCATE_standard___kernel___Float_____star;
828 fra.me.has_broke = 0;
829 fra.me.REG_size = 2;
830 fra.me.REG[0] = NIT_NULL;
831 fra.me.REG[1] = NIT_NULL;
832 fra.me.REG[0] = p0;
833 fra.me.REG[1] = p1;
834 /* ./../lib/standard//kernel.nit:213 */
835 fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])*UNBOX_Float(fra.me.REG[1]));
836 stack_frame_head = fra.me.prev;
837 return fra.me.REG[1];
838 }
839 val_t standard___kernel___Float_____slash(val_t p0, val_t p1){
840 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
841 val_t tmp;
842 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
843 fra.me.file = LOCATE_standard___kernel;
844 fra.me.line = 214;
845 fra.me.meth = LOCATE_standard___kernel___Float_____slash;
846 fra.me.has_broke = 0;
847 fra.me.REG_size = 2;
848 fra.me.REG[0] = NIT_NULL;
849 fra.me.REG[1] = NIT_NULL;
850 fra.me.REG[0] = p0;
851 fra.me.REG[1] = p1;
852 /* ./../lib/standard//kernel.nit:214 */
853 fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])/UNBOX_Float(fra.me.REG[1]));
854 stack_frame_head = fra.me.prev;
855 return fra.me.REG[1];
856 }
857 val_t standard___kernel___Float___to_i(val_t p0){
858 struct {struct stack_frame_t me;} fra;
859 val_t REGB0;
860 val_t tmp;
861 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
862 fra.me.file = LOCATE_standard___kernel;
863 fra.me.line = 216;
864 fra.me.meth = LOCATE_standard___kernel___Float___to_i;
865 fra.me.has_broke = 0;
866 fra.me.REG_size = 1;
867 fra.me.REG[0] = NIT_NULL;
868 fra.me.REG[0] = p0;
869 /* ./../lib/standard//kernel.nit:216 */
870 REGB0 = TAG_Int((bigint)UNBOX_Float(fra.me.REG[0]));
871 stack_frame_head = fra.me.prev;
872 return REGB0;
873 }
874 val_t standard___kernel___Int___object_id(val_t p0){
875 struct {struct stack_frame_t me;} fra;
876 val_t REGB0;
877 val_t tmp;
878 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
879 fra.me.file = LOCATE_standard___kernel;
880 fra.me.line = 226;
881 fra.me.meth = LOCATE_standard___kernel___Int___object_id;
882 fra.me.has_broke = 0;
883 fra.me.REG_size = 0;
884 REGB0 = p0;
885 /* ./../lib/standard//kernel.nit:226 */
886 REGB0 = REGB0;
887 stack_frame_head = fra.me.prev;
888 return REGB0;
889 }
890 val_t standard___kernel___Int_____eqeq(val_t p0, val_t p1){
891 struct {struct stack_frame_t me;} fra;
892 val_t REGB0;
893 val_t tmp;
894 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
895 fra.me.file = LOCATE_standard___kernel;
896 fra.me.line = 227;
897 fra.me.meth = LOCATE_standard___kernel___Int_____eqeq;
898 fra.me.has_broke = 0;
899 fra.me.REG_size = 1;
900 fra.me.REG[0] = NIT_NULL;
901 REGB0 = p0;
902 fra.me.REG[0] = p1;
903 /* ./../lib/standard//kernel.nit:227 */
904 REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
905 stack_frame_head = fra.me.prev;
906 return REGB0;
907 }
908 val_t standard___kernel___Int_____neq(val_t p0, val_t p1){
909 struct {struct stack_frame_t me;} fra;
910 val_t REGB0;
911 val_t tmp;
912 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
913 fra.me.file = LOCATE_standard___kernel;
914 fra.me.line = 228;
915 fra.me.meth = LOCATE_standard___kernel___Int_____neq;
916 fra.me.has_broke = 0;
917 fra.me.REG_size = 1;
918 fra.me.REG[0] = NIT_NULL;
919 REGB0 = p0;
920 fra.me.REG[0] = p1;
921 /* ./../lib/standard//kernel.nit:228 */
922 REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
923 stack_frame_head = fra.me.prev;
924 return REGB0;
925 }
926 void standard___kernel___Int___output(val_t p0){
927 struct {struct stack_frame_t me;} fra;
928 val_t REGB0;
929 val_t tmp;
930 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
931 fra.me.file = LOCATE_standard___kernel;
932 fra.me.line = 229;
933 fra.me.meth = LOCATE_standard___kernel___Int___output;
934 fra.me.has_broke = 0;
935 fra.me.REG_size = 0;
936 REGB0 = p0;
937 /* ./../lib/standard//kernel.nit:229 */
938 printf("%ld\n", UNTAG_Int(REGB0));;
939 stack_frame_head = fra.me.prev;
940 return;
941 }
942 val_t standard___kernel___Int_____leq(val_t p0, val_t p1){
943 struct {struct stack_frame_t me;} fra;
944 val_t REGB0;
945 val_t REGB1;
946 val_t REGB2;
947 val_t tmp;
948 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
949 fra.me.file = LOCATE_standard___kernel;
950 fra.me.line = 231;
951 fra.me.meth = LOCATE_standard___kernel___Int_____leq;
952 fra.me.has_broke = 0;
953 fra.me.REG_size = 0;
954 REGB0 = p0;
955 REGB1 = p1;
956 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
957 if (UNTAG_Bool(REGB2)) {
958 } else {
959 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
960 }
961 /* ./../lib/standard//kernel.nit:231 */
962 REGB1 = TAG_Bool(UNTAG_Int(REGB0)<=UNTAG_Int(REGB1));
963 stack_frame_head = fra.me.prev;
964 return REGB1;
965 }
966 val_t standard___kernel___Int_____l(val_t p0, val_t p1){
967 struct {struct stack_frame_t me;} fra;
968 val_t REGB0;
969 val_t REGB1;
970 val_t REGB2;
971 val_t tmp;
972 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
973 fra.me.file = LOCATE_standard___kernel;
974 fra.me.line = 232;
975 fra.me.meth = LOCATE_standard___kernel___Int_____l;
976 fra.me.has_broke = 0;
977 fra.me.REG_size = 0;
978 REGB0 = p0;
979 REGB1 = p1;
980 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
981 if (UNTAG_Bool(REGB2)) {
982 } else {
983 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
984 }
985 /* ./../lib/standard//kernel.nit:232 */
986 REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
987 stack_frame_head = fra.me.prev;
988 return REGB1;
989 }
990 val_t standard___kernel___Int_____geq(val_t p0, val_t p1){
991 struct {struct stack_frame_t me;} fra;
992 val_t REGB0;
993 val_t REGB1;
994 val_t REGB2;
995 val_t tmp;
996 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
997 fra.me.file = LOCATE_standard___kernel;
998 fra.me.line = 233;
999 fra.me.meth = LOCATE_standard___kernel___Int_____geq;
1000 fra.me.has_broke = 0;
1001 fra.me.REG_size = 0;
1002 REGB0 = p0;
1003 REGB1 = p1;
1004 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1005 if (UNTAG_Bool(REGB2)) {
1006 } else {
1007 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1008 }
1009 /* ./../lib/standard//kernel.nit:233 */
1010 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
1011 stack_frame_head = fra.me.prev;
1012 return REGB1;
1013 }
1014 val_t standard___kernel___Int_____g(val_t p0, val_t p1){
1015 struct {struct stack_frame_t me;} fra;
1016 val_t REGB0;
1017 val_t REGB1;
1018 val_t REGB2;
1019 val_t tmp;
1020 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1021 fra.me.file = LOCATE_standard___kernel;
1022 fra.me.line = 234;
1023 fra.me.meth = LOCATE_standard___kernel___Int_____g;
1024 fra.me.has_broke = 0;
1025 fra.me.REG_size = 0;
1026 REGB0 = p0;
1027 REGB1 = p1;
1028 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1029 if (UNTAG_Bool(REGB2)) {
1030 } else {
1031 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1032 }
1033 /* ./../lib/standard//kernel.nit:234 */
1034 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
1035 stack_frame_head = fra.me.prev;
1036 return REGB1;
1037 }
1038 val_t standard___kernel___Int_____plus(val_t p0, val_t p1){
1039 struct {struct stack_frame_t me;} fra;
1040 val_t REGB0;
1041 val_t REGB1;
1042 val_t tmp;
1043 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1044 fra.me.file = LOCATE_standard___kernel;
1045 fra.me.line = 235;
1046 fra.me.meth = LOCATE_standard___kernel___Int_____plus;
1047 fra.me.has_broke = 0;
1048 fra.me.REG_size = 0;
1049 REGB0 = p0;
1050 REGB1 = p1;
1051 /* ./../lib/standard//kernel.nit:235 */
1052 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
1053 stack_frame_head = fra.me.prev;
1054 return REGB1;
1055 }
1056 val_t standard___kernel___Int___unary__minus(val_t p0){
1057 struct {struct stack_frame_t me;} fra;
1058 val_t REGB0;
1059 val_t tmp;
1060 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1061 fra.me.file = LOCATE_standard___kernel;
1062 fra.me.line = 236;
1063 fra.me.meth = LOCATE_standard___kernel___Int___unary__minus;
1064 fra.me.has_broke = 0;
1065 fra.me.REG_size = 0;
1066 REGB0 = p0;
1067 /* ./../lib/standard//kernel.nit:236 */
1068 REGB0 = TAG_Int(-UNTAG_Int(REGB0));
1069 stack_frame_head = fra.me.prev;
1070 return REGB0;
1071 }
1072 val_t standard___kernel___Int_____minus(val_t p0, val_t p1){
1073 struct {struct stack_frame_t me;} fra;
1074 val_t REGB0;
1075 val_t REGB1;
1076 val_t tmp;
1077 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1078 fra.me.file = LOCATE_standard___kernel;
1079 fra.me.line = 237;
1080 fra.me.meth = LOCATE_standard___kernel___Int_____minus;
1081 fra.me.has_broke = 0;
1082 fra.me.REG_size = 0;
1083 REGB0 = p0;
1084 REGB1 = p1;
1085 /* ./../lib/standard//kernel.nit:237 */
1086 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
1087 stack_frame_head = fra.me.prev;
1088 return REGB1;
1089 }
1090 val_t standard___kernel___Int_____star(val_t p0, val_t p1){
1091 struct {struct stack_frame_t me;} fra;
1092 val_t REGB0;
1093 val_t REGB1;
1094 val_t tmp;
1095 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1096 fra.me.file = LOCATE_standard___kernel;
1097 fra.me.line = 238;
1098 fra.me.meth = LOCATE_standard___kernel___Int_____star;
1099 fra.me.has_broke = 0;
1100 fra.me.REG_size = 0;
1101 REGB0 = p0;
1102 REGB1 = p1;
1103 /* ./../lib/standard//kernel.nit:238 */
1104 REGB1 = TAG_Int(UNTAG_Int(REGB0)*UNTAG_Int(REGB1));
1105 stack_frame_head = fra.me.prev;
1106 return REGB1;
1107 }
1108 val_t standard___kernel___Int_____slash(val_t p0, val_t p1){
1109 struct {struct stack_frame_t me;} fra;
1110 val_t REGB0;
1111 val_t REGB1;
1112 val_t tmp;
1113 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1114 fra.me.file = LOCATE_standard___kernel;
1115 fra.me.line = 239;
1116 fra.me.meth = LOCATE_standard___kernel___Int_____slash;
1117 fra.me.has_broke = 0;
1118 fra.me.REG_size = 0;
1119 REGB0 = p0;
1120 REGB1 = p1;
1121 /* ./../lib/standard//kernel.nit:239 */
1122 REGB1 = TAG_Int(UNTAG_Int(REGB0)/UNTAG_Int(REGB1));
1123 stack_frame_head = fra.me.prev;
1124 return REGB1;
1125 }
1126 val_t standard___kernel___Int_____percent(val_t p0, val_t p1){
1127 struct {struct stack_frame_t me;} fra;
1128 val_t REGB0;
1129 val_t REGB1;
1130 val_t tmp;
1131 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1132 fra.me.file = LOCATE_standard___kernel;
1133 fra.me.line = 240;
1134 fra.me.meth = LOCATE_standard___kernel___Int_____percent;
1135 fra.me.has_broke = 0;
1136 fra.me.REG_size = 0;
1137 REGB0 = p0;
1138 REGB1 = p1;
1139 /* ./../lib/standard//kernel.nit:240 */
1140 REGB1 = TAG_Int(UNTAG_Int(REGB0)%UNTAG_Int(REGB1));
1141 stack_frame_head = fra.me.prev;
1142 return REGB1;
1143 }
1144 val_t standard___kernel___Int___lshift(val_t p0, val_t p1){
1145 struct {struct stack_frame_t me;} fra;
1146 val_t REGB0;
1147 val_t REGB1;
1148 val_t tmp;
1149 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1150 fra.me.file = LOCATE_standard___kernel;
1151 fra.me.line = 241;
1152 fra.me.meth = LOCATE_standard___kernel___Int___lshift;
1153 fra.me.has_broke = 0;
1154 fra.me.REG_size = 0;
1155 REGB0 = p0;
1156 REGB1 = p1;
1157 /* ./../lib/standard//kernel.nit:241 */
1158 REGB1 = TAG_Int(UNTAG_Int(REGB0)<<UNTAG_Int(REGB1));
1159 stack_frame_head = fra.me.prev;
1160 return REGB1;
1161 }
1162 val_t standard___kernel___Int___rshift(val_t p0, val_t p1){
1163 struct {struct stack_frame_t me;} fra;
1164 val_t REGB0;
1165 val_t REGB1;
1166 val_t tmp;
1167 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1168 fra.me.file = LOCATE_standard___kernel;
1169 fra.me.line = 242;
1170 fra.me.meth = LOCATE_standard___kernel___Int___rshift;
1171 fra.me.has_broke = 0;
1172 fra.me.REG_size = 0;
1173 REGB0 = p0;
1174 REGB1 = p1;
1175 /* ./../lib/standard//kernel.nit:242 */
1176 REGB1 = TAG_Int(UNTAG_Int(REGB0)>>UNTAG_Int(REGB1));
1177 stack_frame_head = fra.me.prev;
1178 return REGB1;
1179 }
1180 val_t standard___kernel___Int___to_f(val_t p0){
1181 struct {struct stack_frame_t me;} fra;
1182 val_t REGB0;
1183 val_t tmp;
1184 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1185 fra.me.file = LOCATE_standard___kernel;
1186 fra.me.line = 244;
1187 fra.me.meth = LOCATE_standard___kernel___Int___to_f;
1188 fra.me.has_broke = 0;
1189 fra.me.REG_size = 1;
1190 fra.me.REG[0] = NIT_NULL;
1191 REGB0 = p0;
1192 /* ./../lib/standard//kernel.nit:244 */
1193 fra.me.REG[0] = BOX_Float((float)UNTAG_Int(REGB0));
1194 stack_frame_head = fra.me.prev;
1195 return fra.me.REG[0];
1196 }
1197 val_t standard___kernel___Int___succ(val_t p0){
1198 struct {struct stack_frame_t me;} fra;
1199 val_t REGB0;
1200 val_t tmp;
1201 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1202 fra.me.file = LOCATE_standard___kernel;
1203 fra.me.line = 247;
1204 fra.me.meth = LOCATE_standard___kernel___Int___succ;
1205 fra.me.has_broke = 0;
1206 fra.me.REG_size = 0;
1207 REGB0 = p0;
1208 /* ./../lib/standard//kernel.nit:247 */
1209 REGB0 = TAG_Int(UNTAG_Int(REGB0)+1);
1210 stack_frame_head = fra.me.prev;
1211 return REGB0;
1212 }
1213 val_t standard___kernel___Int___prec(val_t p0){
1214 struct {struct stack_frame_t me;} fra;
1215 val_t REGB0;
1216 val_t tmp;
1217 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1218 fra.me.file = LOCATE_standard___kernel;
1219 fra.me.line = 248;
1220 fra.me.meth = LOCATE_standard___kernel___Int___prec;
1221 fra.me.has_broke = 0;
1222 fra.me.REG_size = 0;
1223 REGB0 = p0;
1224 /* ./../lib/standard//kernel.nit:248 */
1225 REGB0 = TAG_Int(UNTAG_Int(REGB0)-1);
1226 stack_frame_head = fra.me.prev;
1227 return REGB0;
1228 }
1229 val_t standard___kernel___Int___distance(val_t p0, val_t p1){
1230 struct {struct stack_frame_t me;} fra;
1231 val_t REGB0;
1232 val_t REGB1;
1233 val_t REGB2;
1234 val_t tmp;
1235 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1236 fra.me.file = LOCATE_standard___kernel;
1237 fra.me.line = 249;
1238 fra.me.meth = LOCATE_standard___kernel___Int___distance;
1239 fra.me.has_broke = 0;
1240 fra.me.REG_size = 0;
1241 REGB0 = p0;
1242 REGB1 = p1;
1243 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1244 if (UNTAG_Bool(REGB2)) {
1245 } else {
1246 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1247 }
1248 /* ./../lib/standard//kernel.nit:237 */
1249 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
1250 /* ./../lib/standard//kernel.nit:252 */
1251 REGB0 = TAG_Int(0);
1252 REGB2 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1253 if (UNTAG_Bool(REGB2)) {
1254 } else {
1255 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1256 }
1257 /* ./../lib/standard//kernel.nit:233 */
1258 REGB0 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB0));
1259 /* ./../lib/standard//kernel.nit:252 */
1260 if (UNTAG_Bool(REGB0)) {
1261 /* ./../lib/standard//kernel.nit:253 */
1262 REGB0 = REGB1;
1263 goto label1;
1264 } else {
1265 /* ./../lib/standard//kernel.nit:236 */
1266 REGB1 = TAG_Int(-UNTAG_Int(REGB1));
1267 /* ./../lib/standard//kernel.nit:255 */
1268 REGB0 = REGB1;
1269 goto label1;
1270 }
1271 label1: while(0);
1272 stack_frame_head = fra.me.prev;
1273 return REGB0;
1274 }
1275 val_t standard___kernel___Int_____leqg(val_t p0, val_t p1){
1276 struct {struct stack_frame_t me;} fra;
1277 val_t REGB0;
1278 val_t REGB1;
1279 val_t REGB2;
1280 val_t REGB3;
1281 val_t tmp;
1282 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1283 fra.me.file = LOCATE_standard___kernel;
1284 fra.me.line = 259;
1285 fra.me.meth = LOCATE_standard___kernel___Int_____leqg;
1286 fra.me.has_broke = 0;
1287 fra.me.REG_size = 0;
1288 REGB0 = p0;
1289 REGB1 = p1;
1290 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1291 if (UNTAG_Bool(REGB2)) {
1292 } else {
1293 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1294 }
1295 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1296 if (UNTAG_Bool(REGB2)) {
1297 } else {
1298 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1299 }
1300 /* ./../lib/standard//kernel.nit:232 */
1301 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1302 /* ./../lib/standard//kernel.nit:261 */
1303 if (UNTAG_Bool(REGB2)) {
1304 /* ./../lib/standard//kernel.nit:262 */
1305 REGB2 = TAG_Int(1);
1306 /* ./../lib/standard//kernel.nit:236 */
1307 REGB2 = TAG_Int(-UNTAG_Int(REGB2));
1308 /* ./../lib/standard//kernel.nit:262 */
1309 goto label1;
1310 } else {
1311 REGB3 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1312 if (UNTAG_Bool(REGB3)) {
1313 } else {
1314 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1315 }
1316 /* ./../lib/standard//kernel.nit:232 */
1317 REGB0 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
1318 /* ./../lib/standard//kernel.nit:263 */
1319 if (UNTAG_Bool(REGB0)) {
1320 /* ./../lib/standard//kernel.nit:264 */
1321 REGB0 = TAG_Int(1);
1322 REGB2 = REGB0;
1323 goto label1;
1324 } else {
1325 /* ./../lib/standard//kernel.nit:266 */
1326 REGB0 = TAG_Int(0);
1327 REGB2 = REGB0;
1328 goto label1;
1329 }
1330 }
1331 label1: while(0);
1332 stack_frame_head = fra.me.prev;
1333 return REGB2;
1334 }
1335 val_t standard___kernel___Int___is_between(val_t p0, val_t p1, val_t p2){
1336 struct {struct stack_frame_t me;} fra;
1337 val_t REGB0;
1338 val_t REGB1;
1339 val_t REGB2;
1340 val_t REGB3;
1341 val_t tmp;
1342 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1343 fra.me.file = LOCATE_standard___kernel;
1344 fra.me.line = 270;
1345 fra.me.meth = LOCATE_standard___kernel___Int___is_between;
1346 fra.me.has_broke = 0;
1347 fra.me.REG_size = 0;
1348 REGB0 = p0;
1349 REGB1 = p1;
1350 REGB2 = p2;
1351 REGB3 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1352 if (UNTAG_Bool(REGB3)) {
1353 } else {
1354 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1355 }
1356 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1357 if (UNTAG_Bool(REGB3)) {
1358 } else {
1359 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1360 }
1361 REGB3 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1362 if (UNTAG_Bool(REGB3)) {
1363 } else {
1364 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1365 }
1366 /* ./../lib/standard//kernel.nit:232 */
1367 REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1368 /* ./../lib/standard//kernel.nit:272 */
1369 if (UNTAG_Bool(REGB1)) {
1370 REGB1 = TAG_Bool(true);
1371 } else {
1372 REGB3 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2), VTID_standard___kernel___Comparable___OTHER(REGB2))) /*cast OTHER*/;
1373 if (UNTAG_Bool(REGB3)) {
1374 } else {
1375 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1376 }
1377 /* ./../lib/standard//kernel.nit:232 */
1378 REGB0 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB0));
1379 /* ./../lib/standard//kernel.nit:272 */
1380 REGB1 = REGB0;
1381 }
1382 if (UNTAG_Bool(REGB1)) {
1383 /* ./../lib/standard//kernel.nit:273 */
1384 REGB1 = TAG_Bool(false);
1385 goto label1;
1386 } else {
1387 /* ./../lib/standard//kernel.nit:275 */
1388 REGB0 = TAG_Bool(true);
1389 REGB1 = REGB0;
1390 goto label1;
1391 }
1392 label1: while(0);
1393 stack_frame_head = fra.me.prev;
1394 return REGB1;
1395 }
1396 val_t standard___kernel___Int___max(val_t p0, val_t p1){
1397 struct {struct stack_frame_t me;} fra;
1398 val_t REGB0;
1399 val_t REGB1;
1400 val_t REGB2;
1401 val_t tmp;
1402 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1403 fra.me.file = LOCATE_standard___kernel;
1404 fra.me.line = 279;
1405 fra.me.meth = LOCATE_standard___kernel___Int___max;
1406 fra.me.has_broke = 0;
1407 fra.me.REG_size = 0;
1408 REGB0 = p0;
1409 REGB1 = p1;
1410 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1411 if (UNTAG_Bool(REGB2)) {
1412 } else {
1413 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1414 }
1415 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1416 if (UNTAG_Bool(REGB2)) {
1417 } else {
1418 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1419 }
1420 /* ./../lib/standard//kernel.nit:232 */
1421 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1422 /* ./../lib/standard//kernel.nit:281 */
1423 if (UNTAG_Bool(REGB2)) {
1424 /* ./../lib/standard//kernel.nit:282 */
1425 goto label1;
1426 } else {
1427 /* ./../lib/standard//kernel.nit:284 */
1428 REGB1 = REGB0;
1429 goto label1;
1430 }
1431 label1: while(0);
1432 stack_frame_head = fra.me.prev;
1433 return REGB1;
1434 }
1435 val_t standard___kernel___Int___min(val_t p0, val_t p1){
1436 struct {struct stack_frame_t me;} fra;
1437 val_t REGB0;
1438 val_t REGB1;
1439 val_t REGB2;
1440 val_t tmp;
1441 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1442 fra.me.file = LOCATE_standard___kernel;
1443 fra.me.line = 288;
1444 fra.me.meth = LOCATE_standard___kernel___Int___min;
1445 fra.me.has_broke = 0;
1446 fra.me.REG_size = 0;
1447 REGB0 = p0;
1448 REGB1 = p1;
1449 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1450 if (UNTAG_Bool(REGB2)) {
1451 } else {
1452 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1453 }
1454 REGB2 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1455 if (UNTAG_Bool(REGB2)) {
1456 } else {
1457 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1458 }
1459 /* ./../lib/standard//kernel.nit:232 */
1460 REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
1461 /* ./../lib/standard//kernel.nit:290 */
1462 if (UNTAG_Bool(REGB2)) {
1463 /* ./../lib/standard//kernel.nit:291 */
1464 goto label1;
1465 } else {
1466 /* ./../lib/standard//kernel.nit:293 */
1467 REGB1 = REGB0;
1468 goto label1;
1469 }
1470 label1: while(0);
1471 stack_frame_head = fra.me.prev;
1472 return REGB1;
1473 }
1474 val_t standard___kernel___Int___ascii(val_t p0){
1475 struct {struct stack_frame_t me;} fra;
1476 val_t REGB0;
1477 val_t tmp;
1478 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1479 fra.me.file = LOCATE_standard___kernel;
1480 fra.me.line = 297;
1481 fra.me.meth = LOCATE_standard___kernel___Int___ascii;
1482 fra.me.has_broke = 0;
1483 fra.me.REG_size = 0;
1484 REGB0 = p0;
1485 /* ./../lib/standard//kernel.nit:297 */
1486 REGB0 = TAG_Char(UNTAG_Int(REGB0));
1487 stack_frame_head = fra.me.prev;
1488 return REGB0;
1489 }
1490 val_t standard___kernel___Int___digit_count(val_t p0, val_t p1){
1491 struct {struct stack_frame_t me;} fra;
1492 val_t REGB0;
1493 val_t REGB1;
1494 val_t REGB2;
1495 val_t REGB3;
1496 val_t REGB4;
1497 val_t REGB5;
1498 val_t tmp;
1499 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1500 fra.me.file = LOCATE_standard___kernel;
1501 fra.me.line = 300;
1502 fra.me.meth = LOCATE_standard___kernel___Int___digit_count;
1503 fra.me.has_broke = 0;
1504 fra.me.REG_size = 0;
1505 REGB0 = p0;
1506 REGB1 = p1;
1507 /* ./../lib/standard//kernel.nit:306 */
1508 REGB2 = TAG_Int(0);
1509 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1510 if (UNTAG_Bool(REGB3)) {
1511 } else {
1512 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1513 }
1514 /* ./../lib/standard//kernel.nit:232 */
1515 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB2));
1516 /* ./../lib/standard//kernel.nit:306 */
1517 if (UNTAG_Bool(REGB2)) {
1518 /* ./../lib/standard//kernel.nit:307 */
1519 REGB2 = TAG_Int(1);
1520 /* ./../lib/standard//kernel.nit:236 */
1521 REGB3 = TAG_Int(-UNTAG_Int(REGB0));
1522 } else {
1523 /* ./../lib/standard//kernel.nit:309 */
1524 REGB4 = TAG_Int(0);
1525 REGB5 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB4));
1526 if (UNTAG_Bool(REGB5)) {
1527 } else {
1528 /* ./../lib/standard//kernel.nit:227 */
1529 REGB4 = TAG_Bool((REGB0)==(REGB4));
1530 /* ./../lib/standard//kernel.nit:309 */
1531 REGB5 = REGB4;
1532 }
1533 if (UNTAG_Bool(REGB5)) {
1534 /* ./../lib/standard//kernel.nit:310 */
1535 REGB5 = TAG_Int(1);
1536 goto label1;
1537 } else {
1538 /* ./../lib/standard//kernel.nit:312 */
1539 REGB4 = TAG_Int(0);
1540 REGB2 = REGB4;
1541 /* ./../lib/standard//kernel.nit:313 */
1542 REGB3 = REGB0;
1543 }
1544 }
1545 /* ./../lib/standard//kernel.nit:316 */
1546 while(1) {
1547 REGB0 = TAG_Int(0);
1548 REGB4 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3), VTID_standard___kernel___Comparable___OTHER(REGB3))) /*cast OTHER*/;
1549 if (UNTAG_Bool(REGB4)) {
1550 } else {
1551 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1552 }
1553 /* ./../lib/standard//kernel.nit:234 */
1554 REGB0 = TAG_Bool(UNTAG_Int(REGB3)>UNTAG_Int(REGB0));
1555 /* ./../lib/standard//kernel.nit:316 */
1556 if (UNTAG_Bool(REGB0)) {
1557 /* ./../lib/standard//kernel.nit:317 */
1558 REGB0 = TAG_Int(1);
1559 /* ./../lib/standard//kernel.nit:235 */
1560 REGB0 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB0));
1561 /* ./../lib/standard//kernel.nit:317 */
1562 REGB2 = REGB0;
1563 /* ./../lib/standard//kernel.nit:239 */
1564 REGB0 = TAG_Int(UNTAG_Int(REGB3)/UNTAG_Int(REGB1));
1565 /* ./../lib/standard//kernel.nit:318 */
1566 REGB3 = REGB0;
1567 } else {
1568 /* ./../lib/standard//kernel.nit:316 */
1569 goto label2;
1570 }
1571 }
1572 label2: while(0);
1573 /* ./../lib/standard//kernel.nit:320 */
1574 REGB5 = REGB2;
1575 goto label1;
1576 label1: while(0);
1577 stack_frame_head = fra.me.prev;
1578 return REGB5;
1579 }
1580 val_t standard___kernel___Int___to_c(val_t p0){
1581 struct {struct stack_frame_t me;} fra;
1582 val_t REGB0;
1583 val_t REGB1;
1584 val_t REGB2;
1585 val_t REGB3;
1586 val_t tmp;
1587 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1588 fra.me.file = LOCATE_standard___kernel;
1589 fra.me.line = 323;
1590 fra.me.meth = LOCATE_standard___kernel___Int___to_c;
1591 fra.me.has_broke = 0;
1592 fra.me.REG_size = 0;
1593 REGB0 = p0;
1594 /* ./../lib/standard//kernel.nit:328 */
1595 REGB1 = TAG_Int(0);
1596 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1597 if (UNTAG_Bool(REGB2)) {
1598 } else {
1599 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1600 }
1601 /* ./../lib/standard//kernel.nit:233 */
1602 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
1603 /* ./../lib/standard//kernel.nit:328 */
1604 if (UNTAG_Bool(REGB1)) {
1605 REGB1 = TAG_Int(36);
1606 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1607 if (UNTAG_Bool(REGB2)) {
1608 } else {
1609 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1610 }
1611 /* ./../lib/standard//kernel.nit:231 */
1612 REGB1 = TAG_Bool(UNTAG_Int(REGB0)<=UNTAG_Int(REGB1));
1613 } else {
1614 /* ./../lib/standard//kernel.nit:328 */
1615 REGB2 = TAG_Bool(false);
1616 REGB1 = REGB2;
1617 }
1618 if (UNTAG_Bool(REGB1)) {
1619 } else {
1620 nit_abort("Assert failed", NULL, LOCATE_standard___kernel, 328);
1621 }
1622 /* ./../lib/standard//kernel.nit:329 */
1623 REGB1 = TAG_Int(10);
1624 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1625 if (UNTAG_Bool(REGB2)) {
1626 } else {
1627 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1628 }
1629 /* ./../lib/standard//kernel.nit:232 */
1630 REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1631 /* ./../lib/standard//kernel.nit:329 */
1632 if (UNTAG_Bool(REGB1)) {
1633 /* ./../lib/standard//kernel.nit:330 */
1634 REGB1 = TAG_Char('0');
1635 /* ./../lib/standard//kernel.nit:413 */
1636 REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB1));
1637 /* ./../lib/standard//kernel.nit:235 */
1638 REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
1639 /* ./../lib/standard//kernel.nit:297 */
1640 REGB1 = TAG_Char(UNTAG_Int(REGB1));
1641 /* ./../lib/standard//kernel.nit:330 */
1642 goto label1;
1643 } else {
1644 /* ./../lib/standard//kernel.nit:332 */
1645 REGB2 = TAG_Char('a');
1646 /* ./../lib/standard//kernel.nit:413 */
1647 REGB2 = TAG_Int((unsigned char)UNTAG_Char(REGB2));
1648 /* ./../lib/standard//kernel.nit:332 */
1649 REGB3 = TAG_Int(10);
1650 /* ./../lib/standard//kernel.nit:237 */
1651 REGB3 = TAG_Int(UNTAG_Int(REGB2)-UNTAG_Int(REGB3));
1652 /* ./../lib/standard//kernel.nit:235 */
1653 REGB3 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB3));
1654 /* ./../lib/standard//kernel.nit:297 */
1655 REGB3 = TAG_Char(UNTAG_Int(REGB3));
1656 /* ./../lib/standard//kernel.nit:332 */
1657 REGB1 = REGB3;
1658 goto label1;
1659 }
1660 label1: while(0);
1661 stack_frame_head = fra.me.prev;
1662 return REGB1;
1663 }
1664 void standard___kernel___Int___enumerate_to(val_t p0, val_t p1, struct stack_frame_t *closctx_param, fun_t clos_fun0){
1665 struct {struct stack_frame_t me;} fra;
1666 val_t REGB0;
1667 val_t REGB1;
1668 val_t REGB2;
1669 fun_t CREG[1];
1670 val_t tmp;
1671 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1672 fra.me.file = LOCATE_standard___kernel;
1673 fra.me.line = 336;
1674 fra.me.meth = LOCATE_standard___kernel___Int___enumerate_to;
1675 fra.me.has_broke = 0;
1676 fra.me.REG_size = 0;
1677 fra.me.closure_ctx = closctx_param;
1678 fra.me.closure_funs = CREG;
1679 REGB0 = p0;
1680 REGB1 = p1;
1681 CREG[0] = clos_fun0;
1682 /* ./../lib/standard//kernel.nit:341 */
1683 while(1) {
1684 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1685 if (UNTAG_Bool(REGB2)) {
1686 } else {
1687 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1688 }
1689 /* ./../lib/standard//kernel.nit:231 */
1690 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<=UNTAG_Int(REGB1));
1691 /* ./../lib/standard//kernel.nit:341 */
1692 if (UNTAG_Bool(REGB2)) {
1693 /* ./../lib/standard//kernel.nit:342 */
1694 ((void (*)(struct stack_frame_t *, val_t))(CREG[0]))(closctx_param, REGB0);
1695 if (closctx_param->has_broke) {
1696 goto label1;
1697 }
1698 /* ./../lib/standard//kernel.nit:343 */
1699 REGB2 = TAG_Int(1);
1700 /* ./../lib/standard//kernel.nit:235 */
1701 REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
1702 /* ./../lib/standard//kernel.nit:343 */
1703 REGB0 = REGB2;
1704 } else {
1705 /* ./../lib/standard//kernel.nit:341 */
1706 goto label2;
1707 }
1708 }
1709 label2: while(0);
1710 label1: while(0);
1711 stack_frame_head = fra.me.prev;
1712 return;
1713 }
1714 void standard___kernel___Int___enumerate_before(val_t p0, val_t p1, struct stack_frame_t *closctx_param, fun_t clos_fun0){
1715 struct {struct stack_frame_t me;} fra;
1716 val_t REGB0;
1717 val_t REGB1;
1718 val_t REGB2;
1719 fun_t CREG[1];
1720 val_t tmp;
1721 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1722 fra.me.file = LOCATE_standard___kernel;
1723 fra.me.line = 347;
1724 fra.me.meth = LOCATE_standard___kernel___Int___enumerate_before;
1725 fra.me.has_broke = 0;
1726 fra.me.REG_size = 0;
1727 fra.me.closure_ctx = closctx_param;
1728 fra.me.closure_funs = CREG;
1729 REGB0 = p0;
1730 REGB1 = p1;
1731 CREG[0] = clos_fun0;
1732 /* ./../lib/standard//kernel.nit:352 */
1733 while(1) {
1734 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1735 if (UNTAG_Bool(REGB2)) {
1736 } else {
1737 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1738 }
1739 /* ./../lib/standard//kernel.nit:232 */
1740 REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
1741 /* ./../lib/standard//kernel.nit:352 */
1742 if (UNTAG_Bool(REGB2)) {
1743 /* ./../lib/standard//kernel.nit:353 */
1744 ((void (*)(struct stack_frame_t *, val_t))(CREG[0]))(closctx_param, REGB0);
1745 if (closctx_param->has_broke) {
1746 goto label1;
1747 }
1748 /* ./../lib/standard//kernel.nit:354 */
1749 REGB2 = TAG_Int(1);
1750 /* ./../lib/standard//kernel.nit:235 */
1751 REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
1752 /* ./../lib/standard//kernel.nit:354 */
1753 REGB0 = REGB2;
1754 } else {
1755 /* ./../lib/standard//kernel.nit:352 */
1756 goto label2;
1757 }
1758 }
1759 label2: while(0);
1760 label1: while(0);
1761 stack_frame_head = fra.me.prev;
1762 return;
1763 }
1764 val_t standard___kernel___Int___abs(val_t p0){
1765 struct {struct stack_frame_t me;} fra;
1766 val_t REGB0;
1767 val_t REGB1;
1768 val_t REGB2;
1769 val_t tmp;
1770 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1771 fra.me.file = LOCATE_standard___kernel;
1772 fra.me.line = 358;
1773 fra.me.meth = LOCATE_standard___kernel___Int___abs;
1774 fra.me.has_broke = 0;
1775 fra.me.REG_size = 0;
1776 REGB0 = p0;
1777 /* ./../lib/standard//kernel.nit:361 */
1778 REGB1 = TAG_Int(0);
1779 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1780 if (UNTAG_Bool(REGB2)) {
1781 } else {
1782 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1783 }
1784 /* ./../lib/standard//kernel.nit:233 */
1785 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
1786 /* ./../lib/standard//kernel.nit:361 */
1787 if (UNTAG_Bool(REGB1)) {
1788 /* ./../lib/standard//kernel.nit:363 */
1789 REGB1 = REGB0;
1790 goto label1;
1791 } else {
1792 /* ./../lib/standard//kernel.nit:365 */
1793 REGB2 = TAG_Int(1);
1794 /* ./../lib/standard//kernel.nit:236 */
1795 REGB2 = TAG_Int(-UNTAG_Int(REGB2));
1796 /* ./../lib/standard//kernel.nit:238 */
1797 REGB0 = TAG_Int(UNTAG_Int(REGB2)*UNTAG_Int(REGB0));
1798 /* ./../lib/standard//kernel.nit:365 */
1799 REGB1 = REGB0;
1800 goto label1;
1801 }
1802 label1: while(0);
1803 stack_frame_head = fra.me.prev;
1804 return REGB1;
1805 }
1806 val_t standard___kernel___Char___object_id(val_t p0){
1807 struct {struct stack_frame_t me;} fra;
1808 val_t REGB0;
1809 val_t tmp;
1810 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1811 fra.me.file = LOCATE_standard___kernel;
1812 fra.me.line = 377;
1813 fra.me.meth = LOCATE_standard___kernel___Char___object_id;
1814 fra.me.has_broke = 0;
1815 fra.me.REG_size = 0;
1816 REGB0 = p0;
1817 /* ./../lib/standard//kernel.nit:377 */
1818 REGB0 = TAG_Int(UNTAG_Char(REGB0));
1819 stack_frame_head = fra.me.prev;
1820 return REGB0;
1821 }
1822 val_t standard___kernel___Char_____eqeq(val_t p0, val_t p1){
1823 struct {struct stack_frame_t me;} fra;
1824 val_t REGB0;
1825 val_t tmp;
1826 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1827 fra.me.file = LOCATE_standard___kernel;
1828 fra.me.line = 378;
1829 fra.me.meth = LOCATE_standard___kernel___Char_____eqeq;
1830 fra.me.has_broke = 0;
1831 fra.me.REG_size = 1;
1832 fra.me.REG[0] = NIT_NULL;
1833 REGB0 = p0;
1834 fra.me.REG[0] = p1;
1835 /* ./../lib/standard//kernel.nit:378 */
1836 REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
1837 stack_frame_head = fra.me.prev;
1838 return REGB0;
1839 }
1840 val_t standard___kernel___Char_____neq(val_t p0, val_t p1){
1841 struct {struct stack_frame_t me;} fra;
1842 val_t REGB0;
1843 val_t tmp;
1844 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1845 fra.me.file = LOCATE_standard___kernel;
1846 fra.me.line = 379;
1847 fra.me.meth = LOCATE_standard___kernel___Char_____neq;
1848 fra.me.has_broke = 0;
1849 fra.me.REG_size = 1;
1850 fra.me.REG[0] = NIT_NULL;
1851 REGB0 = p0;
1852 fra.me.REG[0] = p1;
1853 /* ./../lib/standard//kernel.nit:379 */
1854 REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
1855 stack_frame_head = fra.me.prev;
1856 return REGB0;
1857 }
1858 void standard___kernel___Char___output(val_t p0){
1859 struct {struct stack_frame_t me;} fra;
1860 val_t REGB0;
1861 val_t tmp;
1862 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1863 fra.me.file = LOCATE_standard___kernel;
1864 fra.me.line = 380;
1865 fra.me.meth = LOCATE_standard___kernel___Char___output;
1866 fra.me.has_broke = 0;
1867 fra.me.REG_size = 0;
1868 REGB0 = p0;
1869 /* ./../lib/standard//kernel.nit:380 */
1870 printf("%c", (unsigned char)UNTAG_Char(REGB0));;
1871 stack_frame_head = fra.me.prev;
1872 return;
1873 }
1874 val_t standard___kernel___Char_____leq(val_t p0, val_t p1){
1875 struct {struct stack_frame_t me;} fra;
1876 val_t REGB0;
1877 val_t REGB1;
1878 val_t REGB2;
1879 val_t tmp;
1880 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1881 fra.me.file = LOCATE_standard___kernel;
1882 fra.me.line = 382;
1883 fra.me.meth = LOCATE_standard___kernel___Char_____leq;
1884 fra.me.has_broke = 0;
1885 fra.me.REG_size = 0;
1886 REGB0 = p0;
1887 REGB1 = p1;
1888 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1889 if (UNTAG_Bool(REGB2)) {
1890 } else {
1891 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1892 }
1893 /* ./../lib/standard//kernel.nit:382 */
1894 REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
1895 stack_frame_head = fra.me.prev;
1896 return REGB1;
1897 }
1898 val_t standard___kernel___Char_____l(val_t p0, val_t p1){
1899 struct {struct stack_frame_t me;} fra;
1900 val_t REGB0;
1901 val_t REGB1;
1902 val_t REGB2;
1903 val_t tmp;
1904 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1905 fra.me.file = LOCATE_standard___kernel;
1906 fra.me.line = 383;
1907 fra.me.meth = LOCATE_standard___kernel___Char_____l;
1908 fra.me.has_broke = 0;
1909 fra.me.REG_size = 0;
1910 REGB0 = p0;
1911 REGB1 = p1;
1912 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1913 if (UNTAG_Bool(REGB2)) {
1914 } else {
1915 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1916 }
1917 /* ./../lib/standard//kernel.nit:383 */
1918 REGB1 = TAG_Bool(UNTAG_Char(REGB0)<UNTAG_Char(REGB1));
1919 stack_frame_head = fra.me.prev;
1920 return REGB1;
1921 }
1922 val_t standard___kernel___Char_____geq(val_t p0, val_t p1){
1923 struct {struct stack_frame_t me;} fra;
1924 val_t REGB0;
1925 val_t REGB1;
1926 val_t REGB2;
1927 val_t tmp;
1928 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1929 fra.me.file = LOCATE_standard___kernel;
1930 fra.me.line = 384;
1931 fra.me.meth = LOCATE_standard___kernel___Char_____geq;
1932 fra.me.has_broke = 0;
1933 fra.me.REG_size = 0;
1934 REGB0 = p0;
1935 REGB1 = p1;
1936 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1937 if (UNTAG_Bool(REGB2)) {
1938 } else {
1939 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1940 }
1941 /* ./../lib/standard//kernel.nit:384 */
1942 REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
1943 stack_frame_head = fra.me.prev;
1944 return REGB1;
1945 }
1946 val_t standard___kernel___Char_____g(val_t p0, val_t p1){
1947 struct {struct stack_frame_t me;} fra;
1948 val_t REGB0;
1949 val_t REGB1;
1950 val_t REGB2;
1951 val_t tmp;
1952 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1953 fra.me.file = LOCATE_standard___kernel;
1954 fra.me.line = 385;
1955 fra.me.meth = LOCATE_standard___kernel___Char_____g;
1956 fra.me.has_broke = 0;
1957 fra.me.REG_size = 0;
1958 REGB0 = p0;
1959 REGB1 = p1;
1960 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
1961 if (UNTAG_Bool(REGB2)) {
1962 } else {
1963 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1964 }
1965 /* ./../lib/standard//kernel.nit:385 */
1966 REGB1 = TAG_Bool(UNTAG_Char(REGB0)>UNTAG_Char(REGB1));
1967 stack_frame_head = fra.me.prev;
1968 return REGB1;
1969 }
1970 val_t standard___kernel___Char___succ(val_t p0){
1971 struct {struct stack_frame_t me;} fra;
1972 val_t REGB0;
1973 val_t tmp;
1974 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1975 fra.me.file = LOCATE_standard___kernel;
1976 fra.me.line = 387;
1977 fra.me.meth = LOCATE_standard___kernel___Char___succ;
1978 fra.me.has_broke = 0;
1979 fra.me.REG_size = 0;
1980 REGB0 = p0;
1981 /* ./../lib/standard//kernel.nit:387 */
1982 REGB0 = TAG_Char(UNTAG_Char(REGB0)+1);
1983 stack_frame_head = fra.me.prev;
1984 return REGB0;
1985 }
1986 val_t standard___kernel___Char___prec(val_t p0){
1987 struct {struct stack_frame_t me;} fra;
1988 val_t REGB0;
1989 val_t tmp;
1990 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1991 fra.me.file = LOCATE_standard___kernel;
1992 fra.me.line = 388;
1993 fra.me.meth = LOCATE_standard___kernel___Char___prec;
1994 fra.me.has_broke = 0;
1995 fra.me.REG_size = 0;
1996 REGB0 = p0;
1997 /* ./../lib/standard//kernel.nit:388 */
1998 REGB0 = TAG_Char(UNTAG_Char(REGB0)-1);
1999 stack_frame_head = fra.me.prev;
2000 return REGB0;
2001 }
2002 val_t standard___kernel___Char___distance(val_t p0, val_t p1){
2003 struct {struct stack_frame_t me;} fra;
2004 val_t REGB0;
2005 val_t REGB1;
2006 val_t REGB2;
2007 val_t tmp;
2008 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2009 fra.me.file = LOCATE_standard___kernel;
2010 fra.me.line = 390;
2011 fra.me.meth = LOCATE_standard___kernel___Char___distance;
2012 fra.me.has_broke = 0;
2013 fra.me.REG_size = 0;
2014 REGB0 = p0;
2015 REGB1 = p1;
2016 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2017 if (UNTAG_Bool(REGB2)) {
2018 } else {
2019 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2020 }
2021 /* ./../lib/standard//kernel.nit:413 */
2022 REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2023 REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB1));
2024 /* ./../lib/standard//kernel.nit:237 */
2025 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
2026 /* ./../lib/standard//kernel.nit:393 */
2027 REGB0 = TAG_Int(0);
2028 REGB2 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
2029 if (UNTAG_Bool(REGB2)) {
2030 } else {
2031 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2032 }
2033 /* ./../lib/standard//kernel.nit:233 */
2034 REGB0 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB0));
2035 /* ./../lib/standard//kernel.nit:393 */
2036 if (UNTAG_Bool(REGB0)) {
2037 /* ./../lib/standard//kernel.nit:394 */
2038 REGB0 = REGB1;
2039 goto label1;
2040 } else {
2041 /* ./../lib/standard//kernel.nit:236 */
2042 REGB1 = TAG_Int(-UNTAG_Int(REGB1));
2043 /* ./../lib/standard//kernel.nit:396 */
2044 REGB0 = REGB1;
2045 goto label1;
2046 }
2047 label1: while(0);
2048 stack_frame_head = fra.me.prev;
2049 return REGB0;
2050 }
2051 val_t standard___kernel___Char___to_i(val_t p0){
2052 struct {struct stack_frame_t me;} fra;
2053 val_t REGB0;
2054 val_t REGB1;
2055 val_t REGB2;
2056 val_t REGB3;
2057 val_t tmp;
2058 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2059 fra.me.file = LOCATE_standard___kernel;
2060 fra.me.line = 400;
2061 fra.me.meth = LOCATE_standard___kernel___Char___to_i;
2062 fra.me.has_broke = 0;
2063 fra.me.REG_size = 0;
2064 REGB0 = p0;
2065 /* ./../lib/standard//kernel.nit:404 */
2066 REGB1 = TAG_Char('-');
2067 REGB2 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB1));
2068 if (UNTAG_Bool(REGB2)) {
2069 } else {
2070 /* ./../lib/standard//kernel.nit:378 */
2071 REGB1 = TAG_Bool((REGB0)==(REGB1));
2072 /* ./../lib/standard//kernel.nit:404 */
2073 REGB2 = REGB1;
2074 }
2075 if (UNTAG_Bool(REGB2)) {
2076 /* ./../lib/standard//kernel.nit:405 */
2077 REGB2 = TAG_Int(1);
2078 /* ./../lib/standard//kernel.nit:236 */
2079 REGB2 = TAG_Int(-UNTAG_Int(REGB2));
2080 /* ./../lib/standard//kernel.nit:405 */
2081 goto label1;
2082 } else {
2083 /* ./../lib/standard//kernel.nit:406 */
2084 REGB1 = CALL_standard___kernel___Char___is_digit(REGB0)(REGB0);
2085 if (UNTAG_Bool(REGB1)) {
2086 /* ./../lib/standard//kernel.nit:413 */
2087 REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2088 /* ./../lib/standard//kernel.nit:407 */
2089 REGB3 = TAG_Char('0');
2090 /* ./../lib/standard//kernel.nit:413 */
2091 REGB3 = TAG_Int((unsigned char)UNTAG_Char(REGB3));
2092 /* ./../lib/standard//kernel.nit:237 */
2093 REGB3 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB3));
2094 /* ./../lib/standard//kernel.nit:407 */
2095 REGB2 = REGB3;
2096 goto label1;
2097 } else {
2098 /* ./../lib/standard//kernel.nit:409 */
2099 REGB0 = CALL_standard___kernel___Char___to_lower(REGB0)(REGB0);
2100 /* ./../lib/standard//kernel.nit:413 */
2101 REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2102 /* ./../lib/standard//kernel.nit:409 */
2103 REGB3 = TAG_Char('a');
2104 /* ./../lib/standard//kernel.nit:413 */
2105 REGB3 = TAG_Int((unsigned char)UNTAG_Char(REGB3));
2106 /* ./../lib/standard//kernel.nit:409 */
2107 REGB1 = TAG_Int(10);
2108 /* ./../lib/standard//kernel.nit:235 */
2109 REGB1 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB1));
2110 /* ./../lib/standard//kernel.nit:237 */
2111 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
2112 /* ./../lib/standard//kernel.nit:409 */
2113 REGB2 = REGB1;
2114 goto label1;
2115 }
2116 }
2117 label1: while(0);
2118 stack_frame_head = fra.me.prev;
2119 return REGB2;
2120 }
2121 val_t standard___kernel___Char___ascii(val_t p0){
2122 struct {struct stack_frame_t me;} fra;
2123 val_t REGB0;
2124 val_t tmp;
2125 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2126 fra.me.file = LOCATE_standard___kernel;
2127 fra.me.line = 413;
2128 fra.me.meth = LOCATE_standard___kernel___Char___ascii;
2129 fra.me.has_broke = 0;
2130 fra.me.REG_size = 0;
2131 REGB0 = p0;
2132 /* ./../lib/standard//kernel.nit:413 */
2133 REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2134 stack_frame_head = fra.me.prev;
2135 return REGB0;
2136 }
2137 val_t standard___kernel___Char_____plus(val_t p0, val_t p1){
2138 struct {struct stack_frame_t me;} fra;
2139 val_t REGB0;
2140 val_t REGB1;
2141 val_t tmp;
2142 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2143 fra.me.file = LOCATE_standard___kernel;
2144 fra.me.line = 416;
2145 fra.me.meth = LOCATE_standard___kernel___Char_____plus;
2146 fra.me.has_broke = 0;
2147 fra.me.REG_size = 0;
2148 REGB0 = p0;
2149 REGB1 = p1;
2150 /* ./../lib/standard//kernel.nit:416 */
2151 REGB1 = TAG_Char(UNTAG_Char(REGB0)+UNTAG_Char(REGB1));
2152 stack_frame_head = fra.me.prev;
2153 return REGB1;
2154 }
2155 val_t standard___kernel___Char_____minus(val_t p0, val_t p1){
2156 struct {struct stack_frame_t me;} fra;
2157 val_t REGB0;
2158 val_t REGB1;
2159 val_t tmp;
2160 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2161 fra.me.file = LOCATE_standard___kernel;
2162 fra.me.line = 417;
2163 fra.me.meth = LOCATE_standard___kernel___Char_____minus;
2164 fra.me.has_broke = 0;
2165 fra.me.REG_size = 0;
2166 REGB0 = p0;
2167 REGB1 = p1;
2168 /* ./../lib/standard//kernel.nit:417 */
2169 REGB1 = TAG_Char(UNTAG_Char(REGB0)-UNTAG_Char(REGB1));
2170 stack_frame_head = fra.me.prev;
2171 return REGB1;
2172 }
2173 val_t standard___kernel___Char___to_lower(val_t p0){
2174 struct {struct stack_frame_t me;} fra;
2175 val_t REGB0;
2176 val_t REGB1;
2177 val_t REGB2;
2178 val_t REGB3;
2179 val_t tmp;
2180 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2181 fra.me.file = LOCATE_standard___kernel;
2182 fra.me.line = 419;
2183 fra.me.meth = LOCATE_standard___kernel___Char___to_lower;
2184 fra.me.has_broke = 0;
2185 fra.me.REG_size = 0;
2186 REGB0 = p0;
2187 /* ./../lib/standard//kernel.nit:423 */
2188 REGB1 = CALL_standard___kernel___Char___is_upper(REGB0)(REGB0);
2189 if (UNTAG_Bool(REGB1)) {
2190 /* ./../lib/standard//kernel.nit:413 */
2191 REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2192 /* ./../lib/standard//kernel.nit:424 */
2193 REGB2 = TAG_Char('a');
2194 REGB3 = TAG_Char('A');
2195 REGB3 = CALL_standard___kernel___Discrete___distance(REGB2)(REGB2, REGB3);
2196 /* ./../lib/standard//kernel.nit:235 */
2197 REGB3 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB3));
2198 /* ./../lib/standard//kernel.nit:297 */
2199 REGB3 = TAG_Char(UNTAG_Int(REGB3));
2200 /* ./../lib/standard//kernel.nit:424 */
2201 goto label1;
2202 } else {
2203 /* ./../lib/standard//kernel.nit:426 */
2204 REGB3 = REGB0;
2205 goto label1;
2206 }
2207 label1: while(0);
2208 stack_frame_head = fra.me.prev;
2209 return REGB3;
2210 }
2211 val_t standard___kernel___Char___to_upper(val_t p0){
2212 struct {struct stack_frame_t me;} fra;
2213 val_t REGB0;
2214 val_t REGB1;
2215 val_t REGB2;
2216 val_t REGB3;
2217 val_t tmp;
2218 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2219 fra.me.file = LOCATE_standard___kernel;
2220 fra.me.line = 430;
2221 fra.me.meth = LOCATE_standard___kernel___Char___to_upper;
2222 fra.me.has_broke = 0;
2223 fra.me.REG_size = 0;
2224 REGB0 = p0;
2225 /* ./../lib/standard//kernel.nit:434 */
2226 REGB1 = CALL_standard___kernel___Char___is_lower(REGB0)(REGB0);
2227 if (UNTAG_Bool(REGB1)) {
2228 /* ./../lib/standard//kernel.nit:413 */
2229 REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
2230 /* ./../lib/standard//kernel.nit:435 */
2231 REGB2 = TAG_Char('a');
2232 REGB3 = TAG_Char('A');
2233 REGB3 = CALL_standard___kernel___Discrete___distance(REGB2)(REGB2, REGB3);
2234 /* ./../lib/standard//kernel.nit:237 */
2235 REGB3 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB3));
2236 /* ./../lib/standard//kernel.nit:297 */
2237 REGB3 = TAG_Char(UNTAG_Int(REGB3));
2238 /* ./../lib/standard//kernel.nit:435 */
2239 goto label1;
2240 } else {
2241 /* ./../lib/standard//kernel.nit:437 */
2242 REGB3 = REGB0;
2243 goto label1;
2244 }
2245 label1: while(0);
2246 stack_frame_head = fra.me.prev;
2247 return REGB3;
2248 }
2249 val_t standard___kernel___Char___is_digit(val_t p0){
2250 struct {struct stack_frame_t me;} fra;
2251 val_t REGB0;
2252 val_t REGB1;
2253 val_t REGB2;
2254 val_t tmp;
2255 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2256 fra.me.file = LOCATE_standard___kernel;
2257 fra.me.line = 441;
2258 fra.me.meth = LOCATE_standard___kernel___Char___is_digit;
2259 fra.me.has_broke = 0;
2260 fra.me.REG_size = 0;
2261 REGB0 = p0;
2262 /* ./../lib/standard//kernel.nit:444 */
2263 REGB1 = TAG_Char('0');
2264 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2265 if (UNTAG_Bool(REGB2)) {
2266 } else {
2267 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2268 }
2269 /* ./../lib/standard//kernel.nit:384 */
2270 REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
2271 /* ./../lib/standard//kernel.nit:444 */
2272 if (UNTAG_Bool(REGB1)) {
2273 REGB1 = TAG_Char('9');
2274 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2275 if (UNTAG_Bool(REGB2)) {
2276 } else {
2277 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2278 }
2279 /* ./../lib/standard//kernel.nit:382 */
2280 REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
2281 } else {
2282 /* ./../lib/standard//kernel.nit:444 */
2283 REGB0 = TAG_Bool(false);
2284 REGB1 = REGB0;
2285 }
2286 goto label1;
2287 label1: while(0);
2288 stack_frame_head = fra.me.prev;
2289 return REGB1;
2290 }
2291 val_t standard___kernel___Char___is_lower(val_t p0){
2292 struct {struct stack_frame_t me;} fra;
2293 val_t REGB0;
2294 val_t REGB1;
2295 val_t REGB2;
2296 val_t tmp;
2297 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2298 fra.me.file = LOCATE_standard___kernel;
2299 fra.me.line = 447;
2300 fra.me.meth = LOCATE_standard___kernel___Char___is_lower;
2301 fra.me.has_broke = 0;
2302 fra.me.REG_size = 0;
2303 REGB0 = p0;
2304 /* ./../lib/standard//kernel.nit:450 */
2305 REGB1 = TAG_Char('a');
2306 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2307 if (UNTAG_Bool(REGB2)) {
2308 } else {
2309 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2310 }
2311 /* ./../lib/standard//kernel.nit:384 */
2312 REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
2313 /* ./../lib/standard//kernel.nit:450 */
2314 if (UNTAG_Bool(REGB1)) {
2315 REGB1 = TAG_Char('z');
2316 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2317 if (UNTAG_Bool(REGB2)) {
2318 } else {
2319 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2320 }
2321 /* ./../lib/standard//kernel.nit:382 */
2322 REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
2323 } else {
2324 /* ./../lib/standard//kernel.nit:450 */
2325 REGB0 = TAG_Bool(false);
2326 REGB1 = REGB0;
2327 }
2328 goto label1;
2329 label1: while(0);
2330 stack_frame_head = fra.me.prev;
2331 return REGB1;
2332 }
2333 val_t standard___kernel___Char___is_upper(val_t p0){
2334 struct {struct stack_frame_t me;} fra;
2335 val_t REGB0;
2336 val_t REGB1;
2337 val_t REGB2;
2338 val_t tmp;
2339 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2340 fra.me.file = LOCATE_standard___kernel;
2341 fra.me.line = 453;
2342 fra.me.meth = LOCATE_standard___kernel___Char___is_upper;
2343 fra.me.has_broke = 0;
2344 fra.me.REG_size = 0;
2345 REGB0 = p0;
2346 /* ./../lib/standard//kernel.nit:456 */
2347 REGB1 = TAG_Char('A');
2348 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2349 if (UNTAG_Bool(REGB2)) {
2350 } else {
2351 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2352 }
2353 /* ./../lib/standard//kernel.nit:384 */
2354 REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
2355 /* ./../lib/standard//kernel.nit:456 */
2356 if (UNTAG_Bool(REGB1)) {
2357 REGB1 = TAG_Char('Z');
2358 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
2359 if (UNTAG_Bool(REGB2)) {
2360 } else {
2361 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
2362 }
2363 /* ./../lib/standard//kernel.nit:382 */
2364 REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
2365 } else {
2366 /* ./../lib/standard//kernel.nit:456 */
2367 REGB0 = TAG_Bool(false);
2368 REGB1 = REGB0;
2369 }
2370 goto label1;
2371 label1: while(0);
2372 stack_frame_head = fra.me.prev;
2373 return REGB1;
2374 }
2375 val_t standard___kernel___Char___is_letter(val_t p0){
2376 struct {struct stack_frame_t me;} fra;
2377 val_t REGB0;
2378 val_t REGB1;
2379 val_t tmp;
2380 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2381 fra.me.file = LOCATE_standard___kernel;
2382 fra.me.line = 459;
2383 fra.me.meth = LOCATE_standard___kernel___Char___is_letter;
2384 fra.me.has_broke = 0;
2385 fra.me.REG_size = 0;
2386 REGB0 = p0;
2387 /* ./../lib/standard//kernel.nit:462 */
2388 REGB1 = CALL_standard___kernel___Char___is_lower(REGB0)(REGB0);
2389 if (UNTAG_Bool(REGB1)) {
2390 REGB1 = TAG_Bool(true);
2391 } else {
2392 REGB0 = CALL_standard___kernel___Char___is_upper(REGB0)(REGB0);
2393 REGB1 = REGB0;
2394 }
2395 goto label1;
2396 label1: while(0);
2397 stack_frame_head = fra.me.prev;
2398 return REGB1;
2399 }