LLVM  15.0.0git
Public Attributes | List of all members
llvm::objcopy::macho::LazyBindInfo Struct Reference

The location of the lazy bind info inside the binary is described by LC_DYLD_INFO load command. More...

#include "ObjCopy/MachO/MachOObject.h"

Collaboration diagram for llvm::objcopy::macho::LazyBindInfo:
Collaboration graph
[legend]

Public Attributes

ArrayRef< uint8_t > Opcodes
 

Detailed Description

The location of the lazy bind info inside the binary is described by LC_DYLD_INFO load command.

Some uses of external symbols do not need to be bound immediately. Instead they can be lazily bound on first use. The lazy_bind contains a stream of BIND opcodes to bind all lazy symbols. Normal use is that dyld ignores the lazy_bind section when loading an image. Instead the static linker arranged for the lazy pointer to initially point to a helper function which pushes the offset into the lazy_bind area for the symbol needing to be bound, then jumps to dyld which simply adds the offset to lazy_bind_off to get the information on what to bind.

Definition at line 264 of file MachOObject.h.

Member Data Documentation

◆ Opcodes

ArrayRef<uint8_t> llvm::objcopy::macho::LazyBindInfo::Opcodes

Definition at line 265 of file MachOObject.h.


The documentation for this struct was generated from the following file: