class RuntimeDyldMachOCRTPBase

Declaration

template <typename Impl>
class RuntimeDyldMachOCRTPBase : public RuntimeDyldMachO { /* full declaration omitted */ };

Description

RuntimeDyldMachOTarget - Templated base class for generic MachO linker algorithms and data structures. Concrete, target specific sub-classes can be accessed via the impl() methods. (i.e. the RuntimeDyldMachO hierarchy uses the Curiously Recurring Template Idiom). Concrete subclasses for each target can be found in ./Targets.

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:145

Inherits from: RuntimeDyldMachO

Templates

Impl

Member Variables

Inherited from RuntimeDyldMachO:

protected UnregisteredEHFrameSections

Inherited from RuntimeDyldImpl:

protected MemMgr
protected Resolver
protected Sections
protected GlobalSymbolTable
protected Relocations
protected ExternalSymbolRelocations
protected Arch
protected IsTargetLittleEndian
protected IsMipsO32ABI
protected IsMipsN32ABI
protected IsMipsN64ABI
protected ProcessAllSections
protected lock
protected NotifyStubEmitted
protected HasError
protected ErrorStr
protected static AbsoluteSymbolSection = ~0U

Method Overview

  • public RuntimeDyldMachOCRTPBase<Impl>(RuntimeDyld::MemoryManager & MemMgr, llvm::JITSymbolResolver & Resolver)
  • public llvm::Error finalizeLoad(const llvm::object::ObjectFile & Obj, llvm::RuntimeDyldImpl::ObjSectionToIDMap & SectionMap)
  • private Impl & impl()
  • private const Impl & impl() const
  • private unsigned char * processFDE(uint8_t * P, int64_t DeltaForText, int64_t DeltaForEH)
  • public void registerEHFrames()

Inherited from RuntimeDyldMachO:

Inherited from RuntimeDyldImpl:

Methods

RuntimeDyldMachOCRTPBase<Impl>(
    RuntimeDyld::MemoryManager& MemMgr,
    llvm::JITSymbolResolver& Resolver)

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:154

Parameters

RuntimeDyld::MemoryManager& MemMgr
llvm::JITSymbolResolver& Resolver

llvm::Error finalizeLoad(
    const llvm::object::ObjectFile& Obj,
    llvm::RuntimeDyldImpl::ObjSectionToIDMap&
        SectionMap)

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:158

Parameters

const llvm::object::ObjectFile& Obj
llvm::RuntimeDyldImpl::ObjSectionToIDMap& SectionMap

Impl& impl()

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:147

const Impl& impl() const

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:148

unsigned char* processFDE(uint8_t* P,
                          int64_t DeltaForText,
                          int64_t DeltaForEH)

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:150

Parameters

uint8_t* P
int64_t DeltaForText
int64_t DeltaForEH

void registerEHFrames()

Declared at: llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h:160