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

RedirectableMaterializationUnit materializes redirectable symbol by invoking RedirectableSymbolManager::emitRedirectableSymbols. More...

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

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

Public Member Functions

 RedirectableMaterializationUnit (RedirectableSymbolManager &RM, SymbolMap InitialDests)
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.
void discard (const JITDylib &JD, const SymbolStringPtr &Name) override
 Implementations of this method should discard the given symbol from the source (e.g.
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

RedirectableMaterializationUnit materializes redirectable symbol by invoking RedirectableSymbolManager::emitRedirectableSymbols.

Definition at line 67 of file RedirectionManager.h.

Constructor & Destructor Documentation

◆ RedirectableMaterializationUnit()

llvm::orc::RedirectableMaterializationUnit::RedirectableMaterializationUnit ( RedirectableSymbolManager & RM,
SymbolMap InitialDests )
inline

Member Function Documentation

◆ discard()

void llvm::orc::RedirectableMaterializationUnit::discard ( const JITDylib & JD,
const SymbolStringPtr & Name )
inlineoverridevirtual

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).

Implements llvm::orc::MaterializationUnit.

Definition at line 82 of file RedirectionManager.h.

References llvm::orc::MaterializationUnit::JITDylib.

◆ getName()

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

Return the name of this materialization unit.

Useful for debugging output.

Implements llvm::orc::MaterializationUnit.

Definition at line 74 of file RedirectionManager.h.

◆ materialize()

void llvm::orc::RedirectableMaterializationUnit::materialize ( std::unique_ptr< MaterializationResponsibility > R)
inlineoverridevirtual

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 78 of file RedirectionManager.h.


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