|
LLVM 22.0.0git
|
The plugin creates a debug object from when JITLink starts processing the corresponding LinkGraph. More...
Public Types | |
| using | FinalizeContinuation = std::function<void(Expected<ExecutorAddrRange>)> |
Public Member Functions | |
| 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 () |
| virtual void | reportSectionTargetMemoryRange (StringRef Name, SectionRange TargetMem) |
Protected Types | |
| using | InFlightAlloc = JITLinkMemoryManager::InFlightAlloc |
| using | FinalizedAlloc = JITLinkMemoryManager::FinalizedAlloc |
Protected Member Functions | |
| virtual Expected< SimpleSegmentAlloc > | finalizeWorkingMemory ()=0 |
Protected Attributes | |
| JITLinkMemoryManager & | MemMgr |
| const JITLinkDylib * | JD = nullptr |
| ExecutionSession & | ES |
| std::promise< MSVCPExpected< ExecutorAddrRange > > | FinalizePromise |
| std::future< MSVCPExpected< ExecutorAddrRange > > | FinalizeFuture |
The plugin creates a debug object from when JITLink starts processing the corresponding LinkGraph.
It provides access to the pass configuration of the LinkGraph and calls the finalization function, once the resulting link artifact was emitted.
Definition at line 115 of file ELFDebugObjectPlugin.cpp.
| using llvm::orc::DebugObject::FinalizeContinuation = std::function<void(Expected<ExecutorAddrRange>)> |
Definition at line 131 of file ELFDebugObjectPlugin.cpp.
|
protected |
Definition at line 158 of file ELFDebugObjectPlugin.cpp.
|
protected |
Definition at line 157 of file ELFDebugObjectPlugin.cpp.
|
inline |
Definition at line 117 of file ELFDebugObjectPlugin.cpp.
References ES, FinalizeFuture, FinalizePromise, JD, and MemMgr.
|
inlinevirtual |
Definition at line 144 of file ELFDebugObjectPlugin.cpp.
|
inline |
Definition at line 142 of file ELFDebugObjectPlugin.cpp.
References FinalizeFuture.
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
|
inline |
Definition at line 127 of file ELFDebugObjectPlugin.cpp.
References F.
|
inline |
Definition at line 134 of file ELFDebugObjectPlugin.cpp.
References FinalizePromise.
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
| void llvm::orc::DebugObject::finalizeAsync | ( | FinalizeContinuation | OnAsync | ) |
Definition at line 177 of file ELFDebugObjectPlugin.cpp.
References assert(), finalizeWorkingMemory(), llvm::orc::Read, and llvm::Expected< T >::takeError().
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
|
protectedpure virtual |
Implemented in llvm::orc::ELFDebugObject.
Referenced by finalizeAsync().
|
inline |
Definition at line 123 of file ELFDebugObjectPlugin.cpp.
References F.
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
|
inlinevirtual |
Reimplemented in llvm::orc::ELFDebugObject.
Definition at line 153 of file ELFDebugObjectPlugin.cpp.
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
|
inline |
Definition at line 138 of file ELFDebugObjectPlugin.cpp.
References FinalizePromise.
Referenced by llvm::orc::ELFDebugObjectPlugin::modifyPassConfig().
|
inline |
Definition at line 124 of file ELFDebugObjectPlugin.cpp.
References F.
|
protected |
Definition at line 164 of file ELFDebugObjectPlugin.cpp.
Referenced by llvm::orc::ELFDebugObject::Create(), DebugObject(), llvm::orc::ELFDebugObject::finalizeWorkingMemory(), and ~DebugObject().
|
protected |
Definition at line 167 of file ELFDebugObjectPlugin.cpp.
Referenced by awaitTargetMem(), and DebugObject().
|
protected |
Definition at line 166 of file ELFDebugObjectPlugin.cpp.
Referenced by DebugObject(), failMaterialization(), and reportTargetMem().
|
protected |
Definition at line 163 of file ELFDebugObjectPlugin.cpp.
Referenced by DebugObject(), and llvm::orc::ELFDebugObject::finalizeWorkingMemory().
|
protected |
Definition at line 162 of file ELFDebugObjectPlugin.cpp.
Referenced by DebugObject(), llvm::orc::ELFDebugObject::finalizeWorkingMemory(), and ~DebugObject().