xref: /openbsd-src/gnu/llvm/lldb/docs/status/features.rst (revision 061da546b983eb767bad15e67af1174fb0bcf31c)
1*061da546SpatrickFeatures
2*061da546Spatrick========
3*061da546Spatrick
4*061da546SpatrickLLDB supports a broad variety of basic debugging features such as reading DWARF, supporting step, next, finish, backtraces, etc. Some more interested bits are:
5*061da546Spatrick
6*061da546Spatrick* Plug-in architecture for portability and extensibility:
7*061da546Spatrick
8*061da546Spatrick  * Object file parsers for executable file formats. Support currently includes Mach-O (32 and 64-bit) & ELF (32-bit).
9*061da546Spatrick  * Object container parsers to extract object files contained within a file. Support currently includes universal Mach-O files & BSD Archives.
10*061da546Spatrick  * Debug symbol file parsers to incrementally extract debug information from object files. Support currently includes DWARF & Mach-O symbol tables.
11*061da546Spatrick  * Symbol vendor plug-ins collect data from a variety of different sources for an executable object.
12*061da546Spatrick  * Disassembly plug-ins for each architecture. Support currently includes an LLVM disassembler for i386, x86-64 , ARM/Thumb, and PPC64le
13*061da546Spatrick  * Debugger plug-ins implement the host and target specific functions required to debug.
14*061da546Spatrick
15*061da546Spatrick* SWIG-generated script bridging allows Python to access and control the public API of the debugger library.
16*061da546Spatrick* A remote protocol server, debugserver, implements macOS debugging on i386 and x86-64.
17*061da546Spatrick* A command line debugger - the lldb executable itself.
18*061da546Spatrick* A framework API to the library.
19