LLVM  8.0.1
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::object::MachOObjectFile Class Reference

#include "llvm/Object/MachO.h"

Inheritance diagram for llvm::object::MachOObjectFile:
Inheritance graph
[legend]
Collaboration diagram for llvm::object::MachOObjectFile:
Collaboration graph
[legend]

Classes

struct  LoadCommandInfo
 

Public Types

using LoadCommandList = SmallVector< LoadCommandInfo, 4 >
 
using load_command_iterator = LoadCommandList::const_iterator
 
- Public Types inherited from llvm::object::ObjectFile
using symbol_iterator_range = iterator_range< symbol_iterator >
 
using section_iterator_range = iterator_range< section_iterator >
 
- Public Types inherited from llvm::object::SymbolicFile
using basic_symbol_iterator_range = iterator_range< basic_symbol_iterator >
 

Public Member Functions

void moveSymbolNext (DataRefImpl &Symb) const override
 
uint64_t getNValue (DataRefImpl Sym) const
 
Expected< StringRefgetSymbolName (DataRefImpl Symb) const override
 
Error checkSymbolTable () const
 
std::error_code getIndirectName (DataRefImpl Symb, StringRef &Res) const
 
unsigned getSectionType (SectionRef Sec) const
 
Expected< uint64_t > getSymbolAddress (DataRefImpl Symb) const override
 
uint32_t getSymbolAlignment (DataRefImpl Symb) const override
 
uint64_t getCommonSymbolSizeImpl (DataRefImpl Symb) const override
 
Expected< SymbolRef::TypegetSymbolType (DataRefImpl Symb) const override
 
uint32_t getSymbolFlags (DataRefImpl Symb) const override
 
Expected< section_iteratorgetSymbolSection (DataRefImpl Symb) const override
 
unsigned getSymbolSectionID (SymbolRef Symb) const
 
unsigned getSectionID (SectionRef Sec) const
 
void moveSectionNext (DataRefImpl &Sec) const override
 
std::error_code getSectionName (DataRefImpl Sec, StringRef &Res) const override
 
uint64_t getSectionAddress (DataRefImpl Sec) const override
 
uint64_t getSectionIndex (DataRefImpl Sec) const override
 
uint64_t getSectionSize (DataRefImpl Sec) const override
 
std::error_code getSectionContents (DataRefImpl Sec, StringRef &Res) const override
 
uint64_t getSectionAlignment (DataRefImpl Sec) const override
 
Expected< SectionRefgetSection (unsigned SectionIndex) const
 
Expected< SectionRefgetSection (StringRef SectionName) const
 
bool isSectionCompressed (DataRefImpl Sec) const override
 
bool isSectionText (DataRefImpl Sec) const override
 
bool isSectionData (DataRefImpl Sec) const override
 
bool isSectionBSS (DataRefImpl Sec) const override
 
bool isSectionVirtual (DataRefImpl Sec) const override
 
bool isSectionBitcode (DataRefImpl Sec) const override
 
bool isSectionStripped (DataRefImpl Sec) const override
 When dsymutil generates the companion file, it strips all unnecessary sections (e.g. More...
 
relocation_iterator section_rel_begin (DataRefImpl Sec) const override
 
relocation_iterator section_rel_end (DataRefImpl Sec) const override
 
relocation_iterator extrel_begin () const
 
relocation_iterator extrel_end () const
 
iterator_range< relocation_iteratorexternal_relocations () const
 
relocation_iterator locrel_begin () const
 
relocation_iterator locrel_end () const
 
void moveRelocationNext (DataRefImpl &Rel) const override
 
uint64_t getRelocationOffset (DataRefImpl Rel) const override
 
symbol_iterator getRelocationSymbol (DataRefImpl Rel) const override
 
section_iterator getRelocationSection (DataRefImpl Rel) const
 
uint64_t getRelocationType (DataRefImpl Rel) const override
 
void getRelocationTypeName (DataRefImpl Rel, SmallVectorImpl< char > &Result) const override
 
uint8_t getRelocationLength (DataRefImpl Rel) const
 
std::error_code getLibraryShortNameByIndex (unsigned Index, StringRef &) const
 
uint32_t getLibraryCount () const
 
section_iterator getRelocationRelocatedSection (relocation_iterator Rel) const
 
basic_symbol_iterator symbol_begin () const override
 
basic_symbol_iterator symbol_end () const override
 
symbol_iterator getSymbolByIndex (unsigned Index) const
 
uint64_t getSymbolIndex (DataRefImpl Symb) const
 
section_iterator section_begin () const override
 
section_iterator section_end () const override
 
uint8_t getBytesInAddress () const override
 The number of bytes used to represent an address in this object file format. More...
 
StringRef getFileFormatName () const override
 
Triple::ArchType getArch () const override
 
SubtargetFeatures getFeatures () const override
 
Triple getArchTriple (const char **McpuDefault=nullptr) const
 
relocation_iterator section_rel_begin (unsigned Index) const
 
relocation_iterator section_rel_end (unsigned Index) const
 
dice_iterator begin_dices () const
 
dice_iterator end_dices () const
 
load_command_iterator begin_load_commands () const
 
load_command_iterator end_load_commands () const
 
iterator_range< load_command_iteratorload_commands () const
 
iterator_range< export_iteratorexports (Error &Err) const
 For use iterating over all exported symbols. More...
 
iterator_range< rebase_iteratorrebaseTable (Error &Err)
 For use iterating over all rebase table entries. More...
 
iterator_range< bind_iteratorbindTable (Error &Err)
 For use iterating over all bind table entries. More...
 
iterator_range< bind_iteratorlazyBindTable (Error &Err)
 For use iterating over all lazy bind table entries. More...
 
iterator_range< bind_iteratorweakBindTable (Error &Err)
 For use iterating over all weak bind table entries. More...
 
const charBindEntryCheckSegAndOffset (int32_t SegIndex, uint64_t SegOffset, bool endInvalid) const
 For use with a SegIndex,SegOffset pair in MachOBindEntry::moveNext() to validate a MachOBindEntry. More...
 
const charBindEntryCheckCountAndSkip (uint32_t Count, uint32_t Skip, uint8_t PointerSize, int32_t SegIndex, uint64_t SegOffset) const
 For use in MachOBindEntry::moveNext() to validate a MachOBindEntry for the BIND_OPCODE_DO_BIND_ULEB_TIMES_SKIPPING_ULEB opcode. More...
 
const charRebaseEntryCheckSegAndOffset (int32_t SegIndex, uint64_t SegOffset, bool endInvalid) const
 For use with a SegIndex,SegOffset pair in MachORebaseEntry::moveNext() to validate a MachORebaseEntry. More...
 
const charRebaseEntryCheckCountAndSkip (uint32_t Count, uint32_t Skip, uint8_t PointerSize, int32_t SegIndex, uint64_t SegOffset) const
 For use in MachORebaseEntry::moveNext() to validate a MachORebaseEntry for the REBASE_OPCODE_DO_*_TIMES* opcodes. More...
 
StringRef BindRebaseSegmentName (int32_t SegIndex) const
 For use with the SegIndex of a checked Mach-O Bind or Rebase entry to get the segment name. More...
 
StringRef BindRebaseSectionName (uint32_t SegIndex, uint64_t SegOffset) const
 For use with a SegIndex,SegOffset pair from a checked Mach-O Bind or Rebase entry to get the section name. More...
 
uint64_t BindRebaseAddress (uint32_t SegIndex, uint64_t SegOffset) const
 For use with a SegIndex,SegOffset pair from a checked Mach-O Bind or Rebase entry to get the address. More...
 
StringRef getSectionFinalSegmentName (DataRefImpl Sec) const
 
ArrayRef< chargetSectionRawName (DataRefImpl Sec) const
 
ArrayRef< chargetSectionRawFinalSegmentName (DataRefImpl Sec) const
 
bool isRelocationScattered (const MachO::any_relocation_info &RE) const
 
unsigned getPlainRelocationSymbolNum (const MachO::any_relocation_info &RE) const
 
bool getPlainRelocationExternal (const MachO::any_relocation_info &RE) const
 
bool getScatteredRelocationScattered (const MachO::any_relocation_info &RE) const
 
uint32_t getScatteredRelocationValue (const MachO::any_relocation_info &RE) const
 
uint32_t getScatteredRelocationType (const MachO::any_relocation_info &RE) const
 
unsigned getAnyRelocationAddress (const MachO::any_relocation_info &RE) const
 
unsigned getAnyRelocationPCRel (const MachO::any_relocation_info &RE) const
 
unsigned getAnyRelocationLength (const MachO::any_relocation_info &RE) const
 
unsigned getAnyRelocationType (const MachO::any_relocation_info &RE) const
 
SectionRef getAnyRelocationSection (const MachO::any_relocation_info &RE) const
 
MachO::section getSection (DataRefImpl DRI) const
 
MachO::section_64 getSection64 (DataRefImpl DRI) const
 
MachO::section getSection (const LoadCommandInfo &L, unsigned Index) const
 
MachO::section_64 getSection64 (const LoadCommandInfo &L, unsigned Index) const
 
MachO::nlist getSymbolTableEntry (DataRefImpl DRI) const
 
MachO::nlist_64 getSymbol64TableEntry (DataRefImpl DRI) const
 
MachO::linkedit_data_command getLinkeditDataLoadCommand (const LoadCommandInfo &L) const
 
MachO::segment_command getSegmentLoadCommand (const LoadCommandInfo &L) const
 
MachO::segment_command_64 getSegment64LoadCommand (const LoadCommandInfo &L) const
 
MachO::linker_option_command getLinkerOptionLoadCommand (const LoadCommandInfo &L) const
 
MachO::version_min_command getVersionMinLoadCommand (const LoadCommandInfo &L) const
 
MachO::note_command getNoteLoadCommand (const LoadCommandInfo &L) const
 
MachO::build_version_command getBuildVersionLoadCommand (const LoadCommandInfo &L) const
 
MachO::build_tool_version getBuildToolVersion (unsigned index) const
 
MachO::dylib_command getDylibIDLoadCommand (const LoadCommandInfo &L) const
 
MachO::dyld_info_command getDyldInfoLoadCommand (const LoadCommandInfo &L) const
 
MachO::dylinker_command getDylinkerCommand (const LoadCommandInfo &L) const
 
MachO::uuid_command getUuidCommand (const LoadCommandInfo &L) const
 
MachO::rpath_command getRpathCommand (const LoadCommandInfo &L) const
 
MachO::source_version_command getSourceVersionCommand (const LoadCommandInfo &L) const
 
MachO::entry_point_command getEntryPointCommand (const LoadCommandInfo &L) const
 
MachO::encryption_info_command getEncryptionInfoCommand (const LoadCommandInfo &L) const
 
MachO::encryption_info_command_64 getEncryptionInfoCommand64 (const LoadCommandInfo &L) const
 
MachO::sub_framework_command getSubFrameworkCommand (const LoadCommandInfo &L) const
 
MachO::sub_umbrella_command getSubUmbrellaCommand (const LoadCommandInfo &L) const
 
MachO::sub_library_command getSubLibraryCommand (const LoadCommandInfo &L) const
 
MachO::sub_client_command getSubClientCommand (const LoadCommandInfo &L) const
 
MachO::routines_command getRoutinesCommand (const LoadCommandInfo &L) const
 
MachO::routines_command_64 getRoutinesCommand64 (const LoadCommandInfo &L) const
 
MachO::thread_command getThreadCommand (const LoadCommandInfo &L) const
 
MachO::any_relocation_info getRelocation (DataRefImpl Rel) const
 
MachO::data_in_code_entry getDice (DataRefImpl Rel) const
 
const MachO::mach_headergetHeader () const
 
const MachO::mach_header_64getHeader64 () const
 
uint32_t getIndirectSymbolTableEntry (const MachO::dysymtab_command &DLC, unsigned Index) const
 
MachO::data_in_code_entry getDataInCodeTableEntry (uint32_t DataOffset, unsigned Index) const
 
MachO::symtab_command getSymtabLoadCommand () const
 
MachO::dysymtab_command getDysymtabLoadCommand () const
 
MachO::linkedit_data_command getDataInCodeLoadCommand () const
 
MachO::linkedit_data_command getLinkOptHintsLoadCommand () const
 
ArrayRef< uint8_t > getDyldInfoRebaseOpcodes () const
 
ArrayRef< uint8_t > getDyldInfoBindOpcodes () const
 
ArrayRef< uint8_t > getDyldInfoWeakBindOpcodes () const
 
ArrayRef< uint8_t > getDyldInfoLazyBindOpcodes () const
 
ArrayRef< uint8_t > getDyldInfoExportsTrie () const
 
ArrayRef< uint8_t > getUuid () const
 
StringRef getStringTableData () const
 
bool is64Bit () const
 
void ReadULEB128s (uint64_t Index, SmallVectorImpl< uint64_t > &Out) const
 
bool isRelocatableObject () const override
 True if this is a relocatable object (.o/.obj). More...
 
StringRef mapDebugSectionName (StringRef Name) const override
 Maps a debug section name to a standard DWARF section name. More...
 
bool hasPageZeroSegment () const
 
- Public Member Functions inherited from llvm::object::ObjectFile
 ObjectFile ()=delete
 
 ObjectFile (const ObjectFile &other)=delete
 
uint64_t getCommonSymbolSize (DataRefImpl Symb) const
 
virtual std::vector< SectionRefdynamic_relocation_sections () const
 
symbol_iterator_range symbols () const
 
section_iterator_range sections () const
 
virtual void setARMSubArch (Triple &TheTriple) const
 
virtual Expected< uint64_t > getStartAddress () const
 
Triple makeTriple () const
 Create a triple from the data in this object file. More...
 
virtual std::error_code getBuildAttributes (ARMAttributeParser &Attributes) const
 
- Public Member Functions inherited from llvm::object::SymbolicFile
 SymbolicFile (unsigned int Type, MemoryBufferRef Source)
 
 ~SymbolicFile () override
 
basic_symbol_iterator_range symbols () const
 
- Public Member Functions inherited from llvm::object::Binary
 Binary ()=delete
 
 Binary (const Binary &other)=delete
 
virtual ~Binary ()
 
StringRef getData () const
 
StringRef getFileName () const
 
MemoryBufferRef getMemoryBufferRef () const
 
unsigned int getType () const
 
bool isObject () const
 
bool isSymbolic () const
 
bool isArchive () const
 
bool isMachOUniversalBinary () const
 
bool isELF () const
 
bool isMachO () const
 
bool isCOFF () const
 
bool isWasm () const
 
bool isCOFFImportFile () const
 
bool isIR () const
 
bool isLittleEndian () const
 
bool isWinRes () const
 
Triple::ObjectFormatType getTripleObjectFormat () const
 

Static Public Member Functions

static Expected< std::unique_ptr< MachOObjectFile > > create (MemoryBufferRef Object, bool IsLittleEndian, bool Is64Bits, uint32_t UniversalCputype=0, uint32_t UniversalIndex=0)
 
static iterator_range< export_iteratorexports (Error &Err, ArrayRef< uint8_t > Trie, const MachOObjectFile *O=nullptr)
 For use examining a trie not in a MachOObjectFile. More...
 
static iterator_range< rebase_iteratorrebaseTable (Error &Err, MachOObjectFile *O, ArrayRef< uint8_t > Opcodes, bool is64)
 For use examining rebase opcodes in a MachOObjectFile. More...
 
static iterator_range< bind_iteratorbindTable (Error &Err, MachOObjectFile *O, ArrayRef< uint8_t > Opcodes, bool is64, MachOBindEntry::Kind)
 For use examining bind opcodes in a MachOObjectFile. More...
 
static StringRef guessLibraryShortName (StringRef Name, bool &isFramework, StringRef &Suffix)
 
static Triple::ArchType getArch (uint32_t CPUType)
 
static Triple getArchTriple (uint32_t CPUType, uint32_t CPUSubType, const char **McpuDefault=nullptr, const char **ArchFlag=nullptr)
 
static bool isValidArch (StringRef ArchFlag)
 
static Triple getHostArch ()
 
static bool classof (const Binary *v)
 
static uint32_t getVersionMinMajor (MachO::version_min_command &C, bool SDK)
 
static uint32_t getVersionMinMinor (MachO::version_min_command &C, bool SDK)
 
static uint32_t getVersionMinUpdate (MachO::version_min_command &C, bool SDK)
 
static std::string getBuildPlatform (uint32_t platform)
 
static std::string getBuildTool (uint32_t tools)
 
static std::string getVersionString (uint32_t version)
 
- Static Public Member Functions inherited from llvm::object::ObjectFile
static Expected< OwningBinary< ObjectFile > > createObjectFile (StringRef ObjectPath)
 
static Expected< std::unique_ptr< ObjectFile > > createObjectFile (MemoryBufferRef Object, llvm::file_magic Type)
 
static Expected< std::unique_ptr< ObjectFile > > createObjectFile (MemoryBufferRef Object)
 
static bool classof (const Binary *v)
 
static Expected< std::unique_ptr< COFFObjectFile > > createCOFFObjectFile (MemoryBufferRef Object)
 
static Expected< std::unique_ptr< ObjectFile > > createELFObjectFile (MemoryBufferRef Object)
 
static Expected< std::unique_ptr< MachOObjectFile > > createMachOObjectFile (MemoryBufferRef Object, uint32_t UniversalCputype=0, uint32_t UniversalIndex=0)
 
static Expected< std::unique_ptr< WasmObjectFile > > createWasmObjectFile (MemoryBufferRef Object)
 
- Static Public Member Functions inherited from llvm::object::SymbolicFile
static Expected< std::unique_ptr< SymbolicFile > > createSymbolicFile (MemoryBufferRef Object, llvm::file_magic Type, LLVMContext *Context)
 
static Expected< std::unique_ptr< SymbolicFile > > createSymbolicFile (MemoryBufferRef Object)
 
static Expected< OwningBinary< SymbolicFile > > createSymbolicFile (StringRef ObjectPath)
 
static bool classof (const Binary *v)
 
- Static Public Member Functions inherited from llvm::object::Binary
static std::error_code checkOffset (MemoryBufferRef M, uintptr_t Addr, const uint64_t Size)
 

Additional Inherited Members

- Protected Types inherited from llvm::object::Binary
enum  {
  ID_Archive, ID_MachOUniversalBinary, ID_COFFImportFile, ID_IR,
  ID_WinRes, ID_StartObjects, ID_COFF, ID_ELF32L,
  ID_ELF32B, ID_ELF64L, ID_ELF64B, ID_MachO32L,
  ID_MachO32B, ID_MachO64L, ID_MachO64B, ID_Wasm,
  ID_EndObjects
}
 
- Protected Member Functions inherited from llvm::object::ObjectFile
 ObjectFile (unsigned int Type, MemoryBufferRef Source)
 
const uint8_t * base () const
 
std::error_code printSymbolName (raw_ostream &OS, DataRefImpl Symb) const override
 
virtual bool isBerkeleyText (DataRefImpl Sec) const
 
virtual bool isBerkeleyData (DataRefImpl Sec) const
 
virtual section_iterator getRelocatedSection (DataRefImpl Sec) const
 
uint64_t getSymbolValue (DataRefImpl Symb) const
 
- Protected Member Functions inherited from llvm::object::Binary
 Binary (unsigned int Type, MemoryBufferRef Source)
 
- Static Protected Member Functions inherited from llvm::object::Binary
static unsigned int getELFType (bool isLE, bool is64Bits)
 
static unsigned int getMachOType (bool isLE, bool is64Bits)
 
- Protected Attributes inherited from llvm::object::Binary
MemoryBufferRef Data
 

Detailed Description

Definition at line 265 of file MachO.h.

Member Typedef Documentation

◆ load_command_iterator

Definition at line 272 of file MachO.h.

◆ LoadCommandList

Definition at line 271 of file MachO.h.

Member Function Documentation

◆ begin_dices()

dice_iterator MachOObjectFile::begin_dices ( ) const

◆ begin_load_commands()

MachOObjectFile::load_command_iterator MachOObjectFile::begin_load_commands ( ) const

Definition at line 4115 of file MachOObjectFile.cpp.

◆ BindEntryCheckCountAndSkip()

const char* llvm::object::MachOObjectFile::BindEntryCheckCountAndSkip ( uint32_t  Count,
uint32_t  Skip,
uint8_t  PointerSize,
int32_t  SegIndex,
uint64_t  SegOffset 
) const
inline

For use in MachOBindEntry::moveNext() to validate a MachOBindEntry for the BIND_OPCODE_DO_BIND_ULEB_TIMES_SKIPPING_ULEB opcode.

Definition at line 425 of file MachO.h.

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

◆ BindEntryCheckSegAndOffset()

const char* llvm::object::MachOObjectFile::BindEntryCheckSegAndOffset ( int32_t  SegIndex,
uint64_t  SegOffset,
bool  endInvalid 
) const
inline

For use with a SegIndex,SegOffset pair in MachOBindEntry::moveNext() to validate a MachOBindEntry.

Definition at line 418 of file MachO.h.

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

◆ BindRebaseAddress()

uint64_t llvm::object::MachOObjectFile::BindRebaseAddress ( uint32_t  SegIndex,
uint64_t  SegOffset 
) const
inline

For use with a SegIndex,SegOffset pair from a checked Mach-O Bind or Rebase entry to get the address.

Definition at line 462 of file MachO.h.

References llvm::object::getSection(), is64Bit(), and Name.

Referenced by llvm::object::MachORebaseEntry::address(), and llvm::object::MachOBindEntry::address().

◆ BindRebaseSectionName()

StringRef llvm::object::MachOObjectFile::BindRebaseSectionName ( uint32_t  SegIndex,
uint64_t  SegOffset 
) const
inline

For use with a SegIndex,SegOffset pair from a checked Mach-O Bind or Rebase entry to get the section name.

Definition at line 456 of file MachO.h.

Referenced by llvm::object::MachORebaseEntry::sectionName(), and llvm::object::MachOBindEntry::sectionName().

◆ BindRebaseSegmentName()

StringRef llvm::object::MachOObjectFile::BindRebaseSegmentName ( int32_t  SegIndex) const
inline

For use with the SegIndex of a checked Mach-O Bind or Rebase entry to get the segment name.

Definition at line 450 of file MachO.h.

Referenced by llvm::object::MachORebaseEntry::segmentName(), and llvm::object::MachOBindEntry::segmentName().

◆ bindTable() [1/2]

iterator_range< bind_iterator > MachOObjectFile::bindTable ( Error Err)

For use iterating over all bind table entries.

Definition at line 4099 of file MachOObjectFile.cpp.

References is64Bit(), and llvm::object::MachOBindEntry::Regular.

Referenced by llvm::object::BindRebaseSegInfo::address().

◆ bindTable() [2/2]

static iterator_range<bind_iterator> llvm::object::MachOObjectFile::bindTable ( Error Err,
MachOObjectFile O,
ArrayRef< uint8_t >  Opcodes,
bool  is64,
MachOBindEntry::Kind   
)
static

For use examining bind opcodes in a MachOObjectFile.

◆ checkSymbolTable()

Error MachOObjectFile::checkSymbolTable ( ) const

◆ classof()

static bool llvm::object::MachOObjectFile::classof ( const Binary v)
inlinestatic

Definition at line 590 of file MachO.h.

References llvm::object::Binary::isMachO().

◆ create()

Expected< std::unique_ptr< MachOObjectFile > > MachOObjectFile::create ( MemoryBufferRef  Object,
bool  IsLittleEndian,
bool  Is64Bits,
uint32_t  UniversalCputype = 0,
uint32_t  UniversalIndex = 0 
)
static

◆ end_dices()

dice_iterator MachOObjectFile::end_dices ( ) const

◆ end_load_commands()

MachOObjectFile::load_command_iterator MachOObjectFile::end_load_commands ( ) const

Definition at line 4120 of file MachOObjectFile.cpp.

◆ exports() [1/2]

iterator_range< export_iterator > MachOObjectFile::exports ( Error Err) const

For use iterating over all exported symbols.

Definition at line 3030 of file MachOObjectFile.cpp.

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

◆ exports() [2/2]

static iterator_range<export_iterator> llvm::object::MachOObjectFile::exports ( Error Err,
ArrayRef< uint8_t >  Trie,
const MachOObjectFile O = nullptr 
)
static

For use examining a trie not in a MachOObjectFile.

◆ external_relocations()

iterator_range<relocation_iterator> llvm::object::MachOObjectFile::external_relocations ( ) const
inline

Definition at line 330 of file MachO.h.

References llvm::make_range().

◆ extrel_begin()

relocation_iterator MachOObjectFile::extrel_begin ( ) const

◆ extrel_end()

relocation_iterator MachOObjectFile::extrel_end ( ) const

◆ getAnyRelocationAddress()

unsigned MachOObjectFile::getAnyRelocationAddress ( const MachO::any_relocation_info RE) const

◆ getAnyRelocationLength()

unsigned MachOObjectFile::getAnyRelocationLength ( const MachO::any_relocation_info RE) const

◆ getAnyRelocationPCRel()

unsigned MachOObjectFile::getAnyRelocationPCRel ( const MachO::any_relocation_info RE) const

◆ getAnyRelocationSection()

SectionRef MachOObjectFile::getAnyRelocationSection ( const MachO::any_relocation_info RE) const

◆ getAnyRelocationType()

unsigned MachOObjectFile::getAnyRelocationType ( const MachO::any_relocation_info RE) const

◆ getArch() [1/2]

Triple::ArchType llvm::object::MachOObjectFile::getArch ( ) const
overridevirtual

Implements llvm::object::ObjectFile.

Referenced by isValidArch().

◆ getArch() [2/2]

Triple::ArchType MachOObjectFile::getArch ( uint32_t  CPUType)
static

◆ getArchTriple() [1/2]

Triple llvm::object::MachOObjectFile::getArchTriple ( const char **  McpuDefault = nullptr) const

◆ getArchTriple() [2/2]

static Triple llvm::object::MachOObjectFile::getArchTriple ( uint32_t  CPUType,
uint32_t  CPUSubType,
const char **  McpuDefault = nullptr,
const char **  ArchFlag = nullptr 
)
static

◆ getBuildPlatform()

static std::string llvm::object::MachOObjectFile::getBuildPlatform ( uint32_t  platform)
inlinestatic

◆ getBuildTool()

static std::string llvm::object::MachOObjectFile::getBuildTool ( uint32_t  tools)
inlinestatic

◆ getBuildToolVersion()

MachO::build_tool_version MachOObjectFile::getBuildToolVersion ( unsigned  index) const

Definition at line 4300 of file MachOObjectFile.cpp.

◆ getBuildVersionLoadCommand()

MachO::build_version_command MachOObjectFile::getBuildVersionLoadCommand ( const LoadCommandInfo L) const

◆ getBytesInAddress()

uint8_t MachOObjectFile::getBytesInAddress ( ) const
overridevirtual

The number of bytes used to represent an address in this object file format.

Implements llvm::object::ObjectFile.

Definition at line 2476 of file MachOObjectFile.cpp.

References is64Bit().

◆ getCommonSymbolSizeImpl()

uint64_t MachOObjectFile::getCommonSymbolSizeImpl ( DataRefImpl  Symb) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 1771 of file MachOObjectFile.cpp.

◆ getDataInCodeLoadCommand()

MachO::linkedit_data_command MachOObjectFile::getDataInCodeLoadCommand ( ) const

Definition at line 4485 of file MachOObjectFile.cpp.

References llvm::MachO::linkedit_data_command::cmd.

◆ getDataInCodeTableEntry()

MachO::data_in_code_entry MachOObjectFile::getDataInCodeTableEntry ( uint32_t  DataOffset,
unsigned  Index 
) const

Definition at line 4434 of file MachOObjectFile.cpp.

References getPtr().

◆ getDice()

MachO::data_in_code_entry MachOObjectFile::getDice ( DataRefImpl  Rel) const

◆ getDyldInfoBindOpcodes()

ArrayRef< uint8_t > MachOObjectFile::getDyldInfoBindOpcodes ( ) const

◆ getDyldInfoExportsTrie()

ArrayRef< uint8_t > MachOObjectFile::getDyldInfoExportsTrie ( ) const

◆ getDyldInfoLazyBindOpcodes()

ArrayRef< uint8_t > MachOObjectFile::getDyldInfoLazyBindOpcodes ( ) const

◆ getDyldInfoLoadCommand()

MachO::dyld_info_command MachOObjectFile::getDyldInfoLoadCommand ( const LoadCommandInfo L) const

◆ getDyldInfoRebaseOpcodes()

ArrayRef< uint8_t > MachOObjectFile::getDyldInfoRebaseOpcodes ( ) const

◆ getDyldInfoWeakBindOpcodes()

ArrayRef< uint8_t > MachOObjectFile::getDyldInfoWeakBindOpcodes ( ) const

◆ getDylibIDLoadCommand()

MachO::dylib_command MachOObjectFile::getDylibIDLoadCommand ( const LoadCommandInfo L) const

◆ getDylinkerCommand()

MachO::dylinker_command MachOObjectFile::getDylinkerCommand ( const LoadCommandInfo L) const

◆ getDysymtabLoadCommand()

MachO::dysymtab_command MachOObjectFile::getDysymtabLoadCommand ( ) const

◆ getEncryptionInfoCommand()

MachO::encryption_info_command MachOObjectFile::getEncryptionInfoCommand ( const LoadCommandInfo L) const

◆ getEncryptionInfoCommand64()

MachO::encryption_info_command_64 MachOObjectFile::getEncryptionInfoCommand64 ( const LoadCommandInfo L) const

◆ getEntryPointCommand()

MachO::entry_point_command MachOObjectFile::getEntryPointCommand ( const LoadCommandInfo L) const

◆ getFeatures()

SubtargetFeatures llvm::object::MachOObjectFile::getFeatures ( ) const
inlineoverridevirtual

Implements llvm::object::ObjectFile.

Definition at line 369 of file MachO.h.

◆ getFileFormatName()

StringRef MachOObjectFile::getFileFormatName ( ) const
overridevirtual

◆ getHeader()

const MachO::mach_header & MachOObjectFile::getHeader ( ) const

Definition at line 4417 of file MachOObjectFile.cpp.

Referenced by checkSymbolTable().

◆ getHeader64()

const MachO::mach_header_64 & MachOObjectFile::getHeader64 ( ) const

Definition at line 4421 of file MachOObjectFile.cpp.

References assert(), and is64Bit().

Referenced by checkSymbolTable().

◆ getHostArch()

Triple MachOObjectFile::getHostArch ( )
static

Definition at line 2646 of file MachOObjectFile.cpp.

References llvm::sys::getDefaultTargetTriple().

◆ getIndirectName()

std::error_code MachOObjectFile::getIndirectName ( DataRefImpl  Symb,
StringRef Res 
) const

◆ getIndirectSymbolTableEntry()

uint32_t MachOObjectFile::getIndirectSymbolTableEntry ( const MachO::dysymtab_command DLC,
unsigned  Index 
) const

◆ getLibraryCount()

uint32_t MachOObjectFile::getLibraryCount ( ) const

Definition at line 2406 of file MachOObjectFile.cpp.

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

◆ getLibraryShortNameByIndex()

std::error_code MachOObjectFile::getLibraryShortNameByIndex ( unsigned  Index,
StringRef Res 
) const

◆ getLinkeditDataLoadCommand()

MachO::linkedit_data_command MachOObjectFile::getLinkeditDataLoadCommand ( const LoadCommandInfo L) const

◆ getLinkerOptionLoadCommand()

MachO::linker_option_command MachOObjectFile::getLinkerOptionLoadCommand ( const LoadCommandInfo L) const

◆ getLinkOptHintsLoadCommand()

MachO::linkedit_data_command MachOObjectFile::getLinkOptHintsLoadCommand ( ) const

Definition at line 4499 of file MachOObjectFile.cpp.

References llvm::MachO::linkedit_data_command::cmd.

◆ getNoteLoadCommand()

MachO::note_command MachOObjectFile::getNoteLoadCommand ( const LoadCommandInfo L) const

◆ getNValue()

uint64_t MachOObjectFile::getNValue ( DataRefImpl  Sym) const

◆ getPlainRelocationExternal()

bool MachOObjectFile::getPlainRelocationExternal ( const MachO::any_relocation_info RE) const

◆ getPlainRelocationSymbolNum()

unsigned MachOObjectFile::getPlainRelocationSymbolNum ( const MachO::any_relocation_info RE) const

◆ getRelocation()

MachO::any_relocation_info MachOObjectFile::getRelocation ( DataRefImpl  Rel) const

◆ getRelocationLength()

uint8_t MachOObjectFile::getRelocationLength ( DataRefImpl  Rel) const

Definition at line 2223 of file MachOObjectFile.cpp.

◆ getRelocationOffset()

uint64_t MachOObjectFile::getRelocationOffset ( DataRefImpl  Rel) const
overridevirtual

◆ getRelocationRelocatedSection()

section_iterator MachOObjectFile::getRelocationRelocatedSection ( relocation_iterator  Rel) const

◆ getRelocationSection()

section_iterator MachOObjectFile::getRelocationSection ( DataRefImpl  Rel) const

Definition at line 2105 of file MachOObjectFile.cpp.

◆ getRelocationSymbol()

symbol_iterator MachOObjectFile::getRelocationSymbol ( DataRefImpl  Rel) const
overridevirtual

◆ getRelocationType()

uint64_t MachOObjectFile::getRelocationType ( DataRefImpl  Rel) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 2109 of file MachOObjectFile.cpp.

◆ getRelocationTypeName()

void MachOObjectFile::getRelocationTypeName ( DataRefImpl  Rel,
SmallVectorImpl< char > &  Result 
) const
overridevirtual

◆ getRoutinesCommand()

MachO::routines_command MachOObjectFile::getRoutinesCommand ( const LoadCommandInfo L) const

◆ getRoutinesCommand64()

MachO::routines_command_64 MachOObjectFile::getRoutinesCommand64 ( const LoadCommandInfo L) const

◆ getRpathCommand()

MachO::rpath_command MachOObjectFile::getRpathCommand ( const LoadCommandInfo L) const

◆ getScatteredRelocationScattered()

bool MachOObjectFile::getScatteredRelocationScattered ( const MachO::any_relocation_info RE) const

Definition at line 4173 of file MachOObjectFile.cpp.

References llvm::MachO::any_relocation_info::r_word0.

◆ getScatteredRelocationType()

uint32_t MachOObjectFile::getScatteredRelocationType ( const MachO::any_relocation_info RE) const

Definition at line 4183 of file MachOObjectFile.cpp.

References llvm::MachO::any_relocation_info::r_word0.

◆ getScatteredRelocationValue()

uint32_t MachOObjectFile::getScatteredRelocationValue ( const MachO::any_relocation_info RE) const

◆ getSection() [1/4]

Expected< SectionRef > MachOObjectFile::getSection ( unsigned  SectionIndex) const

◆ getSection() [2/4]

Expected< SectionRef > MachOObjectFile::getSection ( StringRef  SectionName) const

◆ getSection() [3/4]

MachO::section MachOObjectFile::getSection ( DataRefImpl  DRI) const

◆ getSection() [4/4]

MachO::section MachOObjectFile::getSection ( const LoadCommandInfo L,
unsigned  Index 
) const

Definition at line 4240 of file MachOObjectFile.cpp.

References getSectionPtr().

◆ getSection64() [1/2]

MachO::section_64 MachOObjectFile::getSection64 ( DataRefImpl  DRI) const

◆ getSection64() [2/2]

MachO::section_64 MachOObjectFile::getSection64 ( const LoadCommandInfo L,
unsigned  Index 
) const

Definition at line 4246 of file MachOObjectFile.cpp.

References getSectionPtr().

◆ getSectionAddress()

uint64_t MachOObjectFile::getSectionAddress ( DataRefImpl  Sec) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 1871 of file MachOObjectFile.cpp.

References llvm::object::getSection(), and is64Bit().

◆ getSectionAlignment()

uint64_t MachOObjectFile::getSectionAlignment ( DataRefImpl  Sec) const
overridevirtual

◆ getSectionContents()

std::error_code MachOObjectFile::getSectionContents ( DataRefImpl  Sec,
StringRef Res 
) const
overridevirtual

◆ getSectionFinalSegmentName()

StringRef MachOObjectFile::getSectionFinalSegmentName ( DataRefImpl  Sec) const

◆ getSectionID()

unsigned MachOObjectFile::getSectionID ( SectionRef  Sec) const

◆ getSectionIndex()

uint64_t MachOObjectFile::getSectionIndex ( DataRefImpl  Sec) const
overridevirtual

◆ getSectionName()

std::error_code MachOObjectFile::getSectionName ( DataRefImpl  Sec,
StringRef Res 
) const
overridevirtual

◆ getSectionRawFinalSegmentName()

ArrayRef< char > MachOObjectFile::getSectionRawFinalSegmentName ( DataRefImpl  Sec) const

◆ getSectionRawName()

ArrayRef< char > MachOObjectFile::getSectionRawName ( DataRefImpl  Sec) const

◆ getSectionSize()

uint64_t MachOObjectFile::getSectionSize ( DataRefImpl  Sec) const
overridevirtual

◆ getSectionType()

unsigned MachOObjectFile::getSectionType ( SectionRef  Sec) const

◆ getSegment64LoadCommand()

MachO::segment_command_64 MachOObjectFile::getSegment64LoadCommand ( const LoadCommandInfo L) const

◆ getSegmentLoadCommand()

MachO::segment_command MachOObjectFile::getSegmentLoadCommand ( const LoadCommandInfo L) const

◆ getSourceVersionCommand()

MachO::source_version_command MachOObjectFile::getSourceVersionCommand ( const LoadCommandInfo L) const

◆ getStringTableData()

StringRef MachOObjectFile::getStringTableData ( ) const

◆ getSubClientCommand()

MachO::sub_client_command MachOObjectFile::getSubClientCommand ( const LoadCommandInfo L) const

◆ getSubFrameworkCommand()

MachO::sub_framework_command MachOObjectFile::getSubFrameworkCommand ( const LoadCommandInfo L) const

◆ getSubLibraryCommand()

MachO::sub_library_command MachOObjectFile::getSubLibraryCommand ( const LoadCommandInfo L) const

◆ getSubUmbrellaCommand()

MachO::sub_umbrella_command MachOObjectFile::getSubUmbrellaCommand ( const LoadCommandInfo L) const

◆ getSymbol64TableEntry()

MachO::nlist_64 MachOObjectFile::getSymbol64TableEntry ( DataRefImpl  DRI) const

Definition at line 4259 of file MachOObjectFile.cpp.

References llvm::object::DataRefImpl::p, and P.

◆ getSymbolAddress()

Expected< uint64_t > MachOObjectFile::getSymbolAddress ( DataRefImpl  Symb) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 1758 of file MachOObjectFile.cpp.

References getSymbolValue().

◆ getSymbolAlignment()

uint32_t MachOObjectFile::getSymbolAlignment ( DataRefImpl  Symb) const
overridevirtual

◆ getSymbolByIndex()

symbol_iterator MachOObjectFile::getSymbolByIndex ( unsigned  Index) const

◆ getSymbolFlags()

uint32_t MachOObjectFile::getSymbolFlags ( DataRefImpl  Symb) const
overridevirtual

◆ getSymbolIndex()

uint64_t MachOObjectFile::getSymbolIndex ( DataRefImpl  Symb) const

◆ getSymbolName()

Expected< StringRef > MachOObjectFile::getSymbolName ( DataRefImpl  Symb) const
overridevirtual

◆ getSymbolSection()

Expected< section_iterator > MachOObjectFile::getSymbolSection ( DataRefImpl  Symb) const
overridevirtual

◆ getSymbolSectionID()

unsigned MachOObjectFile::getSymbolSectionID ( SymbolRef  Symb) const

◆ getSymbolTableEntry()

MachO::nlist MachOObjectFile::getSymbolTableEntry ( DataRefImpl  DRI) const

Definition at line 4253 of file MachOObjectFile.cpp.

References llvm::object::DataRefImpl::p, and P.

◆ getSymbolType()

Expected< SymbolRef::Type > MachOObjectFile::getSymbolType ( DataRefImpl  Symb) const
overridevirtual

◆ getSymtabLoadCommand()

MachO::symtab_command MachOObjectFile::getSymtabLoadCommand ( ) const

Definition at line 4440 of file MachOObjectFile.cpp.

References llvm::MachO::symtab_command::cmd.

◆ getThreadCommand()

MachO::thread_command MachOObjectFile::getThreadCommand ( const LoadCommandInfo L) const

◆ getUuid()

ArrayRef< uint8_t > MachOObjectFile::getUuid ( ) const

Definition at line 4568 of file MachOObjectFile.cpp.

References llvm::makeArrayRef(), None, and offsetof.

Referenced by llvm::symbolize::LLVMSymbolizer::flush().

◆ getUuidCommand()

MachO::uuid_command MachOObjectFile::getUuidCommand ( const LoadCommandInfo L) const

◆ getVersionMinLoadCommand()

MachO::version_min_command MachOObjectFile::getVersionMinLoadCommand ( const LoadCommandInfo L) const

◆ getVersionMinMajor()

static uint32_t llvm::object::MachOObjectFile::getVersionMinMajor ( MachO::version_min_command C,
bool  SDK 
)
inlinestatic

◆ getVersionMinMinor()

static uint32_t llvm::object::MachOObjectFile::getVersionMinMinor ( MachO::version_min_command C,
bool  SDK 
)
inlinestatic

◆ getVersionMinUpdate()

static uint32_t llvm::object::MachOObjectFile::getVersionMinUpdate ( MachO::version_min_command C,
bool  SDK 
)
inlinestatic

◆ getVersionString()

static std::string llvm::object::MachOObjectFile::getVersionString ( uint32_t  version)
inlinestatic

◆ guessLibraryShortName()

StringRef MachOObjectFile::guessLibraryShortName ( StringRef  Name,
bool isFramework,
StringRef Suffix 
)
static

◆ hasPageZeroSegment()

bool llvm::object::MachOObjectFile::hasPageZeroSegment ( ) const
inline

Definition at line 588 of file MachO.h.

Referenced by llvm::object::BindRebaseSegInfo::BindRebaseSegInfo().

◆ is64Bit()

bool MachOObjectFile::is64Bit ( ) const

◆ isRelocatableObject()

bool MachOObjectFile::isRelocatableObject ( ) const
overridevirtual

True if this is a relocatable object (.o/.obj).

Implements llvm::object::ObjectFile.

Definition at line 4598 of file MachOObjectFile.cpp.

References llvm::MachO::MH_OBJECT.

◆ isRelocationScattered()

bool MachOObjectFile::isRelocationScattered ( const MachO::any_relocation_info RE) const

◆ isSectionBitcode()

bool MachOObjectFile::isSectionBitcode ( DataRefImpl  Sec) const
overridevirtual

Reimplemented from llvm::object::ObjectFile.

Definition at line 1999 of file MachOObjectFile.cpp.

◆ isSectionBSS()

bool MachOObjectFile::isSectionBSS ( DataRefImpl  Sec) const
overridevirtual

◆ isSectionCompressed()

bool MachOObjectFile::isSectionCompressed ( DataRefImpl  Sec) const
overridevirtual

Implements llvm::object::ObjectFile.

Definition at line 1963 of file MachOObjectFile.cpp.

◆ isSectionData()

bool MachOObjectFile::isSectionData ( DataRefImpl  Sec) const
overridevirtual

◆ isSectionStripped()

bool MachOObjectFile::isSectionStripped ( DataRefImpl  Sec) const
overridevirtual

When dsymutil generates the companion file, it strips all unnecessary sections (e.g.

everything in the _TEXT segment) by omitting their body and setting the offset in their corresponding load command to zero.

While the load command itself is valid, reading the section corresponds to reading the number of bytes specified in the load command, starting from offset 0 (i.e. the Mach-O header at the beginning of the file).

Reimplemented from llvm::object::ObjectFile.

Definition at line 2007 of file MachOObjectFile.cpp.

References llvm::object::DataRefImpl::a, llvm::object::DataRefImpl::b, llvm::object::DataRefImpl::d, llvm::object::getSection(), is64Bit(), llvm::MachO::section::nreloc, llvm::MachO::section_64::nreloc, llvm::MipsISD::Ret, section_rel_begin(), and section_rel_end().

◆ isSectionText()

bool MachOObjectFile::isSectionText ( DataRefImpl  Sec) const
overridevirtual

◆ isSectionVirtual()

bool MachOObjectFile::isSectionVirtual ( DataRefImpl  Sec) const
overridevirtual

◆ isValidArch()

bool MachOObjectFile::isValidArch ( StringRef  ArchFlag)
static

◆ lazyBindTable()

iterator_range< bind_iterator > MachOObjectFile::lazyBindTable ( Error Err)

For use iterating over all lazy bind table entries.

Definition at line 4104 of file MachOObjectFile.cpp.

References is64Bit(), and llvm::object::MachOBindEntry::Lazy.

◆ load_commands()

iterator_range< MachOObjectFile::load_command_iterator > MachOObjectFile::load_commands ( ) const

Definition at line 4125 of file MachOObjectFile.cpp.

References llvm::make_range().

◆ locrel_begin()

relocation_iterator MachOObjectFile::locrel_begin ( ) const

◆ locrel_end()

relocation_iterator MachOObjectFile::locrel_end ( ) const

◆ mapDebugSectionName()

StringRef MachOObjectFile::mapDebugSectionName ( StringRef  Name) const
overridevirtual

Maps a debug section name to a standard DWARF section name.

Reimplemented from llvm::object::ObjectFile.

Definition at line 4623 of file MachOObjectFile.cpp.

References llvm::StringSwitch< T, R >::Default(), and Name.

◆ moveRelocationNext()

void MachOObjectFile::moveRelocationNext ( DataRefImpl Rel) const
overridevirtual

◆ moveSectionNext()

void MachOObjectFile::moveSectionNext ( DataRefImpl Sec) const
overridevirtual

◆ moveSymbolNext()

void MachOObjectFile::moveSymbolNext ( DataRefImpl Symb) const
overridevirtual

Implements llvm::object::SymbolicFile.

Definition at line 1701 of file MachOObjectFile.cpp.

References is64Bit(), and llvm::object::DataRefImpl::p.

◆ ReadULEB128s()

void MachOObjectFile::ReadULEB128s ( uint64_t  Index,
SmallVectorImpl< uint64_t > &  Out 
) const

◆ RebaseEntryCheckCountAndSkip()

const char* llvm::object::MachOObjectFile::RebaseEntryCheckCountAndSkip ( uint32_t  Count,
uint32_t  Skip,
uint8_t  PointerSize,
int32_t  SegIndex,
uint64_t  SegOffset 
) const
inline

For use in MachORebaseEntry::moveNext() to validate a MachORebaseEntry for the REBASE_OPCODE_DO_*_TIMES* opcodes.

Definition at line 441 of file MachO.h.

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

◆ RebaseEntryCheckSegAndOffset()

const char* llvm::object::MachOObjectFile::RebaseEntryCheckSegAndOffset ( int32_t  SegIndex,
uint64_t  SegOffset,
bool  endInvalid 
) const
inline

For use with a SegIndex,SegOffset pair in MachORebaseEntry::moveNext() to validate a MachORebaseEntry.

Definition at line 434 of file MachO.h.

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

◆ rebaseTable() [1/2]

iterator_range< rebase_iterator > MachOObjectFile::rebaseTable ( Error Err)

For use iterating over all rebase table entries.

Definition at line 3415 of file MachOObjectFile.cpp.

References is64Bit().

◆ rebaseTable() [2/2]

iterator_range< rebase_iterator > MachOObjectFile::rebaseTable ( Error Err,
MachOObjectFile O,
ArrayRef< uint8_t >  Opcodes,
bool  is64 
)
static

For use examining rebase opcodes in a MachOObjectFile.

Definition at line 3402 of file MachOObjectFile.cpp.

References llvm::RISCVFenceField::O.

◆ section_begin()

section_iterator MachOObjectFile::section_begin ( ) const
overridevirtual

◆ section_end()

section_iterator MachOObjectFile::section_end ( ) const
overridevirtual

◆ section_rel_begin() [1/2]

relocation_iterator llvm::object::MachOObjectFile::section_rel_begin ( DataRefImpl  Sec) const
overridevirtual

Implements llvm::object::ObjectFile.

Referenced by isSectionStripped().

◆ section_rel_begin() [2/2]

relocation_iterator MachOObjectFile::section_rel_begin ( unsigned  Index) const

◆ section_rel_end() [1/2]

relocation_iterator llvm::object::MachOObjectFile::section_rel_end ( DataRefImpl  Sec) const
overridevirtual

Implements llvm::object::ObjectFile.

Referenced by isSectionStripped().

◆ section_rel_end() [2/2]

relocation_iterator MachOObjectFile::section_rel_end ( unsigned  Index) const

◆ symbol_begin()

basic_symbol_iterator MachOObjectFile::symbol_begin ( ) const
overridevirtual

Implements llvm::object::SymbolicFile.

Definition at line 2417 of file MachOObjectFile.cpp.

References llvm::MachO::symtab_command::nsyms.

◆ symbol_end()

basic_symbol_iterator MachOObjectFile::symbol_end ( ) const
overridevirtual

◆ weakBindTable()

iterator_range< bind_iterator > MachOObjectFile::weakBindTable ( Error Err)

For use iterating over all weak bind table entries.

Definition at line 4109 of file MachOObjectFile.cpp.

References is64Bit(), and llvm::object::MachOBindEntry::Weak.

Member Data Documentation

◆ Header

MachO::mach_header llvm::object::MachOObjectFile::Header

Definition at line 664 of file MachO.h.

◆ Header64

MachO::mach_header_64 llvm::object::MachOObjectFile::Header64

Definition at line 663 of file MachO.h.


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