This is the mail archive of the
gdb-patches@sourceware.cygnus.com
mailing list for the GDB project.
RFA: document PREPARE_TO_PROCEED
- To: gdb-patches@sourceware.cygnus.com
- Subject: RFA: document PREPARE_TO_PROCEED
- From: Jim Blandy <jimb@cygnus.com>
- Date: 14 Jul 1999 17:53:12 -0500
[Originally sent to Stan and gdb-patches@CYGNUS.com, oops...]
* gdbint.texinfo: Document PREPARE_TO_PROCEED.
Index: gdb/doc/gdbint.texinfo
===================================================================
RCS file: /cvs/cvsfiles/devo/gdb/doc/gdbint.texinfo,v
retrieving revision 1.126
diff -c -r1.126 gdbint.texinfo
*** gdbint.texinfo 1999/06/24 23:07:21 1.126
--- gdbint.texinfo 1999/07/13 23:50:56
***************
*** 2037,2042 ****
--- 2037,2058 ----
Define this to be able to, when a breakpoint insertion fails, warn the
user that another process may be running with the same executable.
+ @item PREPARE_TO_PROCEED @var{select_it}
+ This (ugly) macro allows a native configuration to customize the way the
+ @code{proceed} function in @file{infrun.c} deals with switching between
+ threads.
+
+ In a multi-threaded task we may select another thread and then continue
+ or step. But if the old thread was stopped at a breakpoint, it will
+ immediately cause another breakpoint stop without any execution (i.e. it
+ will report a breakpoint hit incorrectly). So GDB must step over it
+ first.
+
+ If defined, @code{PREPARE_TO_PROCEED} should check the current thread
+ against the thread that reported the most recent event. If a step-over
+ is required, it returns TRUE. If @var{select_it} is non-zero, it should
+ reselect the old thread.
+
@item PROC_NAME_FMT
Defines the format for the name of a @file{/proc} device. Should be
defined in @file{nm.h} @emph{only} in order to override the default