.function Sgn 1 # if $0 > 0 ldloc 0 ldconst 0 gt brf LBL1 ldconst 1 goto END # else if $0 < 0 LBL1: ldloc 0 ldconst 0 lt brf LBL2 ldconst -1 goto END #else LBL2: ldconst 0 END: ret .function Main 0 ldconst 42 call Sgn out pop ldconst -5 call Sgn out pop ldconst 0 call Sgn out pop ldconst 0 ret