From: Pierre Muller Date: Tue, 9 Jul 2002 08:28:31 +0000 (+0000) Subject: 2002-07-09 Pierre Muller X-Git-Tag: gdb_5_2_1-2002-07-23-release~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d2410225b6a9933089c44d43b4acd4ee26c1ea1;p=thirdparty%2Fbinutils-gdb.git 2002-07-09 Pierre Muller Merge from main branch. 2002-07-04 Pierre Muller * i386-nat.c (child_post_startup_inferior): New function calling i386_cleanup_dregs if I386_USE_GENERIC_WATCHPOINTS is defined. * config/i386/nm-i386.h: define CHILD_POST_STARTUP_INFERIOR conditional to acknowledge that i386-nat.c has its own child_post_startup_inferior function. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d5294f3a611..8952db40c16 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,15 @@ +2002-07-09 Pierre Muller + + Merge from mainline: + + 2002-07-04 Pierre Muller + * i386-nat.c (child_post_startup_inferior): New function + calling i386_cleanup_dregs if + I386_USE_GENERIC_WATCHPOINTS is defined. + * config/i386/nm-i386.h: define CHILD_POST_STARTUP_INFERIOR + conditional to acknowledge that i386-nat.c has its + own child_post_startup_inferior function. + 2002-07-03 Michal Ludvig Merge from mainline: diff --git a/gdb/config/i386/nm-i386.h b/gdb/config/i386/nm-i386.h index 500bf7b5942..eed05a476fa 100644 --- a/gdb/config/i386/nm-i386.h +++ b/gdb/config/i386/nm-i386.h @@ -115,6 +115,10 @@ extern int i386_remove_hw_breakpoint (CORE_ADDR addr, void *shadow); #define DECR_PC_AFTER_HW_BREAK 0 +/* child_post_startup_inferior used to + reset all debug registers by calling i386_cleanup_dregs (). */ +#define CHILD_POST_STARTUP_INFERIOR + #endif /* I386_USE_GENERIC_WATCHPOINTS */ #endif /* NM_I386_H */ diff --git a/gdb/i386-nat.c b/gdb/i386-nat.c index adf220bba73..53a81a463eb 100644 --- a/gdb/i386-nat.c +++ b/gdb/i386-nat.c @@ -230,6 +230,14 @@ i386_cleanup_dregs (void) dr_status_mirror = 0; } +/* Reset all debug registers at each new startup + to avoid missing watchpoints after restart. */ +void +child_post_startup_inferior (ptid_t ptid) +{ + i386_cleanup_dregs (); +} + /* Print the values of the mirrored debug registers. This is called when maint_show_dr is non-zero. To set that up, type "maint show-debug-regs" at GDB's prompt. */