[rfc target-side break conditions 3/5 v2] GDB-side changes

Luis Gustavo luis_gustavo@mentor.com
Fri Jan 27 20:34:00 GMT 2012


A few more changes on this patch. It addresses all the previous comments 
and suggestions.

Multi-inferior cases are now properly handled through program space 
checks, with the aid of an additional patch i posted recently: 
http://sourceware.org/ml/gdb-patches/2012-01/msg00875.html.

If the user flips the condition evaluation switch in the middle of a 
run, GDB takes appropriate actions to either remove the conditions from 
the target or insert them.

There is also a mechanism to try and prevent delete_breakpoint (...) 
from inserting new breakpoints when we're trying to remove breakpoints 
to clean up for an execd.

It basically separates the user "delete" command from the internal 
delete requests. There is now a function that does breakpoint deletion 
with updates (passing 1 to update_global_location_list (...)) in order 
to synchronize the list of breakpoint conditions with the target. Such a 
function is only called via the delete_command (...) path.

I've changed the "info break" output a little. We now display "<mode> 
evaluates conditions" next to the location description, and we also 
output that same information via MI. Though it works, i'm not entirely 
happy with the way it is displayed.

Previously i displayed such information next to the condition field, but 
it doesn't work right for breakpoints with multiple locations since the 
conditions are printed for the breakpoint instead of the locations. 
Suggestions?

Last, i spent some time dealing with update_global_location_list (...) 
in order to make the condition modification detection system a little 
more robust and to avoid having to go through the location lists 
unecessarily.

Tested with both GDB and GDBServer.

Luis



-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-break_condition_bytecode.diff
Type: text/x-patch
Size: 43484 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20120127/b7b69454/attachment.bin>


More information about the Gdb-patches mailing list