bloombloombloom / Bloom

A debug interface for AVR-based embedded systems development on GNU/Linux.
https://bloom.oscillate.io/
Other
64 stars 3 forks source link

Breakpoints being lost after programming session in GDB #91

Closed navnavnav closed 9 months ago

navnavnav commented 9 months ago

When GDB is configured to keep breakpoints inserted (show breakpoint always-inserted), and the target is programmed via the load command, we lose any breakpoints that were installed before the programming session started. What's worse is that GDB still thinks those breakpoints are present, so it will ignore any subsequent requests to add a new breakpoint to the same location. The user has to delete each breakpoint, then re-add. Only then will the breakpoint be installed onto the target.

We should be restoring any breakpoints that were present at the time the programming session started.

I'm probably going to include this with the range stepping work, as that's where I've added internal and external breakpoint tracking for debug sessions.

More to follow

navnavnav commented 9 months ago

Development work for this is complete. Bloom will now restore any previously installed breakpoints at the end of a programming session.

These changes have been merged into develop and will be included in the v1.0.0 release. Closing this now.