[PATCH] Improve break-range's documentation

Pedro Alves
2022-05-31T11:31:56Z

On 2022-05-30 17:15, Eli Zaretskii wrote:
>>>> +@item break-range @var{start-locspec}, @var{end-locspec}
>>>> +Set a breakpoint for an address range given by @var{start-locspec} and
>>>> +@var{end-locspec}, which are location specs. @xref{Location
>>>> +Specifications}, for a list of all the possible forms of location
>>>> +specs. If either @var{start-locspec} or @var{end-locspec} resolve to
>>>> +multiple addresses in the program, then the command aborts with an
>>>> +error without creating a breakpoint. The breakpoint will stop
>>>> +execution of the inferior whenever it executes an instruction at any
>>>> +address within the specified range, including @var{start-locspec} and
>>>> +@var{end-locspec}.
>>> This deviates from the usual practice elsewhere, and talks about
>>> location specs resolving into _addresses_ and not code locations. is
>>> that intentional and necessary?
>> Yes, it is intentional here, because the command is exactly about breaking
>> on any address that falls within an address range.
> Then I think this needs some additional text explaining that, or
> qualifying the "location resolves to address" part.

How about this:

From 40c64ac6d4d7d6caef7156ceb31387b343eef324 Mon Sep 17 00:00:00 2001
From: Pedro Alves <pedro@palves.net>
Date: Tue, 31 May 2022 12:18:49 +0100
Subject: [PATCH] Improve break-range's documentation

Change-Id: Iac26e1d2e7d8dc8a7d9516e6bdcc5c3fc4af45c8
---
gdb/doc/gdb.texinfo | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 7886f3eb3dd..c2fb78f933f 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -25496,7 +25496,7 @@ about the @code{mask} argument in @ref{Set Watchpoints}.
PowerPC embedded processors support hardware accelerated
@dfn{ranged breakpoints}. A ranged breakpoint stops execution of
the inferior whenever it executes an instruction at any address within
-the range it specifies. To set a ranged breakpoint in @value{GDBN},
+the range it was set at. To set a ranged breakpoint in @value{GDBN},
use the @code{break-range} command.

@value{GDBN} provides the following PowerPC-specific commands:
@@ -25507,12 +25507,14 @@ use the @code{break-range} command.
Set a breakpoint for an address range given by @var{start-locspec} and
@var{end-locspec}, which are location specs. @xref{Location
Specifications}, for a list of all the possible forms of location
-specs. If either @var{start-locspec} or @var{end-locspec} resolve to
-multiple addresses in the program, then the command aborts with an
-error without creating a breakpoint. The breakpoint will stop
-execution of the inferior whenever it executes an instruction at any
-address within the specified range, including @var{start-locspec} and
-@var{end-locspec}.
+specs. @value{GDBN} resolves both @var{start-locspec} and
+@var{end-locspec}, and uses the addresses of the resolved code
+locations as start and end addresses of the range to break at. If
+either @var{start-locspec} or @var{end-locspec} resolve to multiple
+code locations in the program, then the command aborts with an error
+without creating a breakpoint. The breakpoint will stop execution of
+the inferior whenever it executes an instruction at any address
+between the start and end addresses, inclusive.

@kindex set powerpc
@item set powerpc soft-float

--
2.36.0