|
RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
An external name declaration, appearing in an EXTDEF, LEXTDEF, COMDEF, LCOMDEF or CEXTDEF record. More...
#include <omf.h>
Public Types | |
| enum | common_type_t { External , SegmentIndexCommon , FarCommon = 0x61 , NearCommon = 0x62 } |
| Type of a common symbol. More... | |
Public Member Functions | |
| uint16_t | GetExternalNameSize (OMF86Format *omf) const |
| Returns the number of bytes required to write this entry. | |
| void | WriteExternalName (OMF86Format *omf, ChecksumWriter &wr) const |
| Writes this entry to file. | |
| void | CalculateValues (OMF86Format *omf, Module *mod) |
| void | ResolveReferences (OMF86Format *omf, Module *mod) |
Static Public Member Functions | |
| static uint32_t | ReadLength (OMF86Format *omf, Linker::Reader &rd) |
| Read a length value, for near or far elements. | |
| static uint32_t | GetLengthSize (OMF86Format *omf, uint32_t length) |
| Determines the number of bytes needed for a length value, for near or far elements. | |
| static void | WriteLength (OMF86Format *omf, ChecksumWriter &wr, uint32_t length) |
| Writes a length value, for near or far elements. | |
| static ExternalName | ReadExternalName (OMF86Format *omf, Linker::Reader &rd, bool local) |
| Parse an EXTDEF or LEXTDEF entry. | |
| static ExternalName | ReadCommonName (OMF86Format *omf, Linker::Reader &rd, bool local) |
| Parse a COMDEF or LCOMDEF entry. | |
| static ExternalName | ReadComdatExternalName (OMF86Format *omf, Linker::Reader &rd) |
| Parse a CEXTDEF entry. | |
Public Attributes | ||
| bool | local = false | |
| Signals if a symbol is local. | ||
| bool | name_is_index = false | |
| Set if name.index contains a valid value, for CEXTDEF entries. | ||
| NameIndex | name | |
| Name of the symbol. | ||
| TypeIndex | type | |
| common_type_t | common_type = External | |
| union { | ||
| uint8_t segment_index | ||
| struct { | ||
| uint32_t length | ||
| } near | ||
| struct { | ||
| uint32_t number | ||
| uint32_t element_size | ||
| } far | ||
| } | value | |
An external name declaration, appearing in an EXTDEF, LEXTDEF, COMDEF, LCOMDEF or CEXTDEF record.