]> Shamusworld >> Repos - rmac/blobdiff - symbol.h
Add NewDebugSymbol(): stabs symbol factory
[rmac] / symbol.h
index f985b1bb23322b29873443a3b0ed79f34a88b2cc..c10d71b189f080c64c14541f66806959566510b7 100644 (file)
--- a/symbol.h
+++ b/symbol.h
@@ -1,7 +1,7 @@
 //
-// RMAC - Reboot's Macro Assembler for all Atari computers
+// RMAC - Renamed Macro Assembler for all Atari computers
 // SYMBOL.H - Symbol Handling
-// Copyright (C) 199x Landon Dyer, 2011-2018 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2022 Reboot and Friends
 // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
 // Source utilised with the kind permission of Landon Dyer
 //
@@ -35,7 +35,11 @@ SYM
        uint8_t * sname;                // * -> Symbol's print-name
        LLIST * lineList;               // * -> Macro's linked list of lines
        LLIST * last;                   // * -> end of macro linked list
+       uint16_t cfileno;               // File the macro is defined in
        uint32_t uid;                   // Symbol's unique ID
+       uint8_t st_type;                // stabs debug symbol's "type" field
+       uint8_t st_other;               // stabs debug symbol's "other" field
+       uint16_t st_desc;               // stabs debug symbol's "description" field
 };
 
 // Exported variables
@@ -49,9 +53,11 @@ SYM * NewSymbol(uint8_t *, int, int);
 void AddToSymbolDeclarationList(SYM *);
 void ForceUndefinedSymbolsGlobal(void);
 int symtable(void);
-uint32_t sy_assign(uint8_t *, uint8_t *(*)());
-uint32_t sy_assign_ELF(uint8_t *, uint8_t *(*)());
+uint32_t AssignSymbolNos(uint8_t *, uint8_t *(*)());
+uint32_t AssignSymbolNosELF(uint8_t *, uint8_t *(*)());
+void DumpLODSymbols(void);
 uint8_t * GetSymbolNameByUID(uint32_t);
+SYM * NewDebugSymbol(uint8_t *, uint8_t, uint8_t, uint16_t);
 
 #endif // __SYMBOL_H__