LLVM: llvm::object::MachOBindEntry Class Reference (original) (raw)

MachOBindEntry encapsulates the current state in the decompression of binding opcodes. More...

#include "[llvm/Object/MachO.h](Object%5F2MachO%5F8h%5Fsource.html)"

Public Types
enum class Kind { Regular, Lazy, Weak }
Public Member Functions
LLVM_ABI MachOBindEntry (Error *Err, const MachOObjectFile *O, ArrayRef< uint8_t > Opcodes, bool is64Bit, MachOBindEntry::Kind)
LLVM_ABI int32_t segmentIndex () const
LLVM_ABI uint64_t segmentOffset () const
LLVM_ABI StringRef typeName () const
LLVM_ABI StringRef symbolName () const
LLVM_ABI uint32_t flags () const
LLVM_ABI int64_t addend () const
LLVM_ABI int ordinal () const
LLVM_ABI StringRef segmentName () const
LLVM_ABI StringRef sectionName () const
LLVM_ABI uint64_t address () const
LLVM_ABI bool operator== (const MachOBindEntry &) const
LLVM_ABI void moveNext ()
Friends
class MachOObjectFile

Detailed Description

MachOBindEntry encapsulates the current state in the decompression of binding opcodes.

This allows you to iterate through the compressed table of bindings using: Error Err = Error::success(); for (const llvm::object::MachOBindEntry &Entry : Obj->bindTable(&Err)) { } if (Err) { report error ...

Definition at line 213 of file MachO.h.

Member Enumeration Documentation

Kind

Enumerator
Regular
Lazy
Weak

Definition at line 215 of file MachO.h.

Constructor & Destructor Documentation

Member Function Documentation

addend()

int64_t MachOBindEntry::addend ( ) const

address()

uint64_t MachOBindEntry::address ( ) const

flags()

uint32_t MachOBindEntry::flags ( ) const

moveNext()

void MachOBindEntry::moveNext ( )

Definition at line 3856 of file MachOObjectFile.cpp.

References llvm::MachO::BIND_IMMEDIATE_MASK, llvm::MachO::BIND_OPCODE_ADD_ADDR_ULEB, llvm::MachO::BIND_OPCODE_DO_BIND, llvm::MachO::BIND_OPCODE_DO_BIND_ADD_ADDR_IMM_SCALED, llvm::MachO::BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB, llvm::MachO::BIND_OPCODE_DO_BIND_ULEB_TIMES_SKIPPING_ULEB, llvm::MachO::BIND_OPCODE_DONE, llvm::MachO::BIND_OPCODE_MASK, llvm::MachO::BIND_OPCODE_SET_ADDEND_SLEB, llvm::MachO::BIND_OPCODE_SET_DYLIB_ORDINAL_IMM, llvm::MachO::BIND_OPCODE_SET_DYLIB_ORDINAL_ULEB, llvm::MachO::BIND_OPCODE_SET_DYLIB_SPECIAL_IMM, llvm::MachO::BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB, llvm::MachO::BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM, llvm::MachO::BIND_OPCODE_SET_TYPE_IMM, llvm::MachO::BIND_SPECIAL_DYLIB_FLAT_LOOKUP, llvm::MachO::BIND_SYMBOL_FLAGS_NON_WEAK_DEFINITION, llvm::MachO::BIND_TYPE_TEXT_PCREL32, llvm::Count, llvm::dbgs(), DEBUG_WITH_TYPE, error, llvm::format(), Lazy, malformedError(), P, llvm::Twine::utohexstr(), and Weak.

operator==()

ordinal()

int MachOBindEntry::ordinal ( ) const

sectionName()

StringRef MachOBindEntry::sectionName ( ) const

segmentIndex()

int32_t MachOBindEntry::segmentIndex ( ) const

segmentName()

StringRef MachOBindEntry::segmentName ( ) const

segmentOffset()

uint64_t MachOBindEntry::segmentOffset ( ) const

symbolName()

StringRef MachOBindEntry::symbolName ( ) const

typeName()

MachOObjectFile


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