public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] Prettify output of debug_dwarf_die
@ 2024-03-28 19:34 Tom Tromey
  2024-04-02  6:56 ` Richard Biener
  0 siblings, 1 reply; 2+ messages in thread
From: Tom Tromey @ 2024-03-28 19:34 UTC (permalink / raw)
  To: gcc-patches; +Cc: Tom Tromey

When debugging gcc, I tried calling debug_dwarf_die and I saw this
output:

      DW_AT_location: location descriptor:
        (0x7fffe9c2e870) DW_OP_dup 0, 0
        (0x7fffe9c2e8c0) DW_OP_bra location descriptor (0x7fffe9c2e640)
, 0
        (0x7fffe9c2e820) DW_OP_lit4 4, 0
        (0x7fffe9c2e910) DW_OP_skip location descriptor (0x7fffe9c2e9b0)
, 0
        (0x7fffe9c2e640) DW_OP_dup 0, 0

I think those ", 0" should not appear on their own lines.  The issue
seems to be that print_dw_val should not generally emit a newline,
except when recursing.

gcc/ChangeLog

	* dwarf2out.cc (print_dw_val) <dw_val_class_loc>: Don't
	print newline when not recursing.
---
 gcc/dwarf2out.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc
index 8f18bc4fe64..1b0e8b5a5b2 100644
--- a/gcc/dwarf2out.cc
+++ b/gcc/dwarf2out.cc
@@ -6651,7 +6651,7 @@ print_dw_val (dw_val_node *val, bool recurse, FILE *outfile)
     case dw_val_class_loc:
       fprintf (outfile, "location descriptor");
       if (val->v.val_loc == NULL)
-	fprintf (outfile, " -> <null>\n");
+	fprintf (outfile, " -> <null>");
       else if (recurse)
 	{
 	  fprintf (outfile, ":\n");
@@ -6662,9 +6662,9 @@ print_dw_val (dw_val_node *val, bool recurse, FILE *outfile)
       else
 	{
 	  if (flag_dump_noaddr || flag_dump_unnumbered)
-	    fprintf (outfile, " #\n");
+	    fprintf (outfile, " #");
 	  else
-	    fprintf (outfile, " (%p)\n", (void *) val->v.val_loc);
+	    fprintf (outfile, " (%p)", (void *) val->v.val_loc);
 	}
       break;
     case dw_val_class_loc_list:
-- 
2.43.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] Prettify output of debug_dwarf_die
  2024-03-28 19:34 [PATCH] Prettify output of debug_dwarf_die Tom Tromey
@ 2024-04-02  6:56 ` Richard Biener
  0 siblings, 0 replies; 2+ messages in thread
From: Richard Biener @ 2024-04-02  6:56 UTC (permalink / raw)
  To: Tom Tromey; +Cc: gcc-patches

On Thu, Mar 28, 2024 at 8:35 PM Tom Tromey <tromey@adacore.com> wrote:
>
> When debugging gcc, I tried calling debug_dwarf_die and I saw this
> output:
>
>       DW_AT_location: location descriptor:
>         (0x7fffe9c2e870) DW_OP_dup 0, 0
>         (0x7fffe9c2e8c0) DW_OP_bra location descriptor (0x7fffe9c2e640)
> , 0
>         (0x7fffe9c2e820) DW_OP_lit4 4, 0
>         (0x7fffe9c2e910) DW_OP_skip location descriptor (0x7fffe9c2e9b0)
> , 0
>         (0x7fffe9c2e640) DW_OP_dup 0, 0
>
> I think those ", 0" should not appear on their own lines.  The issue
> seems to be that print_dw_val should not generally emit a newline,
> except when recursing.

OK.

> gcc/ChangeLog
>
>         * dwarf2out.cc (print_dw_val) <dw_val_class_loc>: Don't
>         print newline when not recursing.
> ---
>  gcc/dwarf2out.cc | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc
> index 8f18bc4fe64..1b0e8b5a5b2 100644
> --- a/gcc/dwarf2out.cc
> +++ b/gcc/dwarf2out.cc
> @@ -6651,7 +6651,7 @@ print_dw_val (dw_val_node *val, bool recurse, FILE *outfile)
>      case dw_val_class_loc:
>        fprintf (outfile, "location descriptor");
>        if (val->v.val_loc == NULL)
> -       fprintf (outfile, " -> <null>\n");
> +       fprintf (outfile, " -> <null>");
>        else if (recurse)
>         {
>           fprintf (outfile, ":\n");
> @@ -6662,9 +6662,9 @@ print_dw_val (dw_val_node *val, bool recurse, FILE *outfile)
>        else
>         {
>           if (flag_dump_noaddr || flag_dump_unnumbered)
> -           fprintf (outfile, " #\n");
> +           fprintf (outfile, " #");
>           else
> -           fprintf (outfile, " (%p)\n", (void *) val->v.val_loc);
> +           fprintf (outfile, " (%p)", (void *) val->v.val_loc);
>         }
>        break;
>      case dw_val_class_loc_list:
> --
> 2.43.0
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-04-02  6:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-28 19:34 [PATCH] Prettify output of debug_dwarf_die Tom Tromey
2024-04-02  6:56 ` Richard Biener

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).