LLVM 22.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 SymbolFlagsMapgetSymbols () const
 Return the set of symbols that this source provides.
const SymbolStringPtrgetInitializerSymbol () 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: