|
RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
A COFF section. More...
#include <coff.h>
Public Types | |
| enum | { TEXT = 0x0020 , DATA = 0x0040 , BSS = 0x0080 } |
| COFF section flags. More... | |
Public Member Functions | |
| void | Clear () |
| Section (uint32_t flags=0, std::shared_ptr< Linker::Image > image=nullptr) | |
| void | ReadSectionHeader (Linker::Reader &rd, COFFVariantType coff_variant) |
| void | WriteSectionHeader (Linker::Writer &wr, COFFVariantType coff_variant) |
| uint32_t | ImageSize () const |
Public Attributes | |
| std::string | name |
| The name of the section (COFF name: s_name) | |
| offset_t | physical_address = 0 |
| The physical address of the section (expected to be identical to the virtual address) (COFF name: s_paddr) | |
| offset_t | address = 0 |
| The virtual address of the section (COFF name: s_vaddr) | |
| offset_t | size = 0 |
| The size of the section (COFF name: s_size) | |
| offset_t | section_pointer = 0 |
| Offset of stored image data from COFF header start (COFF name: s_scnptr) | |
| offset_t | relocation_pointer = 0 |
| Offset to COFF relocations (COFF name: s_relptr) | |
| offset_t | line_number_pointer = 0 |
| unused (COFF name: s_lnnoptr) | |
| uint32_t | relocation_count = 0 |
| COFF relocation count (COFF name: s_nreloc) | |
| uint32_t | line_number_count = 0 |
| unused (COFF name: s_nlnno) | |
| uint32_t | flags = 0 |
| COFF section flags, determines the type of the section (text, data, bss, etc.) (COFF name: s_flags) | |
| uint16_t | memory_page_number = 0 |
| TICOFF specific field. | |
| std::shared_ptr< Linker::Image > | image |
| The stored image data. | |
| std::vector< std::unique_ptr< Relocation > > | relocations |
| Collection of COFF relocations. | |
A COFF section.
| anonymous enum |
| offset_t COFF::COFFFormat::Section::physical_address = 0 |
The physical address of the section (expected to be identical to the virtual address) (COFF name: s_paddr)
For PE/COFF, this field is reinterpreted as the size of the section in memory