Re: [RFA] Implement support for PowerPC BookE ranged breakpoints

Eli Zaretskii
2011-01-28T09:28:45Z

> 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.