This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Question about solaris CANNOT_STEP_HW_WATCHPOINTS macro
- From: "Pieter Maljaars" <pieter dot maljaars at altenpts dot nl>
- To: "Joel Brobecker" <brobecker at adacore dot com>, "Pierre Muller" <pierre dot muller at ics-cnrs dot unistra dot fr>
- Cc: Peter dot Schauer at regent dot e-technik dot tu-muenchen dot de, gdb at sourceware dot org, "'Joseph S. Myers'" <joseph at codesourcery dot com>, "'Pedro Alves'" <pedro at codesourcery dot com>
- Date: Fri, 23 Apr 2010 09:41:50 +0200
- Subject: Re: Question about solaris CANNOT_STEP_HW_WATCHPOINTS macro
- Reply-to: pieter dot maljaars at altenpts dot nl
> Looks like a different bug is now occurring:
>
> (gdb) start
> Temporary breakpoint 1 at 0x805067a: file foo.c, line 13.
> Starting program: [...]/foo
>
> Temporary breakpoint 1, main () at foo.c:13
> 13 myrec.x = 5;
> (gdb) print myrec.x
> $1 = 0
> (gdb) watch myrec.x
> Hardware watchpoint 2: myrec.x
> (gdb) s
> 14 myrec.y = 3.4;
I have tested this with Solaris 2.10 and GDB-7.1. I have removed
the CANNOT_STEP_HW_WATCHPOINT define. Here this bug does not occur.
(gdb) start
Temporary breakpoint 1 at 0x8050681: file watchp.c, line 13.
Starting program: [...]/watchp
Temporary breakpoint 1, main () at watchp.c:13
13 myrec.x = 5;
(gdb) print myrec.x
$1 = 0
(gdb) watch myrec.x
Hardware watchpoint 2: myrec.x
(gdb) s
Hardware watchpoint 2: myrec.x
Old value = 0
New value = 5
main () at watchp.c:14
14 myrec.y = 3.4;
Here it works as expected. GDB stops also at the other watchpoint.
So with "step" and "continue" both watchpoints are triggered, like
it behaves on x86-linux.
Pieter Maljaars