From d8b2a6932ad282c426f4aa0c099bf4e52c479c9a Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Tue, 18 Dec 2007 18:11:09 +0000 Subject: [PATCH] * doc/gdb.texinfo (Set Watchpoints): Integrate per-thread watchpoint explanation into the main description of the watchpoint command; update synopses of 'watch', 'rwatch', and 'awatch' commands. --- gdb/doc/ChangeLog | 7 +++++++ gdb/doc/gdb.texinfo | 20 ++++++++++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 9b3d8332af..02e06cf207 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,10 @@ +2007-12-18 Jim Blandy + + * doc/gdb.texinfo (Set Watchpoints): Integrate per-thread + watchpoint explanation into the main description of the watchpoint + command; update synopses of 'watch', 'rwatch', and 'awatch' + commands. + 2007-12-18 Vladimir Prus * gdb.texinfo (Miscellaneous gdb/mi Commands): diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 177f7918e3..153d4f9cc2 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -3222,7 +3222,7 @@ watchpoints, which do not slow down the running of your program. @table @code @kindex watch -@item watch @var{expr} +@item watch @var{expr} @r{[}thread @var{threadnum}@r{]} Set a watchpoint for an expression. @value{GDBN} will break when the expression @var{expr} is written into by the program and its value changes. The simplest (and the most popular) use of this command is @@ -3232,13 +3232,20 @@ to watch the value of a single variable: (@value{GDBP}) watch foo @end smallexample +If the command includes a @code{@r{[}thread @var{threadnum}@r{]}} +clause, @value{GDBN} breaks only when the thread identified by +@var{threadnum} changes the value of @var{expr}. If any other threads +change the value of @var{expr}, @value{GDBN} will not break. Note +that watchpoints restricted to a single thread in this way only work +with Hardware Watchpoints. + @kindex rwatch -@item rwatch @var{expr} +@item rwatch @var{expr} @r{[}thread @var{threadnum}@r{]} Set a watchpoint that will break when the value of @var{expr} is read by the program. @kindex awatch -@item awatch @var{expr} +@item awatch @var{expr} @r{[}thread @var{threadnum}@r{]} Set a watchpoint that will break when @var{expr} is either read from or written into by the program. @@ -3357,13 +3364,6 @@ way of doing that would be to set a code breakpoint at the entry to the In multi-threaded programs, watchpoints will detect changes to the watched expression from every thread. -@kindex watch thread thread_num -@item watch @var{expr} thread @var{threadnum} -Set a watchpoint that will break when @var{expr} is either read from -or written into by the thread identified by @var{threadnum}. If @var{expr} -is modified by any other threads not matching @var{threadnum}, @value{GDBN} -will not break. Note that this will only work with Hardware Watchpoints. - @quotation @emph{Warning:} In multi-threaded programs, software watchpoints have only limited usefulness. If @value{GDBN} creates a software -- 2.34.1