This is the mail archive of the gdb@sourceware.cygnus.com mailing list for the GDB project. See the GDB home page for more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: breakpoint extension for remote protocol


Andrew Cagney writes:
 > "J.T. Conklin" wrote:
 > 
 > > Here is the protocol elements that I'm currently working with:
 > >
 > >     Insert Breakpoint:     B<type>,<address>[,<length>]
 > >     returns:               ??   - A cookie representing the breakpoint
 > >                            EX   - breakpoint type not supported
 > >                                 - no breakpoint contexts available
 > >                                 - invalid/unsupported address
 > >                                 - invalid/unsupported length
 > 
 > FYI, there is already a semi-official use of `B' as a generic remote
 > breakpoint operation.  The syntax is:
 > 
 >     B<address>,S    Set a breakpoint
 >     B<address>,C    Clear a breakpoint

Where is this used?  I see no evidence of this in devo's remote.c.  Is it
hiding out on a branch somewhere?  FYI, the syntax is bogus.  It should use B
and b like the rest of the commands.  Also, the protocol should support the
ability to set a breakpoint or watchpoint on a range of addresses.  The command
format used by JT was developed by me many years ago, and should have been used
instead of this `semi-official' method which was apparantly done without
consultation of someone who understands how to develop this protocol.

 > With regard to the general question of extending the remote-gdb protocol
 > so that it supports a generic hardware breakpoint mechanism.  I agree it
 > is needed.  It is a missing part of the overall toolkit.

I have discussed this with GDB folk in the past.  If you want to hear what
needs to be done, ping me.

 > Did you know
 > that some targets actually implement hardware breakpoints by poking the
 > registers directly?

Yes, and this is a complete sin.

			Stu