From mboxrd@z Thu Jan 1 00:00:00 1970 From: jtc@redback.com (J.T. Conklin) To: markom@opencores.org Cc: gdb@sources.redhat.com Subject: Re: HW breakpoints, watchpoints and trace Date: Thu, 17 May 2001 10:31:00 -0000 Message-id: <5mheyjubks.fsf@jtc.redback.com> References: <3B022218.5A59D75F@opencores.org> X-SW-Source: 2001-05/msg00293.html >>>>> "Marko" == Marko Mlinar 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