LLVM 20.0.0git
|
#include "ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h"
Public Types | |
typedef uint32_t | TargetPtrT |
Definition at line 18 of file RuntimeDyldMachOARM.h.
Definition at line 25 of file RuntimeDyldMachOARM.h.
|
inline |
Definition at line 27 of file RuntimeDyldMachOARM.h.
|
inline |
Definition at line 62 of file RuntimeDyldMachOARM.h.
References llvm::MachO::ARM_RELOC_BR24, llvm::MachO::ARM_THUMB_RELOC_BR22, llvm::inconvertibleErrorCode(), llvm::RuntimeDyldMachO::memcpyAddend(), llvm::RelocationEntry::Offset, llvm::RuntimeDyldImpl::readBytesUnaligned(), llvm::RelocationEntry::RelType, llvm::RelocationEntry::SectionID, and llvm::RuntimeDyldImpl::Sections.
Referenced by processRelocationRef().
|
inline |
Definition at line 288 of file RuntimeDyldMachOARM.h.
References llvm::consumeError(), Name, llvm::RuntimeDyldMachO::populateIndirectSymbolPointersSection(), and llvm::Error::success().
|
inlineoverridevirtual |
Generate JITSymbolFlags from a libObject symbol.
Reimplemented from llvm::RuntimeDyldImpl.
Definition at line 35 of file RuntimeDyldMachOARM.h.
References llvm::ARMJITSymbolFlags::fromObjectSymbol(), and llvm::RuntimeDyldImpl::getJITSymbolFlags().
|
inlineoverridevirtual |
Implements llvm::RuntimeDyldImpl.
Definition at line 31 of file RuntimeDyldMachOARM.h.
|
inlineoverridevirtual |
Implements llvm::RuntimeDyldImpl.
Definition at line 33 of file RuntimeDyldMachOARM.h.
Definition at line 50 of file RuntimeDyldMachOARM.h.
References llvm::RuntimeDyldImpl::GlobalSymbolTable, llvm::Offset, llvm::RuntimeDyldImpl::Sections, and llvm::ARMJITSymbolFlags::Thumb.
Referenced by processRelocationRef().
|
inlineoverridevirtual |
Modify the given target address based on the given symbol flags.
This can be used by subclasses to tweak addresses based on symbol flags, For example: the MachO/ARM target uses it to set the low bit if the target is a thumb symbol.
Reimplemented from llvm::RuntimeDyldImpl.
Definition at line 43 of file RuntimeDyldMachOARM.h.
References Addr, and llvm::ARMJITSymbolFlags::Thumb.
|
inlineoverridevirtual |
Parses one or more object file relocations (some object files use relocation pairs) and stores it to Relocations or SymbolRelocations (this depends on the object file type).
Implements llvm::RuntimeDyldImpl.
Definition at line 100 of file RuntimeDyldMachOARM.h.
References llvm::RelocationEntry::Addend, llvm::RuntimeDyldImpl::addRelocationForSection(), llvm::RuntimeDyldImpl::addRelocationForSymbol(), llvm::MachO::ARM_RELOC_BR24, llvm::MachO::ARM_RELOC_HALF, llvm::MachO::ARM_RELOC_HALF_SECTDIFF, llvm::MachO::ARM_RELOC_LOCAL_SECTDIFF, llvm::MachO::ARM_RELOC_PAIR, llvm::MachO::ARM_RELOC_PB_LA_PTR, llvm::MachO::ARM_RELOC_SECTDIFF, llvm::MachO::ARM_THUMB_32BIT_BRANCH, llvm::MachO::ARM_THUMB_RELOC_BR22, decodeAddend(), llvm::StringMap< ValueTy, AllocatorTy >::end(), llvm::StringMap< ValueTy, AllocatorTy >::find(), llvm::MachO::GENERIC_RELOC_VANILLA, llvm::object::MachOObjectFile::getAnyRelocationType(), llvm::object::MachOObjectFile::getPlainRelocationExternal(), llvm::object::MachOObjectFile::getRelocation(), llvm::RuntimeDyldMachO::getRelocationEntry(), llvm::RuntimeDyldMachO::getRelocationValueRef(), llvm::RuntimeDyldImpl::GlobalSymbolTable, isAddrTargetThumb(), llvm::RelocationEntry::IsPCRel, llvm::object::MachOObjectFile::isRelocationScattered(), llvm::RelocationEntry::IsTargetThumbFunc, llvm::RuntimeDyldMachO::makeValueAddendPCRel(), llvm::RuntimeDyldMachO::processScatteredVANILLA(), llvm::RelocationEntry::RelType, llvm::ARMJITSymbolFlags::Thumb, and UNIMPLEMENTED_RELOC.
|
inlineoverridevirtual |
A object file specific relocation resolver.
RE | The relocation to be resolved |
Value | Target symbol address to apply the relocation action |
Implements llvm::RuntimeDyldImpl.
Definition at line 202 of file RuntimeDyldMachOARM.h.
References llvm::RelocationEntry::Addend, llvm::MachO::ARM_RELOC_BR24, llvm::MachO::ARM_RELOC_HALF_SECTDIFF, llvm::MachO::ARM_RELOC_VANILLA, llvm::MachO::ARM_THUMB_RELOC_BR22, assert(), llvm::RuntimeDyldMachO::dumpRelocationToResolve(), Insn, llvm::RelocationEntry::IsPCRel, llvm::RelocationEntry::IsTargetThumbFunc, LLVM_DEBUG, llvm_unreachable, llvm::RelocationEntry::Offset, llvm::RuntimeDyldImpl::readBytesUnaligned(), llvm::RelocationEntry::RelType, llvm::RelocationEntry::SectionPair::SectionA, llvm::RelocationEntry::SectionPair::SectionB, llvm::RelocationEntry::SectionID, llvm::RelocationEntry::Sections, llvm::RuntimeDyldImpl::Sections, llvm::RelocationEntry::Size, and llvm::RuntimeDyldImpl::writeBytesUnaligned().