Mercurial > hg-old > index.cgi
diff lwasm/main.c @ 337:04c80c51b16a
Checkpoint development
author | lost |
---|---|
date | Fri, 12 Mar 2010 06:01:38 +0000 |
parents | 9f58e3bca6e3 |
children | 7b4123dce741 |
line wrap: on
line diff
--- a/lwasm/main.c Fri Mar 05 02:34:16 2010 +0000 +++ b/lwasm/main.c Fri Mar 12 06:01:38 2010 +0000 @@ -165,6 +165,8 @@ assembler on the first file */ extern void do_pass1(asmstate_t *as); +extern void lwasm_evaluate_special(int t, void *ptr); +extern void lwasm_evaluate_var(char *var); int main(int argc, char **argv) { @@ -172,6 +174,9 @@ asmstate_t asmstate = { 0 }; program_name = argv[0]; + lw_expr_set_special_handler(lwasm_evaluate_special); + lw_expr_set_var_handler(lwasm_evaluate_var); + /* initialize assembler state */ asmstate.include_list = lw_stringlist_create(); asmstate.input_files = lw_stringlist_create(); @@ -186,34 +191,6 @@ input_init(&asmstate); -// do_pass1(&asmstate); -{ - lw_expr_t te; - - te = lw_expr_build(lw_expr_type_oper, lw_expr_oper_plus, - lw_expr_build_noref(lw_expr_type_oper, lw_expr_oper_plus, - lw_expr_build_noref(lw_expr_type_oper, lw_expr_oper_times, - lw_expr_build_noref(lw_expr_type_int, 2), - lw_expr_build_noref(lw_expr_type_var, "tvar") - ), - lw_expr_build_noref(lw_expr_type_oper, lw_expr_oper_times, - lw_expr_build_noref(lw_expr_type_var, "tvar"), - lw_expr_build_noref(lw_expr_type_int, 3) - ) - ), - lw_expr_build_noref(lw_expr_type_oper, lw_expr_oper_times, - lw_expr_build_noref(lw_expr_type_int, 16), - lw_expr_build_noref(lw_expr_type_var, "avar") - ) - ); - - lw_expr_print(te); - printf("\n"); - - lw_expr_simplify(te); - lw_expr_print(te); - printf("\n"); -} - + do_pass1(&asmstate); exit(0); }