GDB Patches
In order to implement our model-centric debugger in Python, we extended GDB Python interface to support all of our needs. In particular, we contributed the following patches:
-
allow Python to detect that multiple breakpoints were hit when the execution stops,
-
add a
getter
to retrieve the process—inferior
in GDB parlance—currently selected, -
add Python notifications when a process exits, or when a shared-library is loaded,
- and finally, the most important patch of the serie was the introduction of the concept of finish breakpoint, crucial to our implementation design.