/* This C file is generated by NIT to compile module kernel. */
#include "kernel._sep.h"
-val_t kernel___Object___object_id(val_t self) {
- struct trace_t trace = {NULL, NULL, 26, LOCATE_kernel___Object___object_id};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int((bigint) self);
-}
-val_t kernel___Object___is_same_type(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 29, LOCATE_kernel___Object___is_same_type};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool((VAL2VFT( self)==VAL2VFT( param0)));
-}
-val_t kernel___Object_____eqeq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 32, LOCATE_kernel___Object_____eqeq};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool(IS_EQUAL_NN(variable[0], variable[1] /*other*/));
- variable[2] = variable[3];
- goto return_label0;
- return_label0: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Object_____neq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 37, LOCATE_kernel___Object_____neq};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool((variable[0] == variable[1] /*other*/) || ((variable[0] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[0])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[0], variable[1] /*other*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[0])(variable[0], variable[1] /*other*/) /*Object::==*/)))));
- variable[2] = TAG_Bool(!UNTAG_Bool(variable[3]));
- goto return_label1;
- return_label1: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-void kernel___Object___output(val_t self) {
- struct trace_t trace = {NULL, NULL, 42, LOCATE_kernel___Object___output};
- val_t variable[3];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- printf("%c", (unsigned char)UNTAG_Char( TAG_Char('<')));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((bigint)variable[0]);
- printf("%ld\n", UNTAG_Int(variable[2]));
- printf("%c", (unsigned char)UNTAG_Char( TAG_Char('>')));
- return_label2: while(false);
- tracehead = trace.prev;
+val_t kernel___Object___object_id(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 26;
+ fra.me.meth = LOCATE_kernel___Object___object_id;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Int((bigint)((obj_t)fra.me.REG[0])[1].object_id);
+ /* ./../lib/standard//kernel.nit:26 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Object___is_same_type(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 29;
+ fra.me.meth = LOCATE_kernel___Object___is_same_type;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool((VAL2VFT(fra.me.REG[0])==VAL2VFT(fra.me.REG[1])));
+ /* ./../lib/standard//kernel.nit:29 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Object_____eqeq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 32;
+ fra.me.meth = LOCATE_kernel___Object_____eqeq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[0],fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:35 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Object_____neq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 37;
+ fra.me.meth = LOCATE_kernel___Object_____neq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[0],fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:40 */
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ REGB0 = REGB1;
+ }
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+void kernel___Object___output(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 42;
+ fra.me.meth = LOCATE_kernel___Object___output;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Char('<');
+ /* ./../lib/standard//kernel.nit:327 */
+ printf("%c", (unsigned char)UNTAG_Char(REGB0));;
+ REGB0 = CALL_kernel___Object___object_id(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:209 */
+ printf("%ld\n", UNTAG_Int(REGB0));;
+ REGB0 = TAG_Char('>');
+ /* ./../lib/standard//kernel.nit:327 */
+ printf("%c", (unsigned char)UNTAG_Char(REGB0));;
+ stack_frame_head = fra.me.prev;
return;
}
-void kernel___Object___exit(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 50, LOCATE_kernel___Object___exit};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- exit(UNTAG_Int( param0));
- tracehead = trace.prev;
+void kernel___Object___exit(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 50;
+ fra.me.meth = LOCATE_kernel___Object___exit;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p1;
+ /* ./../lib/standard//kernel.nit:50 */
+ exit(UNTAG_Int(REGB0));;
+ stack_frame_head = fra.me.prev;
return;
}
-val_t kernel___Object___sys(val_t self) {
- struct trace_t trace = {NULL, NULL, 51, LOCATE_kernel___Object___sys};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return (G_sys);
-}
-void kernel___Sys___main(val_t self) {
- struct trace_t trace = {NULL, NULL, 56, LOCATE_kernel___Sys___main};
- val_t variable[2];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- return_label3: while(false);
- tracehead = trace.prev;
+val_t kernel___Object___sys(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 51;
+ fra.me.meth = LOCATE_kernel___Object___sys;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[0] = (G_sys);
+ /* ./../lib/standard//kernel.nit:51 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+void kernel___Sys___main(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 56;
+ fra.me.meth = LOCATE_kernel___Sys___main;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./../lib/standard//kernel.nit:56 */
+ stack_frame_head = fra.me.prev;
return;
}
-void kernel___Sys___init(val_t self, int* init_table) {
- struct trace_t trace = {NULL, NULL, 0, LOCATE_kernel___Sys___init};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
+void kernel___Sys___init(val_t p0, int* init_table){
+ int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_Sys].i;
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ if (init_table[itpos0]) return;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_kernel___Sys___init;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ stack_frame_head = fra.me.prev;
+ init_table[itpos0] = 1;
return;
}
-val_t kernel___Comparable_____l(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 69, LOCATE_kernel___Comparable_____l};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
+val_t kernel___Comparable_____l(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 69;
+ fra.me.meth = LOCATE_kernel___Comparable_____l;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ /* ./../lib/standard//kernel.nit:69 */
fprintf(stderr, "Deferred method called");
fprintf(stderr, " (%s:%d)\n", LOCATE_kernel, 69);
nit_exit(1);
- tracehead = trace.prev;
+ stack_frame_head = fra.me.prev;
return NIT_NULL;
}
-val_t kernel___Comparable_____leq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 72, LOCATE_kernel___Comparable_____leq};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l( variable[1] /*other*/)( variable[1] /*other*/, variable[0]) /*Comparable::<*/;
- variable[2] = TAG_Bool(!UNTAG_Bool(variable[3]));
- goto return_label4;
- return_label4: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Comparable_____geq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 75, LOCATE_kernel___Comparable_____geq};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l(variable[0])(variable[0], variable[1] /*other*/) /*Comparable::<*/;
- variable[2] = TAG_Bool(!UNTAG_Bool(variable[3]));
- goto return_label5;
- return_label5: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Comparable_____g(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 78, LOCATE_kernel___Comparable_____g};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l( variable[1] /*other*/)( variable[1] /*other*/, variable[0]) /*Comparable::<*/;
- variable[2] = variable[3];
- goto return_label6;
- return_label6: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Comparable_____leqg(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 81, LOCATE_kernel___Comparable_____leqg};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l(variable[0])(variable[0], variable[1] /*other*/) /*Comparable::<*/;
- if (UNTAG_Bool(variable[3])) { /*if*/
- /* Register variable[3]: Result */
- variable[3] = TAG_Int(-UNTAG_Int( TAG_Int(1)));
- variable[2] = variable[3];
- goto return_label7;
- } else { /*if*/
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l( variable[1] /*other*/)( variable[1] /*other*/, variable[0]) /*Comparable::<*/;
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = TAG_Int(1);
- goto return_label7;
- } else { /*if*/
- variable[2] = TAG_Int(0);
- goto return_label7;
+val_t kernel___Comparable_____leq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 72;
+ fra.me.meth = LOCATE_kernel___Comparable_____leq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ /* ./../lib/standard//kernel.nit:73 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Comparable_____geq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 75;
+ fra.me.meth = LOCATE_kernel___Comparable_____geq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ /* ./../lib/standard//kernel.nit:76 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Comparable_____g(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 78;
+ fra.me.meth = LOCATE_kernel___Comparable_____g;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:79 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Comparable_____leqg(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 81;
+ fra.me.meth = LOCATE_kernel___Comparable_____leqg;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ /* ./../lib/standard//kernel.nit:84 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Int(1);
+ REGB0 = TAG_Int(-UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:85 */
+ goto label1;
+ } else {
+ REGB1 = CALL_kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:86 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Int(1);
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:87 */
+ goto label1;
+ } else {
+ REGB1 = TAG_Int(0);
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:89 */
+ goto label1;
}
}
- return_label7: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Comparable___is_between(val_t self, val_t param0, val_t param1) {
- struct trace_t trace = {NULL, NULL, 93, LOCATE_kernel___Comparable___is_between};
- val_t variable[5];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Local variable */
- variable[2] = param1;
- /* Register variable[3]: Method return value and escape marker */
- /* Register variable[4]: Result */
- variable[4] = CALL_kernel___Comparable_____leq( variable[1] /*c*/)( variable[1] /*c*/, variable[0]) /*Comparable::<=*/;
- /* Ensure var variable[4]: Left 'and' operand*/
- if (UNTAG_Bool(variable[4])) { /* and */
- /* Register variable[4]: Result */
- variable[4] = CALL_kernel___Comparable_____leq(variable[0])(variable[0], variable[2] /*d*/) /*Comparable::<=*/;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Comparable___is_between(val_t p0, val_t p1, val_t p2){
+ struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 93;
+ fra.me.meth = LOCATE_kernel___Comparable___is_between;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 3;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[2] = p2;
+ REGB0 = CALL_kernel___Comparable_____leq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:96 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = CALL_kernel___Comparable_____leq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
+ } else {
+ REGB1 = TAG_Bool(false);
+ REGB0 = REGB1;
}
- /* Register variable[4]: Result */
- variable[3] = variable[4];
- goto return_label8;
- return_label8: while(false);
- tracehead = trace.prev;
- return variable[3];
-}
-val_t kernel___Comparable___max(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 99, LOCATE_kernel___Comparable___max};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l(variable[0])(variable[0], variable[1] /*other*/) /*Comparable::<*/;
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = variable[1] /*other*/;
- goto return_label9;
- } else { /*if*/
- variable[2] = variable[0];
- goto return_label9;
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Comparable___max(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 99;
+ fra.me.meth = LOCATE_kernel___Comparable___max;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ /* ./../lib/standard//kernel.nit:102 */
+ if (UNTAG_Bool(REGB0)) {
+ /* ./../lib/standard//kernel.nit:103 */
+ goto label1;
+ } else {
+ fra.me.REG[1] = fra.me.REG[0];
+ /* ./../lib/standard//kernel.nit:105 */
+ goto label1;
}
- return_label9: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Comparable___min(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 109, LOCATE_kernel___Comparable___min};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Comparable_____l( variable[1] /*c*/)( variable[1] /*c*/, variable[0]) /*Comparable::<*/;
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = variable[1] /*c*/;
- goto return_label10;
- } else { /*if*/
- variable[2] = variable[0];
- goto return_label10;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Comparable___min(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 109;
+ fra.me.meth = LOCATE_kernel___Comparable___min;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:112 */
+ if (UNTAG_Bool(REGB0)) {
+ /* ./../lib/standard//kernel.nit:113 */
+ goto label1;
+ } else {
+ fra.me.REG[1] = fra.me.REG[0];
+ /* ./../lib/standard//kernel.nit:115 */
+ goto label1;
}
- return_label10: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Discrete___succ(val_t self) {
- struct trace_t trace = {NULL, NULL, 126, LOCATE_kernel___Discrete___succ};
- val_t variable[3];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = CALL_kernel___Discrete_____plus(variable[0])(variable[0], TAG_Int(1)) /*Discrete::+*/;
- variable[1] = variable[2];
- goto return_label11;
- return_label11: while(false);
- tracehead = trace.prev;
- return variable[1];
-}
-val_t kernel___Discrete___prec(val_t self) {
- struct trace_t trace = {NULL, NULL, 129, LOCATE_kernel___Discrete___prec};
- val_t variable[3];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = CALL_kernel___Discrete_____minus(variable[0])(variable[0], TAG_Int(1)) /*Discrete::-*/;
- variable[1] = variable[2];
- goto return_label12;
- return_label12: while(false);
- tracehead = trace.prev;
- return variable[1];
-}
-val_t kernel___Discrete_____plus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 132, LOCATE_kernel___Discrete_____plus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Discrete___succ(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 126;
+ fra.me.meth = LOCATE_kernel___Discrete___succ;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Int(1);
+ fra.me.REG[0] = CALL_kernel___Discrete_____plus(fra.me.REG[0])(fra.me.REG[0], REGB0);
+ /* ./../lib/standard//kernel.nit:127 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+val_t kernel___Discrete___prec(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 129;
+ fra.me.meth = LOCATE_kernel___Discrete___prec;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Int(1);
+ fra.me.REG[0] = CALL_kernel___Discrete_____minus(fra.me.REG[0])(fra.me.REG[0], REGB0);
+ /* ./../lib/standard//kernel.nit:130 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+val_t kernel___Discrete_____plus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 132;
+ fra.me.meth = LOCATE_kernel___Discrete_____plus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ /* ./../lib/standard//kernel.nit:132 */
fprintf(stderr, "Deferred method called");
fprintf(stderr, " (%s:%d)\n", LOCATE_kernel, 132);
nit_exit(1);
- tracehead = trace.prev;
+ stack_frame_head = fra.me.prev;
return NIT_NULL;
}
-val_t kernel___Discrete_____minus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 135, LOCATE_kernel___Discrete_____minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
+val_t kernel___Discrete_____minus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 135;
+ fra.me.meth = LOCATE_kernel___Discrete_____minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ /* ./../lib/standard//kernel.nit:135 */
fprintf(stderr, "Deferred method called");
fprintf(stderr, " (%s:%d)\n", LOCATE_kernel, 135);
nit_exit(1);
- tracehead = trace.prev;
+ stack_frame_head = fra.me.prev;
return NIT_NULL;
}
-val_t kernel___Discrete___distance(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 138, LOCATE_kernel___Discrete___distance};
- val_t variable[7];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Local variable */
- /*variable[3] is variable cursor*/
- /* Register variable[4]: Local variable */
- /*variable[4] is variable stop*/
- /* Register variable[5]: Result */
- variable[5] = CALL_kernel___Comparable_____l(variable[0])(variable[0], variable[1] /*d*/) /*Comparable::<*/;
- if (UNTAG_Bool(variable[5])) { /*if*/
- variable[3] = variable[0] /*cursor=*/;
- variable[4] = variable[1] /*d*/ /*stop=*/;
- } else { /*if*/
- /* Register variable[5]: Result */
- variable[5] = CALL_kernel___Comparable_____g(variable[0])(variable[0], variable[1] /*d*/) /*Comparable::>*/;
- if (UNTAG_Bool(variable[5])) { /*if*/
- variable[3] = variable[1] /*d*/ /*cursor=*/;
- variable[4] = variable[0] /*stop=*/;
- } else { /*if*/
- variable[2] = TAG_Int(0);
- goto return_label13;
+val_t kernel___Discrete___distance(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 138;
+ fra.me.meth = LOCATE_kernel___Discrete___distance;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 4;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[3] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = CALL_kernel___Comparable_____l(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ /* ./../lib/standard//kernel.nit:145 */
+ if (UNTAG_Bool(REGB0)) {
+ fra.me.REG[2] = fra.me.REG[0];
+ fra.me.REG[3] = fra.me.REG[1];
+ /* ./../lib/standard//kernel.nit:147 */
+ } else {
+ REGB0 = CALL_kernel___Comparable_____g(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ /* ./../lib/standard//kernel.nit:148 */
+ if (UNTAG_Bool(REGB0)) {
+ fra.me.REG[2] = fra.me.REG[1];
+ fra.me.REG[3] = fra.me.REG[0];
+ /* ./../lib/standard//kernel.nit:150 */
+ } else {
+ REGB0 = TAG_Int(0);
+ /* ./../lib/standard//kernel.nit:152 */
+ goto label1;
}
}
- /* Register variable[5]: Local variable */
- variable[5] = TAG_Int(0);
- while (true) { /*while*/
- /* Register variable[6]: Result */
- variable[6] = CALL_kernel___Comparable_____l( variable[3] /*cursor*/)( variable[3] /*cursor*/, variable[4] /*stop*/) /*Comparable::<*/;
- if (!UNTAG_Bool(variable[6])) break; /* while*/
- /* Register variable[6]: Result */
- variable[6] = CALL_kernel___Discrete___succ( variable[3] /*cursor*/)( variable[3] /*cursor*/) /*Discrete::succ*/;
- variable[3] = variable[6] /*cursor=*/;
- variable[5] = TAG_Int(UNTAG_Int(variable[5])+UNTAG_Int( TAG_Int(1))) /*nb*/;
- continue_14: while(0);
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//kernel.nit:156 */
+ while(1) {
+ REGB2 = CALL_kernel___Comparable_____l(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ if (UNTAG_Bool(REGB2)) {
+ fra.me.REG[0] = CALL_kernel___Discrete___succ(fra.me.REG[2])(fra.me.REG[2]);
+ fra.me.REG[2] = fra.me.REG[0];
+ REGB2 = TAG_Int(1);
+ REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
+ REGB1 = REGB2;
+ /* ./../lib/standard//kernel.nit:158 */
+ } else {
+ /* ./../lib/standard//kernel.nit:156 */
+ goto label2;
+ }
}
- break_14: while(0);
- variable[2] = variable[5] /*nb*/;
- goto return_label13;
- return_label13: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Bool___object_id(val_t self) {
- struct trace_t trace = {NULL, NULL, 174, LOCATE_kernel___Bool___object_id};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Bool( self));
-}
-val_t kernel___Bool_____eqeq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 175, LOCATE_kernel___Bool_____eqeq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)==( param0));
-}
-val_t kernel___Bool_____neq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 176, LOCATE_kernel___Bool_____neq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)!=( param0));
-}
-void kernel___Bool___output(val_t self) {
- struct trace_t trace = {NULL, NULL, 177, LOCATE_kernel___Bool___output};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- (void)printf(UNTAG_Bool( self)?"true\n":"false\n");
- tracehead = trace.prev;
+ label2: while(0);
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:160 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Bool___object_id(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 174;
+ fra.me.meth = LOCATE_kernel___Bool___object_id;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int(UNTAG_Bool(REGB0));
+ /* ./../lib/standard//kernel.nit:174 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Bool_____eqeq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 175;
+ fra.me.meth = LOCATE_kernel___Bool_____eqeq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:175 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Bool_____neq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 176;
+ fra.me.meth = LOCATE_kernel___Bool_____neq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:176 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+void kernel___Bool___output(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 177;
+ fra.me.meth = LOCATE_kernel___Bool___output;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ /* ./../lib/standard//kernel.nit:177 */
+ (void)printf(UNTAG_Bool(REGB0)?"true\n":"false\n");;
+ stack_frame_head = fra.me.prev;
return;
}
-val_t kernel___Float___object_id(val_t self) {
- struct trace_t trace = {NULL, NULL, 183, LOCATE_kernel___Float___object_id};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int((bigint)UNBOX_Float( self));
-}
-void kernel___Float___output(val_t self) {
- struct trace_t trace = {NULL, NULL, 184, LOCATE_kernel___Float___output};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- printf("%f\n", UNBOX_Float( self));
- tracehead = trace.prev;
+val_t kernel___Float___object_id(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 183;
+ fra.me.meth = LOCATE_kernel___Float___object_id;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Int((bigint)UNBOX_Float(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:183 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+void kernel___Float___output(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 184;
+ fra.me.meth = LOCATE_kernel___Float___output;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./../lib/standard//kernel.nit:184 */
+ printf("%f\n", UNBOX_Float(fra.me.REG[0]));;
+ stack_frame_head = fra.me.prev;
return;
}
-val_t kernel___Float_____leq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 186, LOCATE_kernel___Float_____leq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNBOX_Float( self)<=UNBOX_Float( param0));
-}
-val_t kernel___Float_____l(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 187, LOCATE_kernel___Float_____l};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNBOX_Float( self)<UNBOX_Float( param0));
-}
-val_t kernel___Float_____geq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 188, LOCATE_kernel___Float_____geq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNBOX_Float( self)>=UNBOX_Float( param0));
-}
-val_t kernel___Float_____g(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 189, LOCATE_kernel___Float_____g};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNBOX_Float( self)>UNBOX_Float( param0));
-}
-val_t kernel___Float_____plus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 190, LOCATE_kernel___Float_____plus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float(UNBOX_Float( self)+UNBOX_Float( param0));
-}
-val_t kernel___Float___unary__minus(val_t self) {
- struct trace_t trace = {NULL, NULL, 191, LOCATE_kernel___Float___unary__minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float(-UNBOX_Float( self));
-}
-val_t kernel___Float_____minus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 192, LOCATE_kernel___Float_____minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float(UNBOX_Float( self)-UNBOX_Float( param0));
-}
-val_t kernel___Float_____star(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 193, LOCATE_kernel___Float_____star};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float(UNBOX_Float( self)*UNBOX_Float( param0));
-}
-val_t kernel___Float_____slash(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 194, LOCATE_kernel___Float_____slash};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float(UNBOX_Float( self)/UNBOX_Float( param0));
-}
-val_t kernel___Float___to_i(val_t self) {
- struct trace_t trace = {NULL, NULL, 196, LOCATE_kernel___Float___to_i};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int((bigint)UNBOX_Float( self));
-}
-val_t kernel___Int___object_id(val_t self) {
- struct trace_t trace = {NULL, NULL, 206, LOCATE_kernel___Int___object_id};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return self;
-}
-val_t kernel___Int_____eqeq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 207, LOCATE_kernel___Int_____eqeq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)==( param0));
-}
-val_t kernel___Int_____neq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 208, LOCATE_kernel___Int_____neq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)!=( param0));
-}
-void kernel___Int___output(val_t self) {
- struct trace_t trace = {NULL, NULL, 209, LOCATE_kernel___Int___output};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- printf("%ld\n", UNTAG_Int( self));
- tracehead = trace.prev;
+val_t kernel___Float_____leq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 186;
+ fra.me.meth = LOCATE_kernel___Float_____leq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])<=UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:186 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Float_____l(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 187;
+ fra.me.meth = LOCATE_kernel___Float_____l;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])<UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:187 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Float_____geq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 188;
+ fra.me.meth = LOCATE_kernel___Float_____geq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])>=UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:188 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Float_____g(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 189;
+ fra.me.meth = LOCATE_kernel___Float_____g;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ REGB0 = TAG_Bool(UNBOX_Float(fra.me.REG[0])>UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:189 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Float_____plus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 190;
+ fra.me.meth = LOCATE_kernel___Float_____plus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])+UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:190 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Float___unary__minus(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 191;
+ fra.me.meth = LOCATE_kernel___Float___unary__minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[0] = BOX_Float(-UNBOX_Float(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:191 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+val_t kernel___Float_____minus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 192;
+ fra.me.meth = LOCATE_kernel___Float_____minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])-UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:192 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Float_____star(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 193;
+ fra.me.meth = LOCATE_kernel___Float_____star;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])*UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:193 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Float_____slash(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 194;
+ fra.me.meth = LOCATE_kernel___Float_____slash;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[1] = BOX_Float(UNBOX_Float(fra.me.REG[0])/UNBOX_Float(fra.me.REG[1]));
+ /* ./../lib/standard//kernel.nit:194 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[1];
+}
+val_t kernel___Float___to_i(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 196;
+ fra.me.meth = LOCATE_kernel___Float___to_i;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ REGB0 = TAG_Int((bigint)UNBOX_Float(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:196 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int___object_id(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 206;
+ fra.me.meth = LOCATE_kernel___Int___object_id;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ /* ./../lib/standard//kernel.nit:206 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int_____eqeq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 207;
+ fra.me.meth = LOCATE_kernel___Int_____eqeq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:207 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int_____neq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 208;
+ fra.me.meth = LOCATE_kernel___Int_____neq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:208 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+void kernel___Int___output(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 209;
+ fra.me.meth = LOCATE_kernel___Int___output;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ /* ./../lib/standard//kernel.nit:209 */
+ printf("%ld\n", UNTAG_Int(REGB0));;
+ stack_frame_head = fra.me.prev;
return;
}
-val_t kernel___Int_____l(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 212, LOCATE_kernel___Int_____l};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Int( self)<UNTAG_Int( param0));
-}
-val_t kernel___Int_____leq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 211, LOCATE_kernel___Int_____leq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Int( self)<=UNTAG_Int( param0));
-}
-val_t kernel___Int_____geq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 213, LOCATE_kernel___Int_____geq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Int( self)>=UNTAG_Int( param0));
-}
-val_t kernel___Int_____g(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 214, LOCATE_kernel___Int_____g};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Int( self)>UNTAG_Int( param0));
-}
-val_t kernel___Int_____leqg(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 239, LOCATE_kernel___Int_____leqg};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool(UNTAG_Int(variable[0])<UNTAG_Int( variable[1] /*other*/));
- if (UNTAG_Bool(variable[3])) { /*if*/
- /* Register variable[3]: Result */
- variable[3] = TAG_Int(-UNTAG_Int( TAG_Int(1)));
- variable[2] = variable[3];
- goto return_label15;
- } else { /*if*/
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool(UNTAG_Int( variable[1] /*other*/)<UNTAG_Int(variable[0]));
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = TAG_Int(1);
- goto return_label15;
- } else { /*if*/
- variable[2] = TAG_Int(0);
- goto return_label15;
+val_t kernel___Int_____l(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 212;
+ fra.me.meth = LOCATE_kernel___Int_____l;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:212 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____leq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 211;
+ fra.me.meth = LOCATE_kernel___Int_____leq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<=UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:211 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____geq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 213;
+ fra.me.meth = LOCATE_kernel___Int_____geq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:213 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____g(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 214;
+ fra.me.meth = LOCATE_kernel___Int_____g;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:214 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____leqg(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 239;
+ fra.me.meth = LOCATE_kernel___Int_____leqg;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:241 */
+ if (UNTAG_Bool(REGB2)) {
+ REGB2 = TAG_Int(1);
+ REGB2 = TAG_Int(-UNTAG_Int(REGB2));
+ /* ./../lib/standard//kernel.nit:242 */
+ goto label1;
+ } else {
+ REGB0 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:243 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Int(1);
+ REGB2 = REGB0;
+ /* ./../lib/standard//kernel.nit:244 */
+ goto label1;
+ } else {
+ REGB0 = TAG_Int(0);
+ REGB2 = REGB0;
+ /* ./../lib/standard//kernel.nit:246 */
+ goto label1;
}
}
- return_label15: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Int___is_between(val_t self, val_t param0, val_t param1) {
- struct trace_t trace = {NULL, NULL, 250, LOCATE_kernel___Int___is_between};
- val_t variable[5];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Local variable */
- variable[2] = param1;
- /* Register variable[3]: Method return value and escape marker */
- /* Register variable[4]: Result */
- variable[4] = TAG_Bool(UNTAG_Int(variable[0])<UNTAG_Int( variable[1] /*c*/));
- /* Ensure var variable[4]: Left 'or' operand*/
- if (!UNTAG_Bool(variable[4])) { /* or */
- /* Register variable[4]: Result */
- variable[4] = TAG_Bool(UNTAG_Int( variable[2] /*d*/)<UNTAG_Int(variable[0]));
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB2;
+}
+val_t kernel___Int___is_between(val_t p0, val_t p1, val_t p2){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 250;
+ fra.me.meth = LOCATE_kernel___Int___is_between;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB2 = p2;
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:252 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Bool(true);
+ } else {
+ REGB0 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB0));
+ REGB1 = REGB0;
+ /* ./../lib/standard//kernel.nit:252 */
+ }
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Bool(false);
+ /* ./../lib/standard//kernel.nit:253 */
+ goto label1;
+ } else {
+ REGB0 = TAG_Bool(true);
+ REGB1 = REGB0;
+ /* ./../lib/standard//kernel.nit:255 */
+ goto label1;
}
- /* Register variable[4]: Result */
- if (UNTAG_Bool(variable[4])) { /*if*/
- variable[3] = TAG_Bool(false);
- goto return_label16;
- } else { /*if*/
- variable[3] = TAG_Bool(true);
- goto return_label16;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___max(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 259;
+ fra.me.meth = LOCATE_kernel___Int___max;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:261 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//kernel.nit:262 */
+ goto label1;
+ } else {
+ REGB1 = REGB0;
+ /* ./../lib/standard//kernel.nit:264 */
+ goto label1;
}
- return_label16: while(false);
- tracehead = trace.prev;
- return variable[3];
-}
-val_t kernel___Int___max(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 259, LOCATE_kernel___Int___max};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool(UNTAG_Int(variable[0])<UNTAG_Int( variable[1] /*other*/));
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = variable[1] /*other*/;
- goto return_label17;
- } else { /*if*/
- variable[2] = variable[0];
- goto return_label17;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___min(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 268;
+ fra.me.meth = LOCATE_kernel___Int___min;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:270 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//kernel.nit:271 */
+ goto label1;
+ } else {
+ REGB1 = REGB0;
+ /* ./../lib/standard//kernel.nit:273 */
+ goto label1;
}
- return_label17: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Int___min(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 268, LOCATE_kernel___Int___min};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool(UNTAG_Int( variable[1] /*c*/)<UNTAG_Int(variable[0]));
- if (UNTAG_Bool(variable[3])) { /*if*/
- variable[2] = variable[1] /*c*/;
- goto return_label18;
- } else { /*if*/
- variable[2] = variable[0];
- goto return_label18;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___succ(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 227;
+ fra.me.meth = LOCATE_kernel___Int___succ;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int(UNTAG_Int(REGB0)+1);
+ /* ./../lib/standard//kernel.nit:227 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int___prec(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 228;
+ fra.me.meth = LOCATE_kernel___Int___prec;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int(UNTAG_Int(REGB0)-1);
+ /* ./../lib/standard//kernel.nit:228 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int_____plus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 215;
+ fra.me.meth = LOCATE_kernel___Int_____plus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:215 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____minus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 217;
+ fra.me.meth = LOCATE_kernel___Int_____minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:217 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___distance(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 229;
+ fra.me.meth = LOCATE_kernel___Int___distance;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
+ REGB0 = TAG_Int(0);
+ REGB0 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:232 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:233 */
+ goto label1;
+ } else {
+ REGB1 = TAG_Int(-UNTAG_Int(REGB1));
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:235 */
+ goto label1;
}
- return_label18: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Int___succ(val_t self) {
- struct trace_t trace = {NULL, NULL, 227, LOCATE_kernel___Int___succ};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)+1);
-}
-val_t kernel___Int___prec(val_t self) {
- struct trace_t trace = {NULL, NULL, 228, LOCATE_kernel___Int___prec};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)-1);
-}
-val_t kernel___Int_____plus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 215, LOCATE_kernel___Int_____plus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)+UNTAG_Int( param0));
-}
-val_t kernel___Int_____minus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 217, LOCATE_kernel___Int_____minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)-UNTAG_Int( param0));
-}
-val_t kernel___Int___distance(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 229, LOCATE_kernel___Int___distance};
- val_t variable[5];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Local variable */
- /* Register variable[4]: Result */
- variable[4] = TAG_Int(UNTAG_Int(variable[0])-UNTAG_Int( variable[1] /*i*/));
- variable[3] = variable[4];
- /* Register variable[4]: Result */
- variable[4] = TAG_Bool(UNTAG_Int( variable[3] /*d*/)>=UNTAG_Int( TAG_Int(0)));
- if (UNTAG_Bool(variable[4])) { /*if*/
- variable[2] = variable[3] /*d*/;
- goto return_label19;
- } else { /*if*/
- /* Register variable[4]: Result */
- variable[4] = TAG_Int(-UNTAG_Int( variable[3] /*d*/));
- variable[2] = variable[4];
- goto return_label19;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int___unary__minus(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 216;
+ fra.me.meth = LOCATE_kernel___Int___unary__minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int(-UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:216 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int_____star(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 218;
+ fra.me.meth = LOCATE_kernel___Int_____star;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)*UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:218 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____slash(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 219;
+ fra.me.meth = LOCATE_kernel___Int_____slash;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)/UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:219 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int_____percent(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 220;
+ fra.me.meth = LOCATE_kernel___Int_____percent;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)%UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:220 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___lshift(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 221;
+ fra.me.meth = LOCATE_kernel___Int___lshift;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)<<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:221 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___rshift(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 222;
+ fra.me.meth = LOCATE_kernel___Int___rshift;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)>>UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:222 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Int___to_f(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 224;
+ fra.me.meth = LOCATE_kernel___Int___to_f;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = BOX_Float((float)UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:224 */
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+val_t kernel___Int___ascii(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 277;
+ fra.me.meth = LOCATE_kernel___Int___ascii;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Char(UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:277 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Int___digit_count(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ val_t REGB4;
+ val_t REGB5;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 280;
+ fra.me.meth = LOCATE_kernel___Int___digit_count;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB2 = TAG_Int(0);
+ REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB2));
+ /* ./../lib/standard//kernel.nit:286 */
+ if (UNTAG_Bool(REGB2)) {
+ REGB2 = TAG_Int(1);
+ REGB3 = TAG_Int(-UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:288 */
+ } else {
+ REGB4 = TAG_Int(0);
+ REGB5 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB4));
+ /* ./../lib/standard//kernel.nit:289 */
+ if (UNTAG_Bool(REGB5)) {
+ } else {
+ REGB4 = TAG_Bool((REGB0)==(REGB4));
+ REGB5 = REGB4;
+ /* ./../lib/standard//kernel.nit:289 */
+ }
+ if (UNTAG_Bool(REGB5)) {
+ REGB5 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:290 */
+ goto label1;
+ } else {
+ REGB4 = TAG_Int(0);
+ REGB2 = REGB4;
+ REGB3 = REGB0;
+ /* ./../lib/standard//kernel.nit:293 */
+ }
}
- return_label19: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Int___unary__minus(val_t self) {
- struct trace_t trace = {NULL, NULL, 216, LOCATE_kernel___Int___unary__minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(-UNTAG_Int( self));
-}
-val_t kernel___Int_____star(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 218, LOCATE_kernel___Int_____star};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)*UNTAG_Int( param0));
-}
-val_t kernel___Int_____slash(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 219, LOCATE_kernel___Int_____slash};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)/UNTAG_Int( param0));
-}
-val_t kernel___Int_____percent(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 220, LOCATE_kernel___Int_____percent};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)%UNTAG_Int( param0));
-}
-val_t kernel___Int___lshift(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 221, LOCATE_kernel___Int___lshift};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)<<UNTAG_Int( param0));
-}
-val_t kernel___Int___rshift(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 222, LOCATE_kernel___Int___rshift};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Int( self)>>UNTAG_Int( param0));
-}
-val_t kernel___Int___to_f(val_t self) {
- struct trace_t trace = {NULL, NULL, 224, LOCATE_kernel___Int___to_f};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return BOX_Float((float)UNTAG_Int( self));
-}
-val_t kernel___Int___ascii(val_t self) {
- struct trace_t trace = {NULL, NULL, 277, LOCATE_kernel___Int___ascii};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Char(UNTAG_Int( self));
-}
-val_t kernel___Int___digit_count(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 280, LOCATE_kernel___Int___digit_count};
- val_t variable[6];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Local variable */
- /*variable[3] is variable d*/
- /* Register variable[4]: Local variable */
- /*variable[4] is variable n*/
- /* Register variable[5]: Result */
- variable[5] = TAG_Bool(UNTAG_Int(variable[0])<UNTAG_Int( TAG_Int(0)));
- if (UNTAG_Bool(variable[5])) { /*if*/
- variable[3] = TAG_Int(1) /*d=*/;
- /* Register variable[5]: Result */
- variable[5] = TAG_Int(-UNTAG_Int(variable[0]));
- variable[4] = variable[5] /*n=*/;
- } else { /*if*/
- /* Register variable[5]: Result */
- variable[5] = TAG_Bool((variable[0])==( TAG_Int(0)));
- if (UNTAG_Bool(variable[5])) { /*if*/
- variable[2] = TAG_Int(1);
- goto return_label20;
- } else { /*if*/
- variable[3] = TAG_Int(0) /*d=*/;
- variable[4] = variable[0] /*n=*/;
+ /* ./../lib/standard//kernel.nit:296 */
+ while(1) {
+ REGB0 = TAG_Int(0);
+ REGB0 = TAG_Bool(UNTAG_Int(REGB3)>UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:296 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Int(1);
+ REGB0 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB0));
+ REGB2 = REGB0;
+ REGB0 = TAG_Int(UNTAG_Int(REGB3)/UNTAG_Int(REGB1));
+ REGB3 = REGB0;
+ /* ./../lib/standard//kernel.nit:298 */
+ } else {
+ /* ./../lib/standard//kernel.nit:296 */
+ goto label2;
}
}
- while (true) { /*while*/
- /* Register variable[5]: Result */
- variable[5] = TAG_Bool(UNTAG_Int( variable[4] /*n*/)>UNTAG_Int( TAG_Int(0)));
- if (!UNTAG_Bool(variable[5])) break; /* while*/
- variable[3] = TAG_Int(UNTAG_Int(variable[3])+UNTAG_Int( TAG_Int(1))) /*d*/;
- /* Register variable[5]: Result */
- variable[5] = TAG_Int(UNTAG_Int( variable[4] /*n*/)/UNTAG_Int( variable[1] /*b*/));
- variable[4] = variable[5] /*n=*/;
- continue_21: while(0);
+ label2: while(0);
+ REGB5 = REGB2;
+ /* ./../lib/standard//kernel.nit:300 */
+ goto label1;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB5;
+}
+val_t kernel___Int___to_c(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 303;
+ fra.me.meth = LOCATE_kernel___Int___to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = TAG_Int(0);
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:308 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Int(36);
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<=UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:308 */
+ } else {
+ REGB2 = TAG_Bool(false);
+ REGB1 = REGB2;
}
- break_21: while(0);
- variable[2] = variable[3] /*d*/;
- goto return_label20;
- return_label20: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Int___to_c(val_t self) {
- struct trace_t trace = {NULL, NULL, 303, LOCATE_kernel___Int___to_c};
- val_t variable[3];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Int(variable[0])>=UNTAG_Int( TAG_Int(0)));
- /* Ensure var variable[2]: Left 'and' operand*/
- if (UNTAG_Bool(variable[2])) { /* and */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Int(variable[0])<=UNTAG_Int( TAG_Int(36)));
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ fprintf(stderr, "Assert failed");
+ fprintf(stderr, " (%s:%d)\n", LOCATE_kernel, 308);
+ nit_exit(1);
}
- /* Register variable[2]: Result */
- if (!UNTAG_Bool(variable[2])) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_kernel___Int___to_c, LOCATE_kernel, 308); nit_exit(1);}
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Int(variable[0])<UNTAG_Int( TAG_Int(10)));
- if (UNTAG_Bool(variable[2])) { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('0')));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[0])+UNTAG_Int(variable[2]));
- /* Register variable[2]: Result */
- variable[2] = TAG_Char(UNTAG_Int(variable[2]));
- variable[1] = variable[2];
- goto return_label22;
- } else { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('a')));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[2])-UNTAG_Int( TAG_Int(10)));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[0])+UNTAG_Int(variable[2]));
- /* Register variable[2]: Result */
- variable[2] = TAG_Char(UNTAG_Int(variable[2]));
- variable[1] = variable[2];
- goto return_label22;
+ REGB1 = TAG_Int(10);
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:309 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Char('0');
+ REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB1));
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
+ REGB1 = TAG_Char(UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:310 */
+ goto label1;
+ } else {
+ REGB2 = TAG_Char('a');
+ REGB2 = TAG_Int((unsigned char)UNTAG_Char(REGB2));
+ REGB3 = TAG_Int(10);
+ REGB3 = TAG_Int(UNTAG_Int(REGB2)-UNTAG_Int(REGB3));
+ REGB3 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB3));
+ REGB3 = TAG_Char(UNTAG_Int(REGB3));
+ REGB1 = REGB3;
+ /* ./../lib/standard//kernel.nit:312 */
+ goto label1;
}
- return_label22: while(false);
- tracehead = trace.prev;
- return variable[1];
-}
-val_t kernel___Char___object_id(val_t self) {
- struct trace_t trace = {NULL, NULL, 324, LOCATE_kernel___Char___object_id};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int(UNTAG_Char( self));
-}
-val_t kernel___Char_____eqeq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 325, LOCATE_kernel___Char_____eqeq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)==( param0));
-}
-val_t kernel___Char_____neq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 326, LOCATE_kernel___Char_____neq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(( self)!=( param0));
-}
-void kernel___Char___output(val_t self) {
- struct trace_t trace = {NULL, NULL, 327, LOCATE_kernel___Char___output};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- printf("%c", (unsigned char)UNTAG_Char( self));
- tracehead = trace.prev;
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char___object_id(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 324;
+ fra.me.meth = LOCATE_kernel___Char___object_id;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int(UNTAG_Char(REGB0));
+ /* ./../lib/standard//kernel.nit:324 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char_____eqeq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 325;
+ fra.me.meth = LOCATE_kernel___Char_____eqeq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)==(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:325 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char_____neq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 326;
+ fra.me.meth = LOCATE_kernel___Char_____neq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ REGB0 = p0;
+ fra.me.REG[0] = p1;
+ REGB0 = TAG_Bool((REGB0)!=(fra.me.REG[0]));
+ /* ./../lib/standard//kernel.nit:326 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+void kernel___Char___output(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 327;
+ fra.me.meth = LOCATE_kernel___Char___output;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ /* ./../lib/standard//kernel.nit:327 */
+ printf("%c", (unsigned char)UNTAG_Char(REGB0));;
+ stack_frame_head = fra.me.prev;
return;
}
-val_t kernel___Char_____l(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 330, LOCATE_kernel___Char_____l};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Char( self)<UNTAG_Char( param0));
-}
-val_t kernel___Char_____leq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 329, LOCATE_kernel___Char_____leq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Char( self)<=UNTAG_Char( param0));
-}
-val_t kernel___Char_____geq(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 331, LOCATE_kernel___Char_____geq};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Char( self)>=UNTAG_Char( param0));
-}
-val_t kernel___Char_____g(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 332, LOCATE_kernel___Char_____g};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Bool(UNTAG_Char( self)>UNTAG_Char( param0));
-}
-val_t kernel___Char___succ(val_t self) {
- struct trace_t trace = {NULL, NULL, 334, LOCATE_kernel___Char___succ};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Char(UNTAG_Char( self)+1);
-}
-val_t kernel___Char___prec(val_t self) {
- struct trace_t trace = {NULL, NULL, 335, LOCATE_kernel___Char___prec};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Char(UNTAG_Char( self)-1);
-}
-val_t kernel___Char_____plus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 363, LOCATE_kernel___Char_____plus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Char(UNTAG_Char( self)+UNTAG_Char( param0));
-}
-val_t kernel___Char_____minus(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 364, LOCATE_kernel___Char_____minus};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Char(UNTAG_Char( self)-UNTAG_Char( param0));
-}
-val_t kernel___Char___distance(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 337, LOCATE_kernel___Char___distance};
- val_t variable[6];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Local variable */
- /* Register variable[4]: Result */
- variable[4] = TAG_Int((unsigned char)UNTAG_Char(variable[0]));
- /* Register variable[5]: Result */
- variable[5] = TAG_Int((unsigned char)UNTAG_Char( variable[1] /*c*/));
- /* Register variable[4]: Result */
- variable[4] = TAG_Int(UNTAG_Int(variable[4])-UNTAG_Int(variable[5]));
- variable[3] = variable[4];
- /* Register variable[4]: Result */
- variable[4] = TAG_Bool(UNTAG_Int( variable[3] /*d*/)>=UNTAG_Int( TAG_Int(0)));
- if (UNTAG_Bool(variable[4])) { /*if*/
- variable[2] = variable[3] /*d*/;
- goto return_label23;
- } else { /*if*/
- /* Register variable[4]: Result */
- variable[4] = TAG_Int(-UNTAG_Int( variable[3] /*d*/));
- variable[2] = variable[4];
- goto return_label23;
+val_t kernel___Char_____l(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 330;
+ fra.me.meth = LOCATE_kernel___Char_____l;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)<UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:330 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char_____leq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 329;
+ fra.me.meth = LOCATE_kernel___Char_____leq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:329 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char_____geq(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 331;
+ fra.me.meth = LOCATE_kernel___Char_____geq;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:331 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char_____g(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 332;
+ fra.me.meth = LOCATE_kernel___Char_____g;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)>UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:332 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char___succ(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 334;
+ fra.me.meth = LOCATE_kernel___Char___succ;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Char(UNTAG_Char(REGB0)+1);
+ /* ./../lib/standard//kernel.nit:334 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char___prec(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 335;
+ fra.me.meth = LOCATE_kernel___Char___prec;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Char(UNTAG_Char(REGB0)-1);
+ /* ./../lib/standard//kernel.nit:335 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char_____plus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 363;
+ fra.me.meth = LOCATE_kernel___Char_____plus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Char(UNTAG_Char(REGB0)+UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:363 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char_____minus(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 364;
+ fra.me.meth = LOCATE_kernel___Char_____minus;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB1 = TAG_Char(UNTAG_Char(REGB0)-UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:364 */
+ stack_frame_head = fra.me.prev;
+ return REGB1;
+}
+val_t kernel___Char___distance(val_t p0, val_t p1){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 337;
+ fra.me.meth = LOCATE_kernel___Char___distance;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = p1;
+ REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB1));
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
+ REGB0 = TAG_Int(0);
+ REGB0 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB0));
+ /* ./../lib/standard//kernel.nit:340 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:341 */
+ goto label1;
+ } else {
+ REGB1 = TAG_Int(-UNTAG_Int(REGB1));
+ REGB0 = REGB1;
+ /* ./../lib/standard//kernel.nit:343 */
+ goto label1;
+ }
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char___to_i(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 347;
+ fra.me.meth = LOCATE_kernel___Char___to_i;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = TAG_Char('-');
+ REGB2 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB1));
+ /* ./../lib/standard//kernel.nit:351 */
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ REGB1 = TAG_Bool((REGB0)==(REGB1));
+ REGB2 = REGB1;
+ /* ./../lib/standard//kernel.nit:351 */
}
- return_label23: while(false);
- tracehead = trace.prev;
- return variable[2];
-}
-val_t kernel___Char___to_i(val_t self) {
- struct trace_t trace = {NULL, NULL, 347, LOCATE_kernel___Char___to_i};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool((variable[0])==( TAG_Char('-')));
- if (UNTAG_Bool(variable[2])) { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(-UNTAG_Int( TAG_Int(1)));
- variable[1] = variable[2];
- goto return_label24;
- } else { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])>=UNTAG_Char( TAG_Char('0')));
- /* Ensure var variable[2]: Left 'and' operand*/
- if (UNTAG_Bool(variable[2])) { /* and */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])<=UNTAG_Char( TAG_Char('9')));
+ if (UNTAG_Bool(REGB2)) {
+ REGB2 = TAG_Int(1);
+ REGB2 = TAG_Int(-UNTAG_Int(REGB2));
+ /* ./../lib/standard//kernel.nit:352 */
+ goto label1;
+ } else {
+ REGB1 = TAG_Char('0');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:353 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Char('9');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:353 */
+ } else {
+ REGB3 = TAG_Bool(false);
+ REGB1 = REGB3;
}
- /* Register variable[2]: Result */
- if (UNTAG_Bool(variable[2])) { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char(variable[0]));
- /* Register variable[3]: Result */
- variable[3] = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('0')));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[2])-UNTAG_Int(variable[3]));
- variable[1] = variable[2];
- goto return_label24;
- } else { /*if*/
- /* Register variable[2]: Result */
- variable[2] = CALL_kernel___Char___to_lower(variable[0])(variable[0]) /*Char::to_lower*/;
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char(variable[2]));
- /* Register variable[3]: Result */
- variable[3] = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('a')));
- /* Register variable[3]: Result */
- variable[3] = TAG_Int(UNTAG_Int(variable[3])+UNTAG_Int( TAG_Int(10)));
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[2])-UNTAG_Int(variable[3]));
- variable[1] = variable[2];
- goto return_label24;
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ REGB3 = TAG_Char('0');
+ REGB3 = TAG_Int((unsigned char)UNTAG_Char(REGB3));
+ REGB3 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB3));
+ REGB2 = REGB3;
+ /* ./../lib/standard//kernel.nit:354 */
+ goto label1;
+ } else {
+ REGB0 = CALL_kernel___Char___to_lower(REGB0)(REGB0);
+ REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ REGB3 = TAG_Char('a');
+ REGB3 = TAG_Int((unsigned char)UNTAG_Char(REGB3));
+ REGB1 = TAG_Int(10);
+ REGB1 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB1));
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
+ REGB2 = REGB1;
+ /* ./../lib/standard//kernel.nit:356 */
+ goto label1;
}
}
- return_label24: while(false);
- tracehead = trace.prev;
- return variable[1];
-}
-val_t kernel___Char___ascii(val_t self) {
- struct trace_t trace = {NULL, NULL, 360, LOCATE_kernel___Char___ascii};
- val_t *variable = NULL;
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- tracehead = trace.prev;
- return TAG_Int((unsigned char)UNTAG_Char( self));
-}
-val_t kernel___Char___to_lower(val_t self) {
- struct trace_t trace = {NULL, NULL, 366, LOCATE_kernel___Char___to_lower};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])>=UNTAG_Char( TAG_Char('A')));
- /* Ensure var variable[2]: Left 'and' operand*/
- if (UNTAG_Bool(variable[2])) { /* and */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])<=UNTAG_Char( TAG_Char('Z')));
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB2;
+}
+val_t kernel___Char___ascii(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 360;
+ fra.me.meth = LOCATE_kernel___Char___ascii;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB0 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ /* ./../lib/standard//kernel.nit:360 */
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t kernel___Char___to_lower(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 366;
+ fra.me.meth = LOCATE_kernel___Char___to_lower;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = TAG_Char('A');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:369 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Char('Z');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:369 */
+ } else {
+ REGB2 = TAG_Bool(false);
+ REGB1 = REGB2;
}
- /* Register variable[2]: Result */
- if (UNTAG_Bool(variable[2])) { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char(variable[0]));
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Discrete___distance( TAG_Char('a'))( TAG_Char('a'), TAG_Char('A')) /*Char::distance*/;
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[2])+UNTAG_Int(variable[3]));
- /* Register variable[2]: Result */
- variable[2] = TAG_Char(UNTAG_Int(variable[2]));
- variable[1] = variable[2];
- goto return_label25;
- } else { /*if*/
- variable[1] = variable[0];
- goto return_label25;
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ REGB2 = TAG_Char('a');
+ REGB3 = TAG_Char('A');
+ REGB3 = CALL_kernel___Discrete___distance(REGB2)(REGB2, REGB3);
+ REGB3 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB3));
+ REGB3 = TAG_Char(UNTAG_Int(REGB3));
+ /* ./../lib/standard//kernel.nit:370 */
+ goto label1;
+ } else {
+ REGB3 = REGB0;
+ /* ./../lib/standard//kernel.nit:372 */
+ goto label1;
}
- return_label25: while(false);
- tracehead = trace.prev;
- return variable[1];
-}
-val_t kernel___Char___to_upper(val_t self) {
- struct trace_t trace = {NULL, NULL, 376, LOCATE_kernel___Char___to_upper};
- val_t variable[4];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_kernel;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Method return value and escape marker */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])>=UNTAG_Char( TAG_Char('a')));
- /* Ensure var variable[2]: Left 'and' operand*/
- if (UNTAG_Bool(variable[2])) { /* and */
- /* Register variable[2]: Result */
- variable[2] = TAG_Bool(UNTAG_Char(variable[0])<=UNTAG_Char( TAG_Char('z')));
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB3;
+}
+val_t kernel___Char___to_upper(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_kernel;
+ fra.me.line = 376;
+ fra.me.meth = LOCATE_kernel___Char___to_upper;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ REGB0 = p0;
+ REGB1 = TAG_Char('a');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)>=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:379 */
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Char('z');
+ REGB1 = TAG_Bool(UNTAG_Char(REGB0)<=UNTAG_Char(REGB1));
+ /* ./../lib/standard//kernel.nit:379 */
+ } else {
+ REGB2 = TAG_Bool(false);
+ REGB1 = REGB2;
}
- /* Register variable[2]: Result */
- if (UNTAG_Bool(variable[2])) { /*if*/
- /* Register variable[2]: Result */
- variable[2] = TAG_Int((unsigned char)UNTAG_Char(variable[0]));
- /* Register variable[3]: Result */
- variable[3] = CALL_kernel___Discrete___distance( TAG_Char('a'))( TAG_Char('a'), TAG_Char('A')) /*Char::distance*/;
- /* Register variable[2]: Result */
- variable[2] = TAG_Int(UNTAG_Int(variable[2])-UNTAG_Int(variable[3]));
- /* Register variable[2]: Result */
- variable[2] = TAG_Char(UNTAG_Int(variable[2]));
- variable[1] = variable[2];
- goto return_label26;
- } else { /*if*/
- variable[1] = variable[0];
- goto return_label26;
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Int((unsigned char)UNTAG_Char(REGB0));
+ REGB2 = TAG_Char('a');
+ REGB3 = TAG_Char('A');
+ REGB3 = CALL_kernel___Discrete___distance(REGB2)(REGB2, REGB3);
+ REGB3 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB3));
+ REGB3 = TAG_Char(UNTAG_Int(REGB3));
+ /* ./../lib/standard//kernel.nit:380 */
+ goto label1;
+ } else {
+ REGB3 = REGB0;
+ /* ./../lib/standard//kernel.nit:382 */
+ goto label1;
}
- return_label26: while(false);
- tracehead = trace.prev;
- return variable[1];
+ label1: while(0);
+ stack_frame_head = fra.me.prev;
+ return REGB3;
}