LLVM  7.0.0svn
llvm::JITSymbolResolver Class Referenceabstract

Symbol resolution interface. More...

#include "llvm/ExecutionEngine/JITSymbol.h"

Inheritance diagram for llvm::JITSymbolResolver:
[legend]

## Public Types

using LookupSet = std::set< StringRef >

using LookupResult = std::map< StringRef, JITEvaluatedSymbol >

using LookupFlagsResult = std::map< StringRef, JITSymbolFlags >

## Public Member Functions

virtual ~JITSymbolResolver ()=default

virtual Expected< LookupResultlookup (const LookupSet &Symbols)=0
Returns the fully resolved address and flags for each of the given symbols. More...

virtual Expected< LookupFlagsResultlookupFlags (const LookupSet &Symbols)=0
Returns the symbol flags for each of the given symbols. More...

## Detailed 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.

Definition at line 286 of file JITSymbol.h.

## ◆ LookupFlagsResult

 using llvm::JITSymbolResolver::LookupFlagsResult = std::map

Definition at line 290 of file JITSymbol.h.

## ◆ LookupResult

 using llvm::JITSymbolResolver::LookupResult = std::map

Definition at line 289 of file JITSymbol.h.

## ◆ LookupSet

 using llvm::JITSymbolResolver::LookupSet = std::set

Definition at line 288 of file JITSymbol.h.

## ◆ ~JITSymbolResolver()

 virtual llvm::JITSymbolResolver::~JITSymbolResolver ( )
virtualdefault

## ◆ lookup()

 virtual Expected llvm::JITSymbolResolver::lookup ( const LookupSet & Symbols )
pure virtual

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.

Referenced by llvm::RuntimeDyldCheckerImpl::checkAllRulesInBuffer().

## ◆ lookupFlags()

 virtual Expected llvm::JITSymbolResolver::lookupFlags ( const LookupSet & Symbols )
pure virtual

Returns the symbol flags for each of the given symbols.

This method does NOT return an error if any of the given symbols is missing. Instead, that symbol will be left out of the result map.