LLVM
8.0.1
|
Interface for Layers that accept object files. More...
#include "llvm/ExecutionEngine/Orc/Layer.h"
Public Member Functions | |
ObjectLayer (ExecutionSession &ES) | |
virtual | ~ObjectLayer () |
ExecutionSession & | getExecutionSession () |
Returns the execution session for this layer. More... | |
virtual Error | add (JITDylib &JD, std::unique_ptr< MemoryBuffer > O, VModuleKey K=VModuleKey()) |
Adds a MaterializationUnit representing the given IR to the given JITDylib. More... | |
virtual void | emit (MaterializationResponsibility R, std::unique_ptr< MemoryBuffer > O)=0 |
Emit should materialize the given IR. More... | |
llvm::orc::ObjectLayer::ObjectLayer | ( | ExecutionSession & | ES | ) |
|
virtual |
Adds a MaterializationUnit representing the given IR to the given JITDylib.
Definition at line 109 of file Layer.cpp.
References llvm::orc::BasicObjectLayerMaterializationUnit::Create(), and llvm::orc::JITDylib::define().
|
pure virtual |
Emit should materialize the given IR.
Implemented in llvm::orc::RTDyldObjectLinkingLayer, and llvm::orc::ObjectTransformLayer.
Referenced by llvm::orc::ObjectTransformLayer::emit(), llvm::orc::IRCompileLayer::emit(), and llvm::orc::BasicObjectLayerMaterializationUnit::getName().
|
inline |
Returns the execution session for this layer.
Definition at line 120 of file Layer.h.
References llvm::orc::IRLayer::add(), llvm::orc::IRLayer::emit(), and llvm::RISCVFenceField::O.
Referenced by llvm::orc::BasicObjectLayerMaterializationUnit::Create(), llvm::orc::ObjectTransformLayer::emit(), and llvm::orc::RTDyldObjectLinkingLayer::emit().