comparison lwasm/pass1.c @ 418:4b137a8cf32a

Implemented "branch points"
author lost@l-w.ca
date Tue, 10 Aug 2010 23:08:30 -0600
parents cac204676434
children
comparison
equal deleted inserted replaced
417:f792faf877bb 418:4b137a8cf32a
96 cl -> ltext = lw_strdup(line); 96 cl -> ltext = lw_strdup(line);
97 cl -> soff = -1; 97 cl -> soff = -1;
98 cl -> dshow = -1; 98 cl -> dshow = -1;
99 cl -> dsize = 0; 99 cl -> dsize = 0;
100 cl -> dptr = NULL; 100 cl -> dptr = NULL;
101 cl -> isbrpt = 0;
101 as -> cl = cl; 102 as -> cl = cl;
102 if (!as -> line_tail) 103 if (!as -> line_tail)
103 { 104 {
104 as -> line_head = cl; 105 as -> line_head = cl;
105 cl -> addr = lw_expr_build(lw_expr_type_int, 0); 106 cl -> addr = lw_expr_build(lw_expr_type_int, 0);
207 { 208 {
208 for (tok = p1; *p1 && !isspace(*p1); p1++) 209 for (tok = p1; *p1 && !isspace(*p1); p1++)
209 /* do nothing */ ; 210 /* do nothing */ ;
210 } 211 }
211 } 212 }
212 if (sym) 213 if (sym && strcmp(sym, "!") == 0)
214 cl -> isbrpt = 1;
215 else if (sym)
213 cl -> sym = lw_strdup(sym); 216 cl -> sym = lw_strdup(sym);
214 cl -> symset = 0; 217 cl -> symset = 0;
215 218
216 // tok points to the opcode for the line or NUL if none 219 // tok points to the opcode for the line or NUL if none
217 if (*tok) 220 if (*tok)