LLVM 24.0.0git
llvm::orc::InstanceSymbolGenerator Class Reference

A DefinitionGenerator that generates symbols by looking them up in the ORC runtime Session's instance symbols (via a Proxy). More...

#include "llvm/ExecutionEngine/Orc/InstanceSymbolGenerator.h"

Inheritance diagram for llvm::orc::InstanceSymbolGenerator:
[legend]

Public Types

using LookupProxy = Proxy<SymbolLookupResult(SymbolLookupSet)>

Public Member Functions

 InstanceSymbolGenerator (LookupProxy Lookup)
Error tryToGenerate (LookupState &LS, LookupKind K, JITDylib &JD, JITDylibLookupFlags JDLookupFlags, const SymbolLookupSet &Symbols) override
 DefinitionGenerators should override this method to insert new definitions into the parent JITDylib.
Public Member Functions inherited from llvm::orc::DefinitionGenerator
virtual ~DefinitionGenerator ()

Detailed Description

A DefinitionGenerator that generates symbols by looking them up in the ORC runtime Session's instance symbols (via a Proxy).

Instance symbols are names that the ORC runtime gives to objects created at runtime, which have no symbols under the standard object models.

Definition at line 27 of file InstanceSymbolGenerator.h.

Member Typedef Documentation

◆ LookupProxy

Constructor & Destructor Documentation

◆ InstanceSymbolGenerator()

llvm::orc::InstanceSymbolGenerator::InstanceSymbolGenerator ( LookupProxy Lookup)
inline

Definition at line 31 of file InstanceSymbolGenerator.h.

References llvm::move().

Member Function Documentation

◆ tryToGenerate()

Error llvm::orc::InstanceSymbolGenerator::tryToGenerate ( LookupState & LS,
LookupKind K,
JITDylib & JD,
JITDylibLookupFlags JDLookupFlags,
const SymbolLookupSet & LookupSet )
overridevirtual

DefinitionGenerators should override this method to insert new definitions into the parent JITDylib.

K specifies the kind of this lookup. JD specifies the target JITDylib being searched, and JDLookupFlags specifies whether the search should match against hidden symbols. Finally, Symbols describes the set of unresolved symbols and their associated lookup flags.

Implements llvm::orc::DefinitionGenerator.

Definition at line 18 of file InstanceSymbolGenerator.cpp.

References llvm::orc::absoluteSymbols(), llvm::orc::SymbolLookupSet::add(), llvm::dbgs(), llvm::orc::JITDylib::define(), llvm::DenseMapBase< StorageT, KeyT, ValueT, KeyInfoT, BucketT >::empty(), llvm::JITSymbolFlags::Exported, llvm::orc::JITDylib::getExecutionSession(), llvm::inconvertibleErrorCode(), LLVM_DEBUG, llvm::make_error(), llvm::orc::RequiredSymbol, llvm::orc::Result, and llvm::Error::success().


The documentation for this class was generated from the following files: