TPDE
Loading...
Searching...
No Matches
tpde::Assembler Class Referenceabstract

Assembler base class. More...

#include <Assembler.hpp>

Public Types

enum class  SymBinding : u8 { LOCAL , WEAK , GLOBAL }
 

Public Member Functions

virtual void sym_def (SymRef, SecRef, u64 pos, u64 size) noexcept=0
 Define a symbol at the specified location.
 
void sym_def_predef_data (SecRef sec, SymRef sym, std::span< const u8 > data, u32 align, u32 *off) noexcept
 Define predefined symbol with the specified data.
 
void sym_def_predef_zero (SecRef sec_ref, SymRef sym_ref, u32 size, u32 align, u32 *off=nullptr) noexcept
 Define predefined symbol with zero; also supported for BSS sections.
 
Sections
Relocations
void reloc_sec (SecRef sec, SymRef sym, u32 type, u32 offset, i64 addend) noexcept
 Add relocation. Type is file-format and target-specific.
 

Detailed Description

Assembler base class.

Definition at line 150 of file Assembler.hpp.

Member Enumeration Documentation

◆ SymBinding

enum class tpde::Assembler::SymBinding : u8
strong
Enumerator
LOCAL 

Symbol with local linkage, must be defined.

WEAK 

Weak linkage.

GLOBAL 

Global linkage.

Definition at line 152 of file Assembler.hpp.


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