LLVM 20.0.0git
|
#include "llvm/ExecutionEngine/Orc/MachOPlatform.h"
Public Member Functions | |
SimpleMachOHeaderMU (MachOPlatform &MOP, SymbolStringPtr HeaderStartSymbol, MachOPlatform::HeaderOptions Opts) | |
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 &Sym) 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 |
virtual StringRef | getName () const =0 |
Return the name of this materialization unit. | |
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). | |
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. | |
Protected Member Functions | |
virtual jitlink::Block & | createHeaderBlock (JITDylib &JD, jitlink::LinkGraph &G, jitlink::Section &HeaderSection) |
Protected Attributes | |
MachOPlatform & | MOP |
MachOPlatform::HeaderOptions | Opts |
Protected Attributes inherited from llvm::orc::MaterializationUnit | |
SymbolFlagsMap | SymbolFlags |
SymbolStringPtr | InitSymbol |
Additional Inherited Members | |
Static Public Attributes inherited from llvm::orc::MaterializationUnit | |
static char | ID |
Definition at line 383 of file MachOPlatform.h.
llvm::orc::SimpleMachOHeaderMU::SimpleMachOHeaderMU | ( | MachOPlatform & | MOP, |
SymbolStringPtr | HeaderStartSymbol, | ||
MachOPlatform::HeaderOptions | Opts | ||
) |
Definition at line 1762 of file MachOPlatform.cpp.
|
protectedvirtual |
Definition at line 1796 of file MachOPlatform.cpp.
References llvm::Triple::aarch64, G, llvm::Triple::getArch(), llvm::orc::MachOPlatform::getExecutionSession(), llvm::orc::ExecutionSession::getTargetTriple(), llvm_unreachable, MOP, Opts, and llvm::Triple::x86_64.
|
overridevirtual |
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 1776 of file MachOPlatform.cpp.
|
inlineoverridevirtual |
Return the name of this materialization unit.
Useful for debugging output.
Implements llvm::orc::MaterializationUnit.
Definition at line 387 of file MachOPlatform.h.
|
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 1769 of file MachOPlatform.cpp.
References llvm::orc::ObjectLinkingLayer::emit(), G, llvm::orc::MachOPlatform::getObjectLinkingLayer(), and MOP.
|
protected |
Definition at line 395 of file MachOPlatform.h.
Referenced by createHeaderBlock(), and materialize().
|
protected |
Definition at line 396 of file MachOPlatform.h.
Referenced by createHeaderBlock().