def compile(str): global depth, stack_address x86.ret() epilog() tokens = str.split() tokens.reverse() for token in tokens: try: op = int(token) depth = depth - 1 except ValueError: op = token depth = depth + 1 emit(op) x86.mov_gv_iv(esi, stack_address) prolog()
def emit_add42(): x86.ret() epilog() x86.add_gv_ev(eax, atv(ebp, 8)) x86.mov_gv_iv(eax, 42) prolog()