mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 11:38:11 +00:00
Loader: Stabilize loader & Use shared libraries everywhere :^)
The dynamic loader is now stable enough to be used everywhere in the system - so this commit does just that. No More .a Files, Long Live .so's!
This commit is contained in:
parent
c917fcbac4
commit
efe4da57df
28 changed files with 401 additions and 173 deletions
|
@ -267,6 +267,13 @@ public:
|
|||
};
|
||||
Optional<SymbolLookupResult> lookup_symbol(const char* name) const;
|
||||
|
||||
// Will be called from _fixup_plt_entry, as part of the PLT trampoline
|
||||
Elf32_Addr patch_plt_entry(u32 relocation_offset);
|
||||
|
||||
SymbolLookupResult lookup_symbol(const ELF::DynamicObject::Symbol& symbol) const;
|
||||
using SymbolLookupFunction = DynamicObject::SymbolLookupResult (*)(const char*);
|
||||
SymbolLookupFunction m_global_symbol_lookup_func { nullptr };
|
||||
|
||||
private:
|
||||
explicit DynamicObject(VirtualAddress base_address, VirtualAddress dynamic_section_address);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue