1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 05:17:34 +00:00

LibELF: Make SymbolLookupResult::address a VirtualAddress

Let's use a stronger type than void* for this since we're talking
specifically about a virtual address and not necessarily a pointer
to something actually in memory (yet).
This commit is contained in:
Andreas Kling 2021-02-20 23:59:17 +01:00
parent c5d93e55d0
commit a43910acc3
4 changed files with 28 additions and 32 deletions

View file

@ -255,14 +255,14 @@ public:
struct SymbolLookupResult {
FlatPtr value { 0 };
FlatPtr address { 0 };
VirtualAddress address;
unsigned bind { STB_LOCAL };
const ELF::DynamicObject* dynamic_object { nullptr }; // The object in which the symbol is defined
};
Optional<SymbolLookupResult> lookup_symbol(const StringView& name) const;
// Will be called from _fixup_plt_entry, as part of the PLT trampoline
Elf32_Addr patch_plt_entry(u32 relocation_offset);
VirtualAddress patch_plt_entry(u32 relocation_offset);
Optional<SymbolLookupResult> lookup_symbol(const ELF::DynamicObject::Symbol&) const;