LLVM
8.0.1
|
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ExecutionEngine/JITSymbol.h"
#include "llvm/ExecutionEngine/Orc/SymbolStringPool.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/Debug.h"
#include <memory>
#include <vector>
Go to the source code of this file.
Classes | |
class | llvm::orc::FailedToMaterialize |
Used to notify a JITDylib that the given set of symbols failed to materialize. More... | |
class | llvm::orc::SymbolsNotFound |
Used to notify clients when symbols can not be found during a lookup. More... | |
class | llvm::orc::SymbolsCouldNotBeRemoved |
Used to notify clients that a set of symbols could not be removed. More... | |
class | llvm::orc::MaterializationResponsibility |
Tracks responsibility for materialization, and mediates interactions between MaterializationUnits and JDs. More... | |
class | llvm::orc::MaterializationUnit |
A MaterializationUnit represents a set of symbol definitions that can be materialized as a group, or individually discarded (when overriding definitions are encountered). More... | |
class | llvm::orc::AbsoluteSymbolsMaterializationUnit |
A MaterializationUnit implementation for pre-existing absolute symbols. More... | |
struct | llvm::orc::SymbolAliasMapEntry |
class | llvm::orc::ReExportsMaterializationUnit |
A materialization unit for symbol aliases. More... | |
class | llvm::orc::ReexportsGenerator |
ReexportsGenerator can be used with JITDylib::setGenerator to automatically re-export a subset of the source JITDylib's symbols in the target. More... | |
class | llvm::orc::AsynchronousSymbolQuery |
A symbol query that returns results via a callback when results are ready. More... | |
class | llvm::orc::JITDylib |
A symbol table that supports asynchoronous symbol queries. More... | |
class | llvm::orc::ExecutionSession |
An ExecutionSession represents a running JIT program. More... | |
class | llvm::orc::MangleAndInterner |
Mangles symbol names then uniques them in the context of an ExecutionSession. More... | |
Namespaces | |
llvm | |
This class represents lattice values for constants. | |
llvm::orc | |
Macros | |
#define | DEBUG_TYPE "orc" |
Typedefs | |
using | llvm::orc::VModuleKey = uint64_t |
VModuleKey provides a unique identifier (allocated and managed by ExecutionSessions) for a module added to the JIT. More... | |
using | llvm::orc::SymbolNameSet = DenseSet< SymbolStringPtr > |
A set of symbol names (represented by SymbolStringPtrs for. More... | |
using | llvm::orc::SymbolMap = DenseMap< SymbolStringPtr, JITEvaluatedSymbol > |
A map from symbol names (as SymbolStringPtrs) to JITSymbols (address/flags pairs). More... | |
using | llvm::orc::SymbolFlagsMap = DenseMap< SymbolStringPtr, JITSymbolFlags > |
A map from symbol names (as SymbolStringPtrs) to JITSymbolFlags. More... | |
using | llvm::orc::SymbolDependenceMap = DenseMap< JITDylib *, SymbolNameSet > |
A base class for materialization failures that allows the failing symbols to be obtained for logging. More... | |
using | llvm::orc::JITDylibSearchList = std::vector< std::pair< JITDylib *, bool > > |
A list of (JITDylib*, bool) pairs. More... | |
using | llvm::orc::SymbolsResolvedCallback = std::function< void(Expected< SymbolMap >)> |
Callback to notify client that symbols have been resolved. More... | |
using | llvm::orc::SymbolsReadyCallback = std::function< void(Error)> |
Callback to notify client that symbols are ready for execution. More... | |
using | llvm::orc::RegisterDependenciesFunction = std::function< void(const SymbolDependenceMap &)> |
Callback to register the dependencies for a given query. More... | |
using | llvm::orc::MaterializationUnitList = std::vector< std::unique_ptr< MaterializationUnit > > |
using | llvm::orc::SymbolAliasMap = DenseMap< SymbolStringPtr, SymbolAliasMapEntry > |
A map of Symbols to (Symbol, Flags) pairs. More... | |
Functions | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolStringPtr &Sym) |
Render a SymbolStringPtr. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolNameSet &Symbols) |
Render a SymbolNameSet. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolFlagsMap::value_type &KV) |
Render a SymbolFlagsMap entry. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolMap::value_type &KV) |
Render a SymbolMap entry. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolFlagsMap &SymbolFlags) |
Render a SymbolFlagsMap. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolMap &Symbols) |
Render a SymbolMap. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const SymbolDependenceMap::value_type &KV) |
Render a SymbolDependenceMap entry. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const MaterializationUnit &MU) |
Render a MaterializationUnit. More... | |
raw_ostream & | llvm::orc::operator<< (raw_ostream &OS, const JITDylibSearchList &JDs) |
Render a JITDylibSearchList. More... | |
std::unique_ptr< AbsoluteSymbolsMaterializationUnit > | llvm::orc::absoluteSymbols (SymbolMap Symbols, VModuleKey K=VModuleKey()) |
Create an AbsoluteSymbolsMaterializationUnit with the given symbols. More... | |
std::unique_ptr< ReExportsMaterializationUnit > | llvm::orc::symbolAliases (SymbolAliasMap Aliases, VModuleKey K=VModuleKey()) |
Create a ReExportsMaterializationUnit with the given aliases. More... | |
std::unique_ptr< ReExportsMaterializationUnit > | llvm::orc::reexports (JITDylib &SourceJD, SymbolAliasMap Aliases, bool MatchNonExported=false, VModuleKey K=VModuleKey()) |
Create a materialization unit for re-exporting symbols from another JITDylib with alternative names/flags. More... | |
Expected< SymbolAliasMap > | llvm::orc::buildSimpleReexportsAliasMap (JITDylib &SourceJD, const SymbolNameSet &Symbols) |
Build a SymbolAliasMap for the common case where you want to re-export symbols from another JITDylib with the same linkage/flags. More... | |
Variables | |
RegisterDependenciesFunction | llvm::orc::NoDependenciesToRegister |
This can be used as the value for a RegisterDependenciesFunction if there are no dependants to register with. More... | |