LLVM 20.0.0git
Public Member Functions | List of all members
llvm::orc::LazyReexportsMaterializationUnit Class Reference

A materialization unit that builds lazy re-exports. More...

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

Inheritance diagram for llvm::orc::LazyReexportsMaterializationUnit:
Inheritance graph
[legend]

Public Member Functions

 LazyReexportsMaterializationUnit (LazyCallThroughManager &LCTManager, RedirectableSymbolManager &RSManager, JITDylib &SourceJD, SymbolAliasMap CallableAliases, ImplSymbolMap *SrcJDLoc)
 
StringRef getName () const override
 Return the name of this materialization unit.
 
- Public Member Functions inherited from llvm::orc::MaterializationUnit
 MaterializationUnit (Interface I)
 
virtual ~MaterializationUnit ()=default
 
virtual StringRef getName () const =0
 Return the name of this materialization unit.
 
const SymbolFlagsMapgetSymbols () const
 Return the set of symbols that this source provides.
 
const SymbolStringPtrgetInitializerSymbol () const
 Returns the initialization symbol for this MaterializationUnit (if any).
 
virtual void materialize (std::unique_ptr< MaterializationResponsibility > R)=0
 Implementations of this method should materialize all symbols in the materialzation unit, except for those that have been previously discarded.
 
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

A materialization unit that builds lazy re-exports.

These are callable entry points that call through to the given symbols. Unlike a 'true' re-export, the address of the lazy re-export will not match the address of the re-exported symbol, but calling it will behave the same as calling the re-exported symbol.

Definition at line 141 of file LazyReexports.h.

Constructor & Destructor Documentation

◆ LazyReexportsMaterializationUnit()

llvm::orc::LazyReexportsMaterializationUnit::LazyReexportsMaterializationUnit ( LazyCallThroughManager LCTManager,
RedirectableSymbolManager RSManager,
JITDylib SourceJD,
SymbolAliasMap  CallableAliases,
ImplSymbolMap SrcJDLoc 
)

Definition at line 155 of file LazyReexports.cpp.

Member Function Documentation

◆ getName()

StringRef llvm::orc::LazyReexportsMaterializationUnit::getName ( ) const
overridevirtual

Return the name of this materialization unit.

Useful for debugging output.

Implements llvm::orc::MaterializationUnit.

Definition at line 162 of file LazyReexports.cpp.


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