LLVM: llvm::orc::ELFDebugObject Class Reference (original) (raw)
The current implementation of ELFDebugObject replicates the approach used in RuntimeDyld: It patches executable and data section headers in the given object buffer with load-addresses of their corresponding sections in target memory. More...
| Public Member Functions | |
|---|---|
| void | reportSectionTargetMemoryRange (StringRef Name, SectionRange TargetMem) override |
| StringRef | getBuffer () const |
| Public Member Functions inherited from llvm::orc::DebugObject | |
| DebugObject (JITLinkMemoryManager &MemMgr, const JITLinkDylib *JD, ExecutionSession &ES) | |
| bool | hasFlags (DebugObjectFlags F) const |
| void | setFlags (DebugObjectFlags F) |
| void | clearFlags (DebugObjectFlags F) |
| void | finalizeAsync (FinalizeContinuation OnAsync) |
| void | failMaterialization (Error Err) |
| void | reportTargetMem (ExecutorAddrRange TargetMem) |
| Expected< ExecutorAddrRange > | awaitTargetMem () |
| virtual | ~DebugObject () |
| Additional Inherited Members | |
|---|---|
| Public Types inherited from llvm::orc::DebugObject | |
| using | FinalizeContinuation = std::function<void(Expected<ExecutorAddrRange>)> |
| Protected Types inherited from llvm::orc::DebugObject | |
| using | InFlightAlloc = JITLinkMemoryManager::InFlightAlloc |
| using | FinalizedAlloc = JITLinkMemoryManager::FinalizedAlloc |
| Protected Attributes inherited from llvm::orc::DebugObject | |
| JITLinkMemoryManager & | MemMgr |
| const JITLinkDylib * | JD = nullptr |
| ExecutionSession & | ES |
| std::promise< MSVCPExpected< ExecutorAddrRange > > | FinalizePromise |
| std::future< MSVCPExpected< ExecutorAddrRange > > | FinalizeFuture |
The current implementation of ELFDebugObject replicates the approach used in RuntimeDyld: It patches executable and data section headers in the given object buffer with load-addresses of their corresponding sections in target memory.
Definition at line 206 of file ELFDebugObjectPlugin.cpp.
◆ Create()
◆ finalizeWorkingMemory()
◆ getBuffer()
| StringRef llvm::orc::ELFDebugObject::getBuffer ( ) const | inline |
|---|
◆ getSection()
◆ recordSection()
◆ reportSectionTargetMemoryRange()
| void llvm::orc::ELFDebugObject::reportSectionTargetMemoryRange ( StringRef Name, SectionRange TargetMem ) | overridevirtual |
|---|
The documentation for this class was generated from the following file:
- lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp