template <class Diagnostics>
struct ModuleTranscriberContext
Defined at line 332 of file ../../sdk/lib/ld/include/lib/ld/remote-abi.h
In this context, pointers point into the module's loaded image.
Public Members
const AbiTranscriberContext<Diagnostics> & abi
const ModuleVaddrMap & vaddr_map
Public Methods
template <typename T>
std::optional<Addr> FromLocalPtr (const T & ptr)
Defined at line 334 of file ../../sdk/lib/ld/include/lib/ld/remote-abi.h
template <auto Member, typename MemberType, auto LocalMember, typename Local>
bool MemberFromLocal (MemberType & out, const Local & in)
Most members stay in the module context where the FromLocalPtr above is
used for any AbiPtr-typed members: they point into this module's image.
Defined at line 341 of file ../../sdk/lib/ld/include/lib/ld/remote-abi.h
bool MemberFromLocal (LinkMapPtr & out, const LocalLinkMap & in)
The link_map linked-list pointers are inside the AbiModule object but
really they are heap pointers, so they redirect back to that context.
Defined at line 348 of file ../../sdk/lib/ld/include/lib/ld/remote-abi.h
bool MemberFromLocal (AbiStringPtr & out, const LocalLinkMap & in)
The name pointer is a special case. It doesn't get transcribed from the
local pointer. Instead it gets set directly after transcription, below.
Defined at line 362 of file ../../sdk/lib/ld/include/lib/ld/remote-abi.h