LLVM 24.0.0git
llvm::orc::SectCreateMaterializationUnit Class Reference

#include "llvm/ExecutionEngine/Orc/SectCreate.h"

Inheritance diagram for llvm::orc::SectCreateMaterializationUnit:
[legend]

Classes

struct  ExtraSymbolInfo

Public Types

using ExtraSymbolsMap = DenseMap<SymbolStringPtr, ExtraSymbolInfo>

Public Member Functions

 SectCreateMaterializationUnit (ObjectLinkingLayer &ObjLinkingLayer, std::string SectName, MemProt MP, uint64_t Alignment, std::unique_ptr< MemoryBuffer > Data, ExtraSymbolsMap ExtraSymbols=ExtraSymbolsMap())
StringRef getName () const override
 Return the name of this materialization unit.
void materialize (std::unique_ptr< MaterializationResponsibility > R) override
 Implementations of this method should materialize all symbols in the materialzation unit, except for those that have been previously discarded.
Public Member Functions inherited from llvm::orc::MaterializationUnit
 MaterializationUnit (Interface I)
virtual ~MaterializationUnit ()=default
const SymbolFlagsMap & getSymbols () const
 Return the set of symbols that this source provides.
const SymbolStringPtr & getInitializerSymbol () const
 Returns the initialization symbol for this MaterializationUnit (if any).
void doDiscard (const JITDylib &JD, const SymbolStringPtr &Name)
 Called by JITDylibs to notify MaterializationUnits that the given symbol has been overridden.

Additional Inherited Members

Static Public Attributes inherited from llvm::orc::MaterializationUnit
static char ID
Protected Attributes inherited from llvm::orc::MaterializationUnit
SymbolFlagsMap SymbolFlags
SymbolStringPtr InitSymbol

Detailed Description

Definition at line 24 of file SectCreate.h.

Member Typedef Documentation

◆ ExtraSymbolsMap

Constructor & Destructor Documentation

◆ SectCreateMaterializationUnit()

llvm::orc::SectCreateMaterializationUnit::SectCreateMaterializationUnit ( ObjectLinkingLayer & ObjLinkingLayer,
std::string SectName,
MemProt MP,
uint64_t Alignment,
std::unique_ptr< MemoryBuffer > Data,
ExtraSymbolsMap ExtraSymbols = ExtraSymbolsMap() )
inline

Member Function Documentation

◆ getName()

StringRef llvm::orc::SectCreateMaterializationUnit::getName ( ) const
inlineoverridevirtual

Return the name of this materialization unit.

Useful for debugging output.

Implements llvm::orc::MaterializationUnit.

Definition at line 42 of file SectCreate.h.

◆ materialize()

void llvm::orc::SectCreateMaterializationUnit::materialize ( std::unique_ptr< MaterializationResponsibility > R)
overridevirtual

Implementations of this method should materialize all symbols in the materialzation unit, except for those that have been previously discarded.

Implements llvm::orc::MaterializationUnit.

Definition at line 17 of file SectCreate.cpp.

References B(), llvm::jitlink::Default, G, llvm::jitlink::getGenericEdgeKindName(), llvm::jitlink::Hidden, llvm::jitlink::Strong, and llvm::jitlink::Weak.


The documentation for this class was generated from the following files: