RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
COFF::COFFFormat::UNIXRelocation Class Reference

The standard UNIX COFF relocation format. More...

#include <coff.h>

Inheritance diagram for COFF::COFFFormat::UNIXRelocation:
COFF::COFFFormat::Relocation

Public Member Functions

 UNIXRelocation (COFFVariantType coff_variant, cpu cpu_type)
 
void Read (Linker::Reader &rd)
 
offset_t GetAddress () const override
 
size_t GetSize () const override
 
size_t GetEntrySize () const override
 
void WriteFile (Linker::Writer &wr) const override
 
void FillEntry (Dumper::Entry &entry) const override
 

Public Attributes

COFFVariantType coff_variant
 
cpu cpu_type
 
offset_t address = 0
 
uint32_t symbol_index = 0
 
uint16_t type = 0
 
uint32_t information = 0
 

Static Public Attributes

static constexpr uint16_t R_ABS = 0
 No relocation.
 
static constexpr uint16_t R_DIR16 = 1
 16-bit virtual address of symbol
 
static constexpr uint16_t R_REL16 = 2
 16-bit relative address of symbol
 
static constexpr uint16_t R_DIR32 = 6
 32-bit virtual address of symbol
 
static constexpr uint16_t R_DIR32NB = 7
 (Microsoft COFF) 32-bit relative virtual address of symbol
 
static constexpr uint16_t R_SEG12 = 9
 (Intel x86) 16-bit segment selector of symbol
 
static constexpr uint16_t R_SECTION = 10
 (Microsoft, debugging) 16-bit section index
 
static constexpr uint16_t R_SECREL = 11
 (Microsoft, debugging) 32-bit offset from section start
 
static constexpr uint16_t R_TOKEN = 12
 (Microsoft) CLR token
 
static constexpr uint16_t R_SECREL7 = 13
 (Microsoft) 7-bit offset from section base
 
static constexpr uint16_t R_REL32 = 20
 32-bit relative address of symbol
 

Detailed Description

The standard UNIX COFF relocation format.

Member Function Documentation

◆ FillEntry()

void COFFFormat::UNIXRelocation::FillEntry ( Dumper::Entry & entry) const
overridevirtual

◆ GetAddress()

offset_t COFFFormat::UNIXRelocation::GetAddress ( ) const
overridevirtual

◆ GetEntrySize()

offset_t COFFFormat::UNIXRelocation::GetEntrySize ( ) const
overridevirtual

◆ GetSize()

size_t COFFFormat::UNIXRelocation::GetSize ( ) const
overridevirtual

◆ WriteFile()

void COFFFormat::UNIXRelocation::WriteFile ( Linker::Writer & wr) const
overridevirtual

The documentation for this class was generated from the following files: