MoonBit DWARF debug info parser, symbol resolver, stack unwinder, and crash reporter for MCU, Linux, and WebAssembly.
Dependencies
| Package | Purpose |
|---|---|
| src/binary_reader | Bounds-checked byte, endian, string, and LEB128 readers |
| src/elf | ELF structures, parsing, symbols, relocations, notes, and demangling |
| src/dwarf_line | Line headers, state machine, v5 descriptors, and lookup |
| src/dwarf_die | Abbreviations, DIE trees, attributes, ranges, variables, and types |
| src/dwarf_loc | Location opcodes, stack evaluation, and location lists |
| src/frame | CIE/FDE parsing, CFI execution, and unwind lookup |
| src/model | DebugImage, indexes, summaries, diffs, and reports |
| src/cli_core | Testable CLI argument, batch, exporter, and rendering logic |
| src/cli | Native executable entrypoint |
import {
"wuhaiting321/dwarfscope/src/model",
}
fn analyze(bytes : Bytes) -> String raise {
let image = @model.DebugImage::parse("firmware.elf", bytes)
let summary = image.summary()
summary.to_markdown()
}moon run src/cli --target native -- --help
moon run src/cli --target native -- --format text firmware.elf
moon run src/cli --target native -- --format markdown firmware.elf
moon run src/cli --target native -- --format json firmware.elf
moon run src/cli --target native -- --addr 0x8000 firmware.elf
moon run src/cli --target native -- --header --sections --symbols firmware.elfmoon run benchmarks --target native --releasemoon fmt --check
moon check --deny-warn
moon check --target all
moon test --deny-warn
moon test --target native --deny-warn
moon info
moon build --release --target nativemoon run src/cli --target native -- --help
moon run src/cli --target native -- --format json firmware.elf
moon run src/cli --target native -- --addr 0x8000 firmware.elf
moon fmt --check
moon check --deny-warn
moon test --target native --deny-warnInstall
Download zipMoonBit DWARF debug info parser, symbol resolver, stack unwinder, and crash reporter for MCU, Linux, and WebAssembly.
Dependencies