Mercurial > hg-old > index.cgi
comparison src/lwasm.h @ 63:d85ba47b1e8f
Moved symbol registration so symbols that are in skipped code do not get registered and so EQU/SET can do their own registration
author | lost |
---|---|
date | Mon, 05 Jan 2009 01:17:23 +0000 |
parents | b1d81800bc91 |
children | aaddd47219b4 |
comparison
equal
deleted
inserted
replaced
62:da1337724ecd | 63:d85ba47b1e8f |
---|---|
69 int addrset; // set if this instruction sets the assembly address | 69 int addrset; // set if this instruction sets the assembly address |
70 int symaddr; // set if this instruction sets a symbol addr with EQU or the like | 70 int symaddr; // set if this instruction sets a symbol addr with EQU or the like |
71 }; | 71 }; |
72 | 72 |
73 // for keeping track of symbols | 73 // for keeping track of symbols |
74 #define SYMBOL_SET 1 // the symbol was used for "SET" | |
75 #define SYMBOL_NORM 0 // no flags | |
74 typedef struct lwasm_symbol_ent_s lwasm_symbol_ent_t; | 76 typedef struct lwasm_symbol_ent_s lwasm_symbol_ent_t; |
75 struct lwasm_symbol_ent_s | 77 struct lwasm_symbol_ent_s |
76 { | 78 { |
77 char *sym; // the symbol | 79 char *sym; // the symbol |
78 int context; // the context number of the symbol (-1 for global) | 80 int context; // the context number of the symbol (-1 for global) |
79 int value; // the value of the symbol | 81 int value; // the value of the symbol |
82 int flags; // flags for the symbol | |
80 lwasm_symbol_ent_t *next; // next symbol in the table | 83 lwasm_symbol_ent_t *next; // next symbol in the table |
81 lwasm_symbol_ent_t *prev; // previous symbol in the table | 84 lwasm_symbol_ent_t *prev; // previous symbol in the table |
82 }; | 85 }; |
83 | 86 |
84 // keep track of current assembler state | 87 // keep track of current assembler state |