Commit Graph

7 Commits

Author SHA1 Message Date
Jacques Lucke
c9ed8d7ea7 Fix: Tools: improve gdb frame filter when used in non-debug build 2024-09-05 16:51:44 +02:00
Jacques Lucke
50a6be7169 Tools: add frame filter for task isolation 2024-08-16 23:36:20 +02:00
Jacques Lucke
42ad0a754a Fix: Tools: add missing display hint 2024-08-16 17:20:19 +02:00
Jacques Lucke
bda4c8a220 Tools: improve error handling in GDB pretty printers 2024-08-15 13:40:05 +02:00
Falk David
c5f95c8e2c Cleanup: Formatting 2024-08-08 13:05:14 +02:00
Jacques Lucke
2e412e683b Tools: improve gdb frame filter for lazy functions 2024-08-08 12:02:00 +02:00
Jacques Lucke
51f94d6234 Tools: add GDB debug extension
This adds a Python file that can be loaded into GDB to improve the debugging
experience. This is similar to cfb60c98be which
contains a subset of the features provided here. While not being compatible with
other debuggers, specializing on just GDB allows us to use the GDB Python API
which is quite feature rich. Besides adding quite a few pretty-printers, this
also adds some frame filters which simplify backtraces. I've been using the
pretty-printers for quite some time myself already.

I added a basic guide on how to set it up in `blender_gdb_extension.py` but that
only covers the case when using `gdb` directly. If this is accepted, I can add
some more detailed guides on how to configure e.g. vscode to the developer docs.

The patch also contains some type hints for GDB which I wrote, which simplify
working with the GDB API.

Pull Request: https://projects.blender.org/blender/blender/pulls/126062
2024-08-08 10:28:17 +02:00