#include "llvm/ExecutionEngine/Orc/LazyReexports.h"
#include "llvm/ExecutionEngine/Orc/OrcABISupport.h"
#include "llvm/TargetParser/Triple.h"
#define DEBUG_TYPE …
namespace llvm {
namespace orc {
LazyCallThroughManager::LazyCallThroughManager(ExecutionSession &ES,
ExecutorAddr ErrorHandlerAddr,
TrampolinePool *TP)
: … { … }
Expected<ExecutorAddr> LazyCallThroughManager::getCallThroughTrampoline(
JITDylib &SourceJD, SymbolStringPtr SymbolName,
NotifyResolvedFunction NotifyResolved) { … }
ExecutorAddr LazyCallThroughManager::reportCallThroughError(Error Err) { … }
Expected<LazyCallThroughManager::ReexportsEntry>
LazyCallThroughManager::findReexport(ExecutorAddr TrampolineAddr) { … }
Error LazyCallThroughManager::notifyResolved(ExecutorAddr TrampolineAddr,
ExecutorAddr ResolvedAddr) { … }
void LazyCallThroughManager::resolveTrampolineLandingAddress(
ExecutorAddr TrampolineAddr,
NotifyLandingResolvedFunction NotifyLandingResolved) { … }
Expected<std::unique_ptr<LazyCallThroughManager>>
createLocalLazyCallThroughManager(const Triple &T, ExecutionSession &ES,
ExecutorAddr ErrorHandlerAddr) { … }
LazyReexportsMaterializationUnit::LazyReexportsMaterializationUnit(
LazyCallThroughManager &LCTManager, IndirectStubsManager &ISManager,
JITDylib &SourceJD, SymbolAliasMap CallableAliases, ImplSymbolMap *SrcJDLoc)
: … { … }
StringRef LazyReexportsMaterializationUnit::getName() const { … }
void LazyReexportsMaterializationUnit::materialize(
std::unique_ptr<MaterializationResponsibility> R) { … }
void LazyReexportsMaterializationUnit::discard(const JITDylib &JD,
const SymbolStringPtr &Name) { … }
MaterializationUnit::Interface
LazyReexportsMaterializationUnit::extractFlags(const SymbolAliasMap &Aliases) { … }
}
}