Mercurial > hg-old > index.cgi
comparison src/lwasm.h @ 90:6097cb1486f8
Added EXPORT pseudo op
author | lost |
---|---|
date | Sat, 17 Jan 2009 05:07:45 +0000 |
parents | 033a328a10ae |
children | 718998b673ee |
comparison
equal
deleted
inserted
replaced
89:11d38c9e5095 | 90:6097cb1486f8 |
---|---|
37 struct section_reloc_list_s | 37 struct section_reloc_list_s |
38 { | 38 { |
39 int offset; // offset into section | 39 int offset; // offset into section |
40 lwasm_expr_stack_t *expr; // value definition | 40 lwasm_expr_stack_t *expr; // value definition |
41 section_reloc_list_t *next; // next relocation | 41 section_reloc_list_t *next; // next relocation |
42 }; | |
43 | |
44 typedef struct export_list_s export_list_t; | |
45 struct export_list_s | |
46 { | |
47 int offset; // offset of symbol | |
48 char *sym; // name of symbol | |
49 export_list_t *next; // next export | |
42 }; | 50 }; |
43 | 51 |
44 #define SECTION_BSS 1 // the section contains no actual code - just uninit vars | 52 #define SECTION_BSS 1 // the section contains no actual code - just uninit vars |
45 typedef struct sectiontab_s sectiontab_t; | 53 typedef struct sectiontab_s sectiontab_t; |
46 struct sectiontab_s | 54 struct sectiontab_s |
52 // the following are used during code output | 60 // the following are used during code output |
53 unsigned char *obytes; // output bytes | 61 unsigned char *obytes; // output bytes |
54 int oblen; // how many bytes output so far? | 62 int oblen; // how many bytes output so far? |
55 int obsize; // how big is output buffer so far? | 63 int obsize; // how big is output buffer so far? |
56 section_reloc_list_t *rl; // relocation list | 64 section_reloc_list_t *rl; // relocation list |
65 export_list_t *exports; // export list for the section | |
57 }; | 66 }; |
58 | 67 |
59 // structure for tracking macros | 68 // structure for tracking macros |
60 typedef struct macrotab_s macrotab_t; | 69 typedef struct macrotab_s macrotab_t; |
61 struct macrotab_s | 70 struct macrotab_s |