[7/9] simplify pending breakpoints
Vladimir Prus
vladimir@codesourcery.com
Fri Sep 7 21:51:00 GMT 2007
This patch makes breakpoint_re_set_one handle pending
breakpoints and eliminates resolve_pending_breakpoints.
As a side effect, when a pending breakpoint is resolved,
it no longer changes number. The real purpose of this
patch is that with multiple breakpoints, breakpoint_re_set_one
gets to update the set of locations of a breakpoint, and this
will automatically handle pending breakpoints anyway. OK?
- Volodya
-------------- next part --------------
gdb/
* breakpoint.c (do_restore_lang_radix_cleanup): Remove.
(resolve_pending_breakpoint): Remove.
(re_enable_breakpoints_in_shlibs): Remove.
(unlink_locations_from_global_list): New.
(update_breakpoint_locations): New.
(breakpoint_re_set_one): Don't bail out on pending breakpoints.
Use parse_condition and update_breakpoint_location to
reset breakpoint. Ignore 'symbol not found' error from
decode_line_1.
(breakpoint_re_set): Don't emit newline before the
reason why breakpoint is not reset.
(do_enable_breakpoint): Don't specially process pending
breakpoints.
(free_bp_location): New.
(break_command_1): For pending breakpoints, initialize
all fields of a sal with zeroes.
* breakpoint.h (re_enable_breakpoints_in_shlibs): Remove.
* infcmd.c (post_create_inferior): Don't call
re_enable_breakpoints_in_shlibs.
* infrun.c (handle_inferior_event): Likewise.
* solib-irix.c (irix_solib_create_inferior_hook): Likewise.
* solib-osf.c (osf_solib_create_inferior_hook): Likewise.
* win32-nat.c (get_win32_debug_event): Likewise.
gdb/testsuite/
* gdb.base/pending.exp: No longer expect "Pending breakpoint resolved"
messages.
* gdb.base/chng-syms.exp: Likewise.
* gdb.base/unload.exp: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mainline_7_pending.diff
Type: text/x-diff
Size: 22516 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20070907/e5c7f7c4/attachment.bin>
More information about the Gdb-patches
mailing list