Ongoing Work
Here you find a list of efforts that are currently being worked on in GDB.
Python scripting support
We are integrating the Python interpreter, and exposing internal GDB subsystems to Python.
Discussions are going on in the GDB mailing lists, and code for this effort is being held in a git repository hosted by gitorious. You can check out the code with:
$ git clone git://git.gitorious.org/gdb-python/mainline.git $ cd mainline $ git remote add origin git@gitorious.org:gdb-python/mainline.git $ git checkout --track -b python-revisited origin/python-revisited
The branch is based on Vladimir's git repository, so it contains history not related to this effort. The first commit related to Python work is 710e23e7bd57137a8686d6bc679a739a556afba2.
If you are interested in helping out, and you have an FSF assignment on file, we can set you up with write access.
Non-stop multi-threaded debugging
CodeSourcery is being sponsored to implement:
- non-stop multi-threaded debugging;
- asynchronous interaction with GDB;
- a limited form of multi-process debugging;
- where all processes have the same memory map (i.e., no exec, dlopen or mmap after the fork).
Details of the proposal are available in this e-mail.
Removal of global current_gdbarch
GDB currently assumes a program spans only one architecture, and maintains information about it in the global current_gdbarch variable. This assumption is not true in some cases, for example in asymmetric multi-core architectures such as the Cell Broadband Engine Architecture. An effort is underway to remove this assumption from GDB and make it use the appropriate gdbarch object for each context.
The effort is being carried out by Ulrich Weigand and Markus Deuling from IBM.
Value-based frame unwinder
The frame unwinder interface is changing between GDB 6.8 and the following release. See ValueBasedUnwinder for conversion tips and a list of unconverted targets.