LLVM 20.0.0git
|
#include "llvm/ExecutionEngine/Orc/LazyReexports.h"
Classes | |
class | SpeculateTask |
Public Types | |
using | RecordExecutionFunction = unique_function< void(const CallThroughInfo &CTI)> |
![]() | |
using | CallThroughInfo = LazyReexportsManager::CallThroughInfo |
Public Member Functions | |
SimpleLazyReexportsSpeculator (SimpleLazyReexportsSpeculator &&)=delete | |
SimpleLazyReexportsSpeculator & | operator= (SimpleLazyReexportsSpeculator &&)=delete |
~SimpleLazyReexportsSpeculator () override | |
void | onLazyReexportsCreated (JITDylib &JD, ResourceKey K, const SymbolAliasMap &Reexports) override |
Called under the session lock when new lazy reexports are created. | |
void | onLazyReexportsTransfered (JITDylib &JD, ResourceKey DstK, ResourceKey SrcK) override |
Called under the session lock when lazy reexports have their ownership transferred to a new ResourceKey. | |
Error | onLazyReexportsRemoved (JITDylib &JD, ResourceKey K) override |
Called under the session lock when lazy reexports are removed. | |
void | onLazyReexportCalled (const CallThroughInfo &CTI) override |
Called outside the session lock when a lazy reexport is called. | |
void | addSpeculationSuggestions (std::vector< std::pair< std::string, SymbolStringPtr > > NewSuggestions) |
![]() | |
virtual | ~Listener () |
virtual void | onLazyReexportsCreated (JITDylib &JD, ResourceKey K, const SymbolAliasMap &Reexports)=0 |
Called under the session lock when new lazy reexports are created. | |
virtual void | onLazyReexportsTransfered (JITDylib &JD, ResourceKey DstK, ResourceKey SrcK)=0 |
Called under the session lock when lazy reexports have their ownership transferred to a new ResourceKey. | |
virtual Error | onLazyReexportsRemoved (JITDylib &JD, ResourceKey K)=0 |
Called under the session lock when lazy reexports are removed. | |
virtual void | onLazyReexportCalled (const CallThroughInfo &CTI)=0 |
Called outside the session lock when a lazy reexport is called. | |
Static Public Member Functions | |
static std::shared_ptr< SimpleLazyReexportsSpeculator > | Create (ExecutionSession &ES, RecordExecutionFunction RecordExec={}) |
Definition at line 271 of file LazyReexports.h.
using llvm::orc::SimpleLazyReexportsSpeculator::RecordExecutionFunction = unique_function<void(const CallThroughInfo &CTI)> |
Definition at line 273 of file LazyReexports.h.
|
delete |
|
override |
Definition at line 467 of file LazyReexports.cpp.
References _.
void llvm::orc::SimpleLazyReexportsSpeculator::addSpeculationSuggestions | ( | std::vector< std::pair< std::string, SymbolStringPtr > > | NewSuggestions | ) |
Definition at line 535 of file LazyReexports.cpp.
|
inlinestatic |
Definition at line 277 of file LazyReexports.h.
|
overridevirtual |
Called outside the session lock when a lazy reexport is called.
NOTE: Since this is called outside the session lock there is a chance that the reexport referred to has already been removed. Listeners must be prepared to handle requests for stale reexports.
Implements llvm::orc::LazyReexportsManager::Listener.
Definition at line 529 of file LazyReexports.cpp.
|
overridevirtual |
Called under the session lock when new lazy reexports are created.
Implements llvm::orc::LazyReexportsManager::Listener.
Definition at line 472 of file LazyReexports.cpp.
References Name, and llvm::ThreadSafeRefCountedBase< Derived >::Retain().
|
overridevirtual |
Called under the session lock when lazy reexports are removed.
Implements llvm::orc::LazyReexportsManager::Listener.
Definition at line 511 of file LazyReexports.cpp.
References I, llvm::ThreadSafeRefCountedBase< Derived >::Release(), and llvm::Error::success().
|
overridevirtual |
Called under the session lock when lazy reexports have their ownership transferred to a new ResourceKey.
Implements llvm::orc::LazyReexportsManager::Listener.
Definition at line 485 of file LazyReexports.cpp.
References I.
|
delete |