class BasicObjectLayerMaterializationUnit
Declaration
class BasicObjectLayerMaterializationUnit : public MaterializationUnit { /* full declaration omitted */ };
Description
Materializes the given object file (represented by a MemoryBuffer instance) by calling 'emit' on the given ObjectLayer.
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:175
Inherits from: MaterializationUnit
Member Variables
- private llvm::orc::ObjectLayer& L
- private std::unique_ptr<MemoryBuffer> O
Inherited from MaterializationUnit:
Method Overview
- public BasicObjectLayerMaterializationUnit(llvm::orc::ObjectLayer & L, std::unique_ptr<MemoryBuffer> O, llvm::orc::MaterializationUnit::Interface I)
- public static Expected<std::unique_ptr<BasicObjectLayerMaterializationUnit>> Create(llvm::orc::ObjectLayer & L, std::unique_ptr<MemoryBuffer> O)
- private void discard(const llvm::orc::JITDylib & JD, const llvm::orc::SymbolStringPtr & Name)
- public llvm::StringRef getName() const
- private void materialize(std::unique_ptr<MaterializationResponsibility> R)
Inherited from MaterializationUnit:
Methods
¶BasicObjectLayerMaterializationUnit(
llvm::orc::ObjectLayer& L,
std::unique_ptr<MemoryBuffer> O,
llvm::orc::MaterializationUnit::Interface I)
BasicObjectLayerMaterializationUnit(
llvm::orc::ObjectLayer& L,
std::unique_ptr<MemoryBuffer> O,
llvm::orc::MaterializationUnit::Interface I)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:181
Parameters
- llvm::orc::ObjectLayer& L
- std::unique_ptr<MemoryBuffer> O
- llvm::orc::MaterializationUnit::Interface I
¶static Expected<std::unique_ptr<
BasicObjectLayerMaterializationUnit>>
Create(llvm::orc::ObjectLayer& L,
std::unique_ptr<MemoryBuffer> O)
static Expected<std::unique_ptr<
BasicObjectLayerMaterializationUnit>>
Create(llvm::orc::ObjectLayer& L,
std::unique_ptr<MemoryBuffer> O)
Description
Create using the default object interface builder function.
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:179
Parameters
- llvm::orc::ObjectLayer& L
- std::unique_ptr<MemoryBuffer> O
¶void discard(
const llvm::orc::JITDylib& JD,
const llvm::orc::SymbolStringPtr& Name)
void discard(
const llvm::orc::JITDylib& JD,
const llvm::orc::SymbolStringPtr& Name)
Description
Implementations of this method should discard the given symbol from the source (e.g. if the source is an LLVM IR Module and the symbol is a function, delete the function body or mark it available externally).
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:190
Parameters
- const llvm::orc::JITDylib& JD
- const llvm::orc::SymbolStringPtr& Name
¶llvm::StringRef getName() const
llvm::StringRef getName() const
Description
Return the buffer's identifier as the name for this MaterializationUnit.
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:186
¶void materialize(
std::unique_ptr<MaterializationResponsibility>
R)
void materialize(
std::unique_ptr<MaterializationResponsibility>
R)
Description
Implementations of this method should materialize all symbols in the materialzation unit, except for those that have been previously discarded.
Declared at: llvm/include/llvm/ExecutionEngine/Orc/Layer.h:189
Parameters
- std::unique_ptr<MaterializationResponsibility> R