tree: 8690ce40dbc35a734372181535208f704ea59c6c [path history] [tgz]
  1. client/
  2. common/
  3. console/
  4. debug_adapter/
  5. expr/
  6. symbols/
  7. BUILD.gn
  8. main_e2e_test.cc
  9. main_e2e_test.h
  10. main_host.cc
  11. main_target.cc
  12. README.md
  13. zxdb_perftests.cc
src/developer/debug/zxdb/README.md

Zxdb

This is the code for the frontend of the Fuchsia debugger. This frontend runs on the developer's host computer (Linux or Mac) and talks via IPC (code in ../ipc) to the debug agent (code in ../debug_agent) running on the Fuchsia target.

User documentation

Please see the debugger documentation.

Subdirectories

In order from the lowest conceptual level to the highest. Dependencies always point “up” in this list.

  • common: Lower-level utilities used by multiple other layers. Can not depend on any other part of the debugger.

  • symbols: The symbol library. This wraps LLVM's DWARF parser and provides symbol indexing, an object model, and helper utilities for dealing with symbols.

  • expr: The expression evaluation library. This provides a parser for C++-like expressions and an execution environment for these expressions using the symbol library.

  • client: Conceptually this is a library for writing a debugger UI. It provides functions for the lower-level commands like “step” and “next” and an object model for dealing with processes, threads, etc. But this library provides no user-interface.

  • console: Frontend for the client that provides a console UI on Linux and Mac.

  • debug_adapter : Debug Adapter Protocol server to support IDE debugger clients.