Skip to main content

Module unwind

Module unwind 

Source
Expand description

Stack unwinding infrastructure for macOS crash reports.

Provides DWARF CFI, Apple Compact Unwind, and frame pointer walking to generate accurate thread backtraces. All unwinding algorithms live in the library crate — no FFI. A MemoryReader trait abstracts memory access so the binary crate can provide mach_vm_read().

Modules§

arch
Architecture-specific DWARF register maps and compact unwind encoding decoders.
compact_unwind
Apple Compact Unwind (__unwind_info) parser and register restoration.
cursor
Frame cursor: drives the compact → DWARF → FP fallback chain.
dwarf_cfi
DWARF Call Frame Information (.eh_frame / .debug_frame) parser and evaluator.
dwarf_expr
DWARF expression evaluator (stack machine).
frame_pointer
Frame pointer chain walking (fallback unwinder).
macho
Mach-O section finder operating on byte slices from MemoryReader.
registers
Architecture-abstracted register context indexed by DWARF register number.

Structs§

BinaryImageInfo
Information about a loaded binary image, with cached section locations.
SectionRef
Location of a Mach-O section in virtual memory.
SliceMemoryReader
A simple in-memory reader backed by a byte buffer at a given base address. Useful for tests.

Enums§

UnwindError
Errors that can occur during stack unwinding.

Traits§

MemoryReader
Trait for reading memory from a target process.

Functions§

unwind_thread
Unwinds a single thread, producing a list of (PC, register context) pairs from top of stack to bottom.