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