[RFC] disassemble-next-line
teawater
teawater@gmail.com
Wed Mar 11 08:32:00 GMT 2009
Hi guys,
On Mon, Mar 9, 2009 at 23:26, Tom Tromey <tromey@redhat.com> wrote:
>>>>>> "teawater" == teawater <teawater@gmail.com> writes:
>
> teawater> This is the patch for the function to output assembly codes
> teawater> for next line.
>
> teawater> +/* If ON, GDB will output the assembly codes of next line.
> teawater> + If OFF, GDB will not do it.
> teawater> + doesn't support it, GDB will instead use the traditional
>
> I think this third line should be removed.
OK. I will remove it.
>
> teawater> +/* Show assembly codes; stub for catch_errors. */
> teawater> +
> teawater> +struct gdb_disassembly_stub_args
> teawater> +{
> teawater> + int how_many;
> teawater> + CORE_ADDR low;
> teawater> + CORE_ADDR high;
> teawater> +};
> teawater> +
> teawater> +static int
> teawater> +gdb_disassembly_stub (void *args)
> teawater> +{
> teawater> + struct gdb_disassembly_stub_args *p = args;
> teawater> + gdb_disassembly (uiout, 0, 0, 0, p->how_many, p->low, p->high);
> teawater> + return 0;
>
> IMO, in this case it would be shorter, and clearer, to use TRY_CATCH
> at the call site rather than catch_errors. What do you think?
OK. I will change it to TRY_CATCH.
>
> teawater> + /* If disassemble-next-line is set to auto or on and doesn't have
> teawater> + line message, output current instructions. */
>
> "a line message"
>
> teawater> + /* If disassemble-next-line is set to on and there is line
> teawater> + messages, output assembly codes for next line. */
>
> "there are line messages"
I will change it.
>
> teawater> + add_setshow_enum_cmd ("disassemble-next-line", class_run,
> teawater> + disassemble_next_line_enum,
> teawater> + &disassemble_next_line, _("\
> teawater> +Set debugger's willingness to use disassemble-next-line."), _("\
>
> This text seems circular.
> Instead it should briefly describe what the option does.
>
> teawater> +Show debugger's willingness to use disassemble-next-line."), _("\
> teawater> +If on, gdb will output the assembly codes of next line.\n\
>
> This also reads strangely, but I don't have a suggestion for what it
> ought to say. I think it should at least say when the assembly will
> be displayed. "assembly codes" in particular sounds odd to me.
I think Doug's idea is better:
If ON, GDB will disassemble the next source line when execution stops.
If the next source line cannot be ascertained, the next instruction
will be disassembled instead.
>
> teawater> +If auto (which is the default), gdb will output a assembly code\n\
> teawater> +at current address if there is not line message."),
>
> "at the current address"
I will change it.
>
> The line message bit could use rewording as well; at least s/not/no/.
>
About line message.
struct symtab_and_line
{
struct symtab *symtab;
struct obj_section *section;
/* Line number. Line numbers start at 1 and proceed through symtab->nlines.
0 is never a valid line number; it is used to indicate that line number
information is not available. */
int line;
CORE_ADDR pc;
CORE_ADDR end;
int explicit_pc;
int explicit_line;
};
It don't have comment name.
What about change it to "line debug message"?
Thanks for your help.
Hui
More information about the Gdb-patches
mailing list