This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] disassemble-next-line


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]