LLVM 17.0.0git
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:
[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 260 of file MachOObject.h.

## ◆ Opcodes

 ArrayRef llvm::objcopy::macho::LazyBindInfo::Opcodes

Definition at line 261 of file MachOObject.h.

Referenced by llvm::objcopy::macho::MachOWriter::totalSize().

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