LLVM
8.0.1
|
MaterializationUnit that materializes modules by calling the 'emit' method on the given IRLayer. More...
#include "llvm/ExecutionEngine/Orc/Layer.h"
Public Member Functions | |
BasicIRLayerMaterializationUnit (IRLayer &L, VModuleKey K, ThreadSafeModule TSM) | |
Public Member Functions inherited from llvm::orc::IRMaterializationUnit | |
IRMaterializationUnit (ExecutionSession &ES, ThreadSafeModule TSM, VModuleKey K) | |
Create an IRMaterializationLayer. More... | |
IRMaterializationUnit (ThreadSafeModule TSM, VModuleKey K, SymbolFlagsMap SymbolFlags, SymbolNameToDefinitionMap SymbolToDefinition) | |
Create an IRMaterializationLayer from a module, and pre-existing SymbolFlags and SymbolToDefinition maps. More... | |
StringRef | getName () const override |
Return the ModuleIdentifier as the name for this MaterializationUnit. More... | |
const ThreadSafeModule & | getModule () const |
Public Member Functions inherited from llvm::orc::MaterializationUnit | |
MaterializationUnit (SymbolFlagsMap InitalSymbolFlags, VModuleKey K) | |
virtual | ~MaterializationUnit () |
const SymbolFlagsMap & | getSymbols () const |
Return the set of symbols that this source provides. More... | |
void | doMaterialize (JITDylib &JD) |
Called by materialization dispatchers (see ExecutionSession::DispatchMaterializationFunction) to trigger materialization of this MaterializationUnit. More... | |
void | doDiscard (const JITDylib &JD, const SymbolStringPtr &Name) |
Called by JITDylibs to notify MaterializationUnits that the given symbol has been overridden. More... | |
Additional Inherited Members | |
Public Types inherited from llvm::orc::IRMaterializationUnit | |
using | SymbolNameToDefinitionMap = std::map< SymbolStringPtr, GlobalValue * > |
Protected Attributes inherited from llvm::orc::IRMaterializationUnit | |
ThreadSafeModule | TSM |
SymbolNameToDefinitionMap | SymbolToDefinition |
Protected Attributes inherited from llvm::orc::MaterializationUnit | |
SymbolFlagsMap | SymbolFlags |
VModuleKey | K |
MaterializationUnit that materializes modules by calling the 'emit' method on the given IRLayer.
llvm::orc::BasicIRLayerMaterializationUnit::BasicIRLayerMaterializationUnit | ( | IRLayer & | L, |
VModuleKey | K, | ||
ThreadSafeModule | TSM | ||
) |
Definition at line 72 of file Layer.cpp.
References llvm::orc::cloneToNewContext(), llvm::orc::IRLayer::emit(), llvm::orc::IRLayer::getCloneToNewContextOnEmit(), llvm::orc::ThreadSafeModule::getContextLock(), llvm::orc::JITDylib::getExecutionSession(), llvm::orc::MaterializationResponsibility::getTargetJITDylib(), LLVM_DEBUG, llvm::Lock, llvm::orc::IRMaterializationUnit::SymbolToDefinition, and llvm::orc::IRMaterializationUnit::TSM.