X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rln;a=blobdiff_plain;f=rln.h;fp=rln.h;h=9451dfb395084ad719cf0a7210d9119a4ad9fc2e;hp=7737f4d945e1e6340e73af7668e83cfcadf3c122;hb=0d71dcf00270f75a7692c788e2834e47231780ef;hpb=a63bf6807773cdcf9d5660bab8e0bc97645cf8b1 diff --git a/rln.h b/rln.h index 7737f4d..9451dfb 100644 --- a/rln.h +++ b/rln.h @@ -250,18 +250,15 @@ struct OFILE // Symbol Record -// SYMREC: Used by builddir for the lists of exports and imports, and by the -// linker for the output symbol table (that's why there are type and value -// fields, unused in builddir) +// SYMREC: Used by the linker for the output symbol table -#define SYMLEN 100 // Symbol name size (incl. null) +#define OST_SIZE_INIT 8 // Half the initial output symbol table size struct SYMREC { - uint8_t s_name[SYMLEN]; // Including null terminator - uint16_t s_type; + uint32_t s_idx; + uint32_t s_type; uint32_t s_value; - struct SYMREC * s_next; }; #define new_symrec() (struct SYMREC *)malloc(sizeof(struct SYMREC)) @@ -272,6 +269,8 @@ struct SYMREC // and Globals share a hash table, but their value fields are interpreted // differently. +#define SYMLEN 100 // Symbol name size (incl. null) + struct HREC { uint8_t h_sym[SYMLEN];