Higher Subleq | Error | Output | Subleq | ITR |
int a=48,b=50;
void main()
{
if( a >= b ) __out 48;
if( a >= a ) __out 49;
if( b >= a ) __out 50;
}
|
|
12
|
top:top top sqmain
. _a:48 _b:50
_main:
dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
?+6; sp ?+2; bp 0
bp; sp bp
dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
?+6; sp ?+2; t1 0
t1; _a Z; Z t1; Z; _b t1; inc t1
Z t1 l1
c1 (-1)
l1:
t1; _a Z; Z t1; Z; _a t1; inc t1
Z t1 l2
c2 (-1)
l2:
t1; _b Z; Z t1; Z; _a t1; inc t1
Z t1 l3
c3 (-1)
l3:
?+8; sp ?+4; t1; 0 t1; inc sp
sp; bp sp
?+8; sp ?+4; bp; 0 bp; inc sp
?+8; sp ?+4; ?+7; 0 ?+3; Z Z 0
sqmain:
dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
?+6; sp ?+2; ?+2 0 _main; . ?; inc sp
Z Z (-1)
. c1:48 c2:49 c3:50
. t1:0
. inc:-1 Z:0 dec:1 ax:0 bp:0 sp:-sp
|
Root (mg_15_5.hsq:8)
Declaration (mg_15_5.hsq:1)
Keyword [int] (mg_15_5.hsq:1)
Declarator [=] (mg_15_5.hsq:1)
Id [a] (mg_15_5.hsq:1)
Const [48] (mg_15_5.hsq:1)
Declarator [=] (mg_15_5.hsq:1)
Id [b] (mg_15_5.hsq:1)
Const [50] (mg_15_5.hsq:1)
Function:0 [main] (mg_15_5.hsq:2)
Keyword [void] (mg_15_5.hsq:2)
Param-type-list (mg_15_5.hsq:2)
Block (mg_15_5.hsq:3)
Keyword-statement [if] (mg_15_5.hsq:4)
Relational [>=] (mg_15_5.hsq:4)
Variable [a] (mg_15_5.hsq:4) =:1
Variable [b] (mg_15_5.hsq:4) =:1
OperatorIO [__out] (mg_15_5.hsq:4)
Const [48] (mg_15_5.hsq:4)
Keyword-statement [if] (mg_15_5.hsq:5)
Relational [>=] (mg_15_5.hsq:5)
Variable [a] (mg_15_5.hsq:5) =:1
Variable [a] (mg_15_5.hsq:5) =:1
OperatorIO [__out] (mg_15_5.hsq:5)
Const [49] (mg_15_5.hsq:5)
Keyword-statement [if] (mg_15_5.hsq:6)
Relational [>=] (mg_15_5.hsq:6)
Variable [b] (mg_15_5.hsq:6) =:1
Variable [a] (mg_15_5.hsq:6) =:1
OperatorIO [__out] (mg_15_5.hsq:6)
Const [50] (mg_15_5.hsq:6)
|