LLVM 19.0.0git
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::object::MachOAbstractFixupEntry Class Reference

MachOAbstractFixupEntry is an abstract class representing a fixup in a MH_DYLDLINK file. More...

#include "llvm/Object/MachO.h"

Inheritance diagram for llvm::object::MachOAbstractFixupEntry:
Inheritance graph

Public Member Functions

 MachOAbstractFixupEntry (Error *Err, const MachOObjectFile *O)
int32_t segmentIndex () const
uint64_t segmentOffset () const
uint64_t segmentAddress () const
StringRef segmentName () const
StringRef sectionName () const
StringRef typeName () const
StringRef symbolName () const
uint32_t flags () const
int64_t addend () const
int ordinal () const
uint64_t address () const
uint64_t pointerValue () const
uint64_t rawValue () const
void moveNext ()

Protected Member Functions

void moveToFirst ()
void moveToEnd ()
uint64_t textAddress () const

Protected Attributes

const MachOObjectFileO
uint64_t SegmentOffset = 0
int32_t SegmentIndex = -1
StringRef SymbolName
int32_t Ordinal = 0
uint32_t Flags = 0
int64_t Addend = 0
uint64_t PointerValue = 0
uint64_t RawValue = 0
bool Done = false

Detailed Description

MachOAbstractFixupEntry is an abstract class representing a fixup in a MH_DYLDLINK file.

Fixups generally represent rebases and binds. Binds also subdivide into additional subtypes (weak, lazy, reexport).

The two concrete subclasses of MachOAbstractFixupEntry are:

MachORebaseBindEntry - for dyld opcode-based tables, including threaded- rebase, where rebases are mixed in with other bind opcodes. MachOChainedFixupEntry - for pointer chains embedded in data pages.

Definition at line 322 of file MachO.h.

Constructor & Destructor Documentation

◆ MachOAbstractFixupEntry()

MachOAbstractFixupEntry::MachOAbstractFixupEntry ( Error Err,
const MachOObjectFile O 

Member Function Documentation

◆ addend()

int64_t MachOAbstractFixupEntry::addend ( ) const

Definition at line 3297 of file MachOObjectFile.cpp.

References Addend.

◆ address()

uint64_t MachOAbstractFixupEntry::address ( ) const
the location of this fixup as a VM Address. For the VM Address this fixup is pointing to, use pointerValue().

Definition at line 3291 of file MachOObjectFile.cpp.

References llvm::object::MachOObjectFile::BindRebaseAddress(), O, SegmentIndex, and SegmentOffset.

◆ flags()

uint32_t MachOAbstractFixupEntry::flags ( ) const

Definition at line 3299 of file MachOObjectFile.cpp.

References Flags.

◆ moveNext()

void MachOAbstractFixupEntry::moveNext ( )

Definition at line 3316 of file MachOObjectFile.cpp.

◆ moveToEnd()

void MachOAbstractFixupEntry::moveToEnd ( )

Definition at line 3314 of file MachOObjectFile.cpp.

References Done.

Referenced by llvm::object::MachOChainedFixupEntry::moveToEnd().

◆ moveToFirst()

void MachOAbstractFixupEntry::moveToFirst ( )

◆ ordinal()

int MachOAbstractFixupEntry::ordinal ( ) const

Definition at line 3301 of file MachOObjectFile.cpp.

References Ordinal.

◆ pointerValue()

uint64_t llvm::object::MachOAbstractFixupEntry::pointerValue ( ) const
the VM Address pointed to by this fixup. Use pointerValue() to compare against other VM Addresses, such as section addresses or segment vmaddrs.

Definition at line 344 of file MachO.h.

References PointerValue.

◆ rawValue()

uint64_t llvm::object::MachOAbstractFixupEntry::rawValue ( ) const
the raw "on-disk" representation of the fixup. For Threaded rebases and Chained pointers these values are generally encoded into various different pointer formats. This value is exposed in API for tools that want to display and annotate the raw bits.

Definition at line 351 of file MachO.h.

References RawValue.

◆ sectionName()

StringRef MachOAbstractFixupEntry::sectionName ( ) const

◆ segmentAddress()

uint64_t MachOAbstractFixupEntry::segmentAddress ( ) const

◆ segmentIndex()

int32_t MachOAbstractFixupEntry::segmentIndex ( ) const

Definition at line 3273 of file MachOObjectFile.cpp.

References SegmentIndex.

◆ segmentName()

StringRef MachOAbstractFixupEntry::segmentName ( ) const

◆ segmentOffset()

uint64_t MachOAbstractFixupEntry::segmentOffset ( ) const

Definition at line 3275 of file MachOObjectFile.cpp.

References SegmentOffset.

◆ symbolName()

StringRef MachOAbstractFixupEntry::symbolName ( ) const

Definition at line 3295 of file MachOObjectFile.cpp.

References SymbolName.

◆ textAddress()

uint64_t llvm::object::MachOAbstractFixupEntry::textAddress ( ) const
the vm address of the start of __TEXT segment.

Definition at line 372 of file MachO.h.

Referenced by llvm::object::MachOChainedFixupEntry::moveNext().

◆ typeName()

StringRef MachOAbstractFixupEntry::typeName ( ) const

Definition at line 3303 of file MachOObjectFile.cpp.

Member Data Documentation

◆ Addend

int64_t llvm::object::MachOAbstractFixupEntry::Addend = 0

Definition at line 363 of file MachO.h.

Referenced by addend(), llvm::object::MachOChainedFixupEntry::moveNext(), and moveToFirst().

◆ Done

bool llvm::object::MachOAbstractFixupEntry::Done = false

◆ E

Error* llvm::object::MachOAbstractFixupEntry::E

◆ Flags

uint32_t llvm::object::MachOAbstractFixupEntry::Flags = 0

Definition at line 362 of file MachO.h.

Referenced by flags(), llvm::object::MachOChainedFixupEntry::moveNext(), and moveToFirst().

◆ O

const MachOObjectFile* llvm::object::MachOAbstractFixupEntry::O

◆ Ordinal

int32_t llvm::object::MachOAbstractFixupEntry::Ordinal = 0

Definition at line 361 of file MachO.h.

Referenced by llvm::object::MachOChainedFixupEntry::moveNext(), moveToFirst(), and ordinal().

◆ PointerValue

uint64_t llvm::object::MachOAbstractFixupEntry::PointerValue = 0

Definition at line 364 of file MachO.h.

Referenced by llvm::object::MachOChainedFixupEntry::moveNext(), and pointerValue().

◆ RawValue

uint64_t llvm::object::MachOAbstractFixupEntry::RawValue = 0

Definition at line 365 of file MachO.h.

Referenced by llvm::object::MachOChainedFixupEntry::moveNext(), and rawValue().

◆ SegmentIndex

int32_t llvm::object::MachOAbstractFixupEntry::SegmentIndex = -1

◆ SegmentOffset

uint64_t llvm::object::MachOAbstractFixupEntry::SegmentOffset = 0

◆ SymbolName

StringRef llvm::object::MachOAbstractFixupEntry::SymbolName

Definition at line 360 of file MachO.h.

Referenced by llvm::object::MachOChainedFixupEntry::moveNext(), and symbolName().

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