class JITSymbolResolver

Declaration

class JITSymbolResolver { /* full declaration omitted */ };

Description

Symbol resolution interface. Allows symbol flags and addresses to be looked up by name. Symbol queries are done in bulk (i.e. you request resolution of a set of symbols, rather than a single one) to reduce IPC overhead in the case of remote JITing, and expose opportunities for parallel compilation.

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:371

Method Overview

  • public virtual bool allowsZeroSymbols()
  • private virtual void anchor()
  • public virtual Expected<llvm::JITSymbolResolver::LookupSet> getResponsibilitySet(const llvm::JITSymbolResolver::LookupSet & Symbols)
  • public virtual void lookup(const llvm::JITSymbolResolver::LookupSet & Symbols, llvm::JITSymbolResolver::OnResolvedFunction OnResolved)
  • public virtual ~JITSymbolResolver()

Methods

virtual bool allowsZeroSymbols()

Description

Specify if this resolver can return valid symbols with zero value.

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:394

virtual void anchor()

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:397

virtual Expected<
    llvm::JITSymbolResolver::LookupSet>
getResponsibilitySet(
    const llvm::JITSymbolResolver::LookupSet&
        Symbols)

Description

Returns the subset of the given symbols that should be materialized by the caller. Only weak/common symbols should be looked up, as strong definitions are implicitly always part of the caller's responsibility.

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:391

Parameters

const llvm::JITSymbolResolver::LookupSet& Symbols

virtual void lookup(
    const llvm::JITSymbolResolver::LookupSet&
        Symbols,
    llvm::JITSymbolResolver::OnResolvedFunction
        OnResolved)

Description

Returns the fully resolved address and flags for each of the given symbols. This method will return an error if any of the given symbols can not be resolved, or if the resolution process itself triggers an error.

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:384

Parameters

const llvm::JITSymbolResolver::LookupSet& Symbols
llvm::JITSymbolResolver::OnResolvedFunction OnResolved

virtual ~JITSymbolResolver()

Declared at: llvm/include/llvm/ExecutionEngine/JITSymbol.h:377