Did some renaming and cleanup: Renamed EXPR_SEGMENT to EXPR_SECTION, since

this is what it really is. Added a real EXPR_SECTION which is now used in
the linker to represent the run address of a segment, provided that it is
requested to be defined. Changed some named in use of EXPR_MEMAREA. Added
handling of the new EXPR_SEGMENT to both, the binary and o65 output format.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1769 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz
2002-12-14 22:57:00 +00:00
parent f47648ecfb
commit 0774fe273a
10 changed files with 236 additions and 125 deletions

View File

@@ -120,11 +120,14 @@ void InsertExport (Export* E);
Export* CreateConstExport (const char* Name, long Value);
/* Create an export for a literal date */
Export* CreateMemExport (const char* Name, Memory* Mem, unsigned long Offs);
Export* CreateMemoryExport (const char* Name, Memory* Mem, unsigned long Offs);
/* Create an relative export for a memory area offset */
Export* CreateSegExport (const char* Name, Section* S, unsigned long Offs);
/* Create a relative export to a segment (section) */
Export* CreateSegmentExport (const char* Name, Segment* Seg, unsigned long Offs);
/* Create a relative export to a segment */
Export* CreateSectionExport (const char* Name, Section* S, unsigned long Offs);
/* Create a relative export to a section */
Export* FindExport (const char* Name);
/* Check for an identifier in the list. Return 0 if not found, otherwise
@@ -137,7 +140,7 @@ int IsUnresolved (const char* Name);
int IsUnresolvedExport (const Export* E);
/* Return true if the given export is unresolved */
int IsConstExport (const Export* E);
int IsConstExport (const Export* E);
/* Return true if the expression associated with this export is const */
long GetExportVal (const Export* E);