|
RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
Represents an a.out relocation, unifying 16-bit and 32-bit formats. More...
#include <aout.h>
Public Types | |
| enum | segment_type { Undefined , External , Absolute , Text , Data , Bss , FileName , Illegal } |
| Type of target. More... | |
Public Member Functions | |
| void | WriteFile16Bit (Linker::Writer &wr) const |
| void | WriteFile32Bit (Linker::Writer &wr, word_size_t word_size=WordSize32) const |
Static Public Member Functions | |
| static Relocation | ReadFile16Bit (Linker::Reader &rd, uint16_t offset) |
| static Relocation | ReadFile32Bit (Linker::Reader &rd, word_size_t word_size=WordSize32) |
Public Attributes | |
| uint32_t | address = 0 |
| Offset of relocation within segment. | |
| uint32_t | symbol = 0 |
| Symbol number, only valid for external relocations. | |
| bool | relative = false |
| Set to true if the relocation is PC-relative. | |
| size_t | size = 0 |
| Size of relocation, in bytes. | |
| segment_type | segment = Undefined |
| Represents the type of relocation target. | |
| uint32_t | literal_entry = 0 |
| For invalid bit combinations, stores the bits that are expected to be 0. | |
Represents an a.out relocation, unifying 16-bit and 32-bit formats.
Type of target.
| Enumerator | |
|---|---|
| Undefined | Target is undefined. |
| External | Target is external, symbol contains symbol number. |
| Absolute | Target is an absolute value. |
| Text | Target is the text segment. |
| Data | Target is the data segment. |
| Bss | Target is the bss segment. |
| FileName | Represents a file name symbol. |
| Illegal | Relocation entry is invalid. |
| size_t AOut::AOutFormat::Relocation::size = 0 |
Size of relocation, in bytes.
Must be 2 for 16-bit a.out