comparison src/insn_bitbit.c @ 37:538e15927776

Added symbol handling to expression subsystem; adpated instruction handlers to the new scheme; misc fixes
author lost
date Sat, 03 Jan 2009 04:20:49 +0000
parents 74a3fef7c8d0
children 8929e1ee99cf
comparison
equal deleted inserted replaced
36:99e3b3310bac 37:538e15927776
57 if (*(*p)++ != ',') 57 if (*(*p)++ != ',')
58 { 58 {
59 register_error(as, l, 1, "Bad operand"); 59 register_error(as, l, 1, "Bad operand");
60 return; 60 return;
61 } 61 }
62 s = lwasm_expr_eval(*p, NULL); 62 s = lwasm_evaluate_expr(as, l, *p, NULL);
63 if (!s) 63 if (!s)
64 { 64 {
65 register_error(as, l, 1, "Bad operand"); 65 register_error(as, l, 1, "Bad operand");
66 return; 66 return;
67 } 67 }
81 register_error(as, l, 1, "Bad operand"); 81 register_error(as, l, 1, "Bad operand");
82 return; 82 return;
83 } 83 }
84 r = (r << 6) | (v1 << 3); 84 r = (r << 6) | (v1 << 3);
85 85
86 s = lwasm_expr_eval(*p, NULL); 86 s = lwasm_evaluate_expr(as, l, *p, NULL);
87 if (!s) 87 if (!s)
88 { 88 {
89 register_error(as, l, 1, "Bad operand"); 89 register_error(as, l, 1, "Bad operand");
90 return; 90 return;
91 } 91 }
111 111
112 // ignore base page address modifier 112 // ignore base page address modifier
113 if (**p == '<') 113 if (**p == '<')
114 (*p)++; 114 (*p)++;
115 115
116 s = lwasm_expr_eval(*p, NULL); 116 s = lwasm_evaluate_expr(as, l, *p, NULL);
117 if (!s) 117 if (!s)
118 { 118 {
119 register_error(as, l, 1, "Bad operand"); 119 register_error(as, l, 1, "Bad operand");
120 return; 120 return;
121 } 121 }