This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] Implement support for PowerPC BookE ranged breakpoints
- From: Eli Zaretskii <eliz at gnu dot org>
- To: Thiago Jung Bauermann <bauerman at br dot ibm dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Fri, 28 Jan 2011 11:28:57 +0200
- Subject: Re: [RFA] Implement support for PowerPC BookE ranged breakpoints
- References: <1296177985.2843.82.camel@hactar>
- Reply-to: Eli Zaretskii <eliz at gnu dot org>
> From: Thiago Jung Bauermann <bauerman@br.ibm.com>
> Date: Thu, 27 Jan 2011 23:26:25 -0200
>
> This is (finally!) the last patch in my series to support BookE hardware
> debug features. It adds the following command:
>
> (gdb) help break-range
> Set a breakpoint for an address range.
> break-range START-LOCATION, END-LOCATION
> where START-LOCATION and END-LOCATION can be one of the following:
> LINENUM, for that line in the current file,
> FILE:LINENUM, for that line in that file,
> +OFFSET, for that number of lines after the current line
> or the start of the range
> FUNCTION, for the first line in that function,
> FILE:FUNCTION, to distinguish among like-named static functions.
> *ADDRESS, for the instruction at that address.
Thanks.
> +* When locally debugging programs on PowerPC BookE processors running
^^^^^^^
You mean "natively", right? I don't think we use "local debugging"
elsewhere in our documentation, do we?
> + a Linux kernel version 2.6.34 or later, GDB supports ranged breakpoints,
> + which stop execution of the inferior whenever it executes any address
> + within the specified range. See the "PowerPC Embedded" section in the
"whenever it executes an instruction at any address within the
specified range". (You cannot "execute" an address.)
> + if (b->disposition == disp_del)
> + printf_filtered (_("Temporary ranged breakpoint"));
> + else
> + printf_filtered (_("Ranged breakpoint"));
> + printf_filtered (_(" %d"), b->number);
This snippet violates one of the rules of translation-ready software:
don't construct phrases from parts. I suggest to make " %d" part of
each of the two possibilities.
> +static void
> +print_recreate_ranged_breakpoint (struct breakpoint *b, struct ui_file *fp)
> +{
> + fprintf_unfiltered (fp, "break-range %s", b->exp_string);
Should this string be in _() ?
> + sals_start.sals = (struct symtab_and_line *)
> + xmalloc (sizeof (struct symtab_and_line));
> + sals_start.nelts = 1;
Spaces and TABs mixup alert!
> +The breakpoint will stop execution of the inferior whenever it\n\
> +executes any address within the [start-address, end-address] range\n\
^^^^^^^^^^^^^^^^^^^^
Same correction as in NEWS.
> +PowerPC embedded processors support hardware accelerated ranged breakpoints.
> +A @dfn{ranged breakpoint} stops execution of the inferior whenever it
Use @dfn when you first introduce a term, in this case in the previous
sentence.
Also, please add here a @cindex entry about "ranged breakpoint".
> +executes any address within the range it specifies. To set a ranged
^^^^^^^^^^^^^^^^^^^^
Same correction as in NEWS.
> +Set a breakpoint for an address range.
> +@var{start-location} and @var{end-location} can specify a function name,
> +a line number, an offset of lines from the current line or from the start
> +location, or an address of an instruction (@xref{Specify Location},
You want a "see @ref here", not @xref. The latter will produce "See"
with a capital S, which will look like a typo. In general, @xref is
supposed to use only at the beginning of a sentence.
> +The breakpoint will stop execution of the inferior whenever it
> +executes any address within the specified range, (including
^^^^^^^^^^^^^^^^^^^^
Same correction as above.
The patch for NEWS and the manual is okay with those changes.