Base class for a target architecture to implement the target specific aspects of linking.
More...
|
virtual | ~Linker ()=default |
|
virtual uint16_t | get_machine ()=0 |
|
virtual uint32_t | get_flags ()=0 |
|
virtual uint32_t | get_version ()=0 |
|
virtual void | append_dynamic (Section &dynamic)=0 |
|
virtual uint64_t | get_got_entry (Section &got, const Symbol &sym)=0 |
| Add or get an entry to the global offset table (GOT) with a relocation pointing to sym.
|
|
virtual bool | needs_plt_entry (const Relocation &reloc)=0 |
| Check to see if this relocation should go through the PLT.
|
|
virtual Symbol | add_plt_entry (const Symbol &sym, Section &plt, Section &got, const Symbol &got_sym)=0 |
| Add a PLT entry for a symbol sym defined externally.
|
|
virtual Relocation | relocate (uint64_t fixup_offset, char *fixup_addr, uint64_t type, const Symbol *sym, uint64_t sym_offset, int64_t addend, Section &got)=0 |
| Perform a relocation.
|
|
Base class for a target architecture to implement the target specific aspects of linking.
Definition at line 427 of file Elf.h.