[RFA/7.8] user breakpoint not inserted if software-single-step at same location

Joel Brobecker brobecker@adacore.com
Fri May 30 19:35:00 GMT 2014


Hi Pedro,

> > For 7.8, I'm thinking it's really safer to avoid resending
> > duplicate Z0 packets to stubs that don't support conditional
> > breakpoint evaluation on the target end.  So I think we should
> > handle the "insert" path too.
> 
> OK - I will take care of that.

New patch attached...

gdb/ChangeLog:

        PR breakpoints/17000
        * breakpoint.c (non_sss_software_breakpoint_inserted_here_p):
        New function, extracted from software_breakpoint_inserted_here_p.
        (software_breakpoint_inserted_here_p): Remove factored out code
        by call to non_sss_software_breakpoint_inserted_here_p.
        (insert_single_step_breakpoint): Do nothing if the target
        does not support target-side breakpoint condition evaluation,
        a a non-software- single-step breakpoint was already inserted
        at the same address.
        (remove_single_step_breakpoints): Adjust to take into account
        the fact that the first software single-step may not have been
        inserted.  Do not remove the raw breakpoint is a user software
        breakpoint is still inserted at the same location.

Tested on ppc-aix with AdaCore's testsuite. Tested on x86_64-linux
with the official testsuite. Also tested on x86_64-linux through
Pedro's branch enabling software single-stepping on that platform.

Does it look better to you? One thing that we might have to consider
is the fact that z0 and Z0 packets are no longer balanced; not sure
if it would matter to any stubb in practice. I think we're into
grey waters anyway...

Thanks!
-- 
Joel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-User-breakpoint-ignored-if-software-single-step-at-s.patch
Type: text/x-diff
Size: 9230 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20140530/89f246de/attachment.bin>


More information about the Gdb-patches mailing list