This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: HW breakpoints, watchpoints and trace
- To: markom at opencores dot org
- Subject: Re: HW breakpoints, watchpoints and trace
- From: jtc at redback dot com (J.T. Conklin)
- Date: 17 May 2001 10:31:15 -0700
- Cc: gdb at sources dot redhat dot com
- References: <3B022218.5A59D75F@opencores.org>
- Reply-To: jtc at redback dot com
>>>>> "Marko" == Marko Mlinar <markom@opencores.org> writes:
Marko> I have a question: Our processor (or1k) has a lot of HW
Marko> debugging capabilities and I was wondering what would be the
Marko> best solution to include them into user interface.
Marko> e.g.: We can create HW watchpoint as
Marko> "watchpoint_event" = $1234 == 506 && ( $50 > 70 && $50 <= 120
Marko> || !write_to_address_occured (4567))
Marko> (Sorry about this freaky pseudo code, but I hope you get my
Marko> point)
Actually, I'm a bit confused.
Marko> We could surely add special command which would support such
Marko> functionality, but I would like to have this functionality
Marko> detected automaticaly using break or hbreak.
Note that GDB already supports hardware watchpoints on several
targets. See the watch, awatch, and rwatch commands for details.
The low-level guts of GDB only supports read, write, or access watch-
points on memory locations, but the high level CLI takes expressions.
So with "watch foo > 3", GDB would get an event when "foo" is changed,
and then it would evaluate "foo > 3".
>From your above pseudo code, it appears that the or1k processor might
be able to evaluate the entire expression. GDB has no support for such
a thing. I suggest getting basic hardware watchpoints working before
taking on such a project.
--jtc
--
J.T. Conklin
RedBack Networks