Higher Subleq | Error | Output | Subleq | ITR |
int getchar();
void main()
{
if(0) __out getchar();
}
|
|
|
top:top top sqmain
_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; c1 Z; Z t1 ?+3; Z Z ?+9; Z; c1 t1; c1 t1
Z t1 l1
dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
?+6; sp ?+2; ?+2 0 _getchar; . ?;
t1; ax t1
inc sp
t1 (-1)
l1:
?+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
_getchar:
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; (-1) t1
ax; t1 ax
Z Z end_getchar
end_getchar:
?+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:0
. t1:0
. inc:-1 Z:0 dec:1 ax:0 bp:0 sp:-sp
|
Root (ml_3.hsq:6)
Function:0 [getchar] (ml_3.hsq:1)
Keyword [int] (ml_3.hsq:1)
Param-type-list (ml_3.hsq:1)
Function:0 [main] (ml_3.hsq:2)
Keyword [void] (ml_3.hsq:2)
Param-type-list (ml_3.hsq:2)
Block (ml_3.hsq:3)
Keyword-statement [if] (ml_3.hsq:4)
Equality [!=] (ml_3.hsq:4)
Const [0] (ml_3.hsq:4)
Const [0] (ml_3.hsq:4)
OperatorIO [__out] (ml_3.hsq:4)
Postfix [(] (ml_3.hsq:4)
Label [getchar] (ml_3.hsq:4)
Function:0 [getchar] (::getchar:1)
Keyword [int] (::getchar:1)
Param-type-list (::getchar:1)
Block (::getchar:2)
Keyword-statement [return] (::getchar:3)
OperatorIO [__in] (::getchar:3)
|