This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
src/gdb ChangeLog breakpoint.c breakpoint.h te ...
- From: vprus at sourceware dot org
- To: gdb-cvs at sourceware dot org
- Date: 29 Jan 2008 17:52:47 -0000
- Subject: src/gdb ChangeLog breakpoint.c breakpoint.h te ...
CVSROOT: /cvs/src
Module name: src
Changes by: vprus@sourceware.org 2008-01-29 17:52:47
Modified files:
gdb : ChangeLog breakpoint.c breakpoint.h
gdb/testsuite : ChangeLog
Added files:
gdb/testsuite/gdb.base: watchpoint-solib-shr.c
watchpoint-solib.c watchpoint-solib.exp
Log message:
Use multiple locations for hardware watchpoints.
This eliminates the need to traverse value chain, doing
various checks, in three different places.
* breakpoint.h (struct bp_location): New fields
lengths and watchpoint_type.
(struct breakpoint): Remove the val_chain field.
* breakpoint.c (is_hardware_watchpoint): New.
(free_valchain): Remove.
(update_watchpoint): New.
(insert_bp_location): For hardware watchpoint, just
directly insert it.
(insert_breakpoints): Call update_watchpoint_locations
on all watchpoints. If we have failed to insert
any location of a hardware watchpoint, remove all inserted
locations.
(remove_breakpoint): For hardware watchpoints, directly
remove location.
(watchpoints_triggered): Iterate over locations.
(bpstat_stop_status): Use only first location of
a resource watchpoint.
(delete_breakpoint): Don't call free_valchain.
(print_one_breakpoint): Don't print all
locations for watchpoints.
(breakpoint_re_set_one): Use update_watchpoint for
watchpoints.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.9106&r2=1.9107
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/breakpoint.c.diff?cvsroot=src&r1=1.298&r2=1.299
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/breakpoint.h.diff?cvsroot=src&r1=1.63&r2=1.64
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/ChangeLog.diff?cvsroot=src&r1=1.1545&r2=1.1546
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/gdb.base/watchpoint-solib-shr.c.diff?cvsroot=src&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/gdb.base/watchpoint-solib.c.diff?cvsroot=src&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/gdb.base/watchpoint-solib.exp.diff?cvsroot=src&r1=NONE&r2=1.1