public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Simon Marchi <simon.marchi@polymtl.ca>
To: Andrew Burgess <andrew.burgess@embecosm.com>, gdb-patches@sourceware.org
Subject: Re: [PATCH 3/4] gdb: add new -group-by-binary flag to info sources command
Date: Thu, 13 May 2021 11:05:44 -0400	[thread overview]
Message-ID: <5f7a72f3-a352-c107-4d10-3fadb7ecee38@polymtl.ca> (raw)
In-Reply-To: <760d52a0ea6ab8c2195d71feea794f0bec70a163.1619456691.git.andrew.burgess@embecosm.com>

On 2021-04-26 1:07 p.m., Andrew Burgess wrote:
> Currently the 'info sources' command lists all of the known source
> files together, regardless of their source, e.g. here is a session
> debugging a test application that makes use of a shared library:
> 
>   (gdb) info sources
>   Source files for which symbols have been read in:
> 
>   /tmp/info-sources/test.c, /usr/include/stdc-predef.h,
>   /tmp/info-sources/header.h, /tmp/info-sources/helper.c
> 
>   Source files for which symbols will be read in on demand:
> 
>   (gdb)
> 
> In this commit I add a new flag to the 'info sources' command,
> '-group-by-binary'.  When this flag is provided the results are
> grouped by the binary file that uses that source file.  Here's the
> same session using the new flag:
> 
>   (gdb) info sources -group-by-binary
>   /tmp/info-sources/test.x:
> 
>   /tmp/info-sources/test.c, /usr/include/stdc-predef.h,
>   /tmp/info-sources/header.h
> 
>   /lib64/ld-linux-x86-64.so.2:
>   (Full debug information has not yet been read for this file.)
> 
>   system-supplied DSO at 0x7ffff7fcf000:
>   (Full debug information has not yet been read for this file.)
> 
>   /tmp/info-sources/libhelper.so:
> 
>   /tmp/info-sources/helper.c, /usr/include/stdc-predef.h,
>   /tmp/info-sources/header.h
> 
>   /lib64/libc.so.6:
>   (Full debug information has not yet been read for this file.)
> 
>   (gdb)
> 
> Notice that in the new output some source files are repeated,
> e.g. /tmp/info-sources/header.h, as multiple binaries use this source
> file.
> 
> All of the existing regular expression based filtering that exists for
> 'info sources' still works with the new option.

In my opinion the new output is just better, more structured.  Do we
even need to hide it behind an option?  Can we just... change it and
that's it?  I'd lke if we didn't have to keep the extra complexity
unnecessarily.

Simon

  parent reply	other threads:[~2021-05-13 15:05 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-26 17:06 [PATCH 0/4] New option for 'info sources', also better MI support Andrew Burgess
2021-04-26 17:07 ` [PATCH 1/4] gdb: add new function quick_symbol_functions::has_unexpanded_symbols Andrew Burgess
2021-05-13 14:38   ` Simon Marchi
2021-05-13 17:29     ` Tom Tromey
2021-05-13 14:46   ` Simon Marchi
2021-04-26 17:07 ` [PATCH 2/4] gdb: make struct output_source_filename_data more C++ like Andrew Burgess
2021-05-13 14:58   ` Simon Marchi
2021-04-26 17:07 ` [PATCH 3/4] gdb: add new -group-by-binary flag to info sources command Andrew Burgess
2021-04-26 17:34   ` Eli Zaretskii
2021-05-13 15:05   ` Simon Marchi [this message]
2021-05-15  8:45     ` Andrew Burgess
2021-05-15 13:19       ` Simon Marchi
2021-04-26 17:07 ` [PATCH 4/4] gdb/mi: extend -file-list-exec-source-files command Andrew Burgess
2021-04-26 17:39   ` Eli Zaretskii
2021-05-13 15:47   ` Simon Marchi
2021-05-13 10:34 ` [PATCH 0/4] New option for 'info sources', also better MI support Andrew Burgess
2021-05-19 11:12 ` [PATCHv2 0/5] "info sources" - group by objfile Andrew Burgess
2021-05-19 11:12   ` [PATCHv2 1/5] gdb: add new function quick_symbol_functions::has_unexpanded_symbols Andrew Burgess
2021-05-19 11:12   ` [PATCHv2 2/5] gdb: make struct output_source_filename_data more C++ like Andrew Burgess
2021-05-19 11:12   ` [PATCHv2 3/5] gdb/mi: add regexp filtering to -file-list-exec-source-files Andrew Burgess
2021-05-19 11:51     ` Eli Zaretskii
2021-05-19 11:12   ` [PATCHv2 4/5] gdb/mi: add new --group-by-objfile flag for -file-list-exec-source-files Andrew Burgess
2021-05-19 11:44     ` Eli Zaretskii
2021-05-19 11:12   ` [PATCHv2 5/5] gdb: change info sources to group results by objfile Andrew Burgess
2021-05-19 11:53     ` Eli Zaretskii
2021-06-03 13:08     ` Simon Marchi
2021-06-03  9:27   ` [PATCHv2 0/5] "info sources" - group " Andrew Burgess
2021-06-03 13:15     ` Simon Marchi
2021-06-07 18:32   ` [PATCHv3 " Andrew Burgess
2021-06-07 18:32     ` [PATCHv3 1/5] gdb: add new function quick_symbol_functions::has_unexpanded_symbols Andrew Burgess
2021-06-07 18:32     ` [PATCHv3 2/5] gdb: make struct output_source_filename_data more C++ like Andrew Burgess
2021-07-05 12:31       ` Tom de Vries
2021-07-26 13:21         ` Andrew Burgess
2021-06-07 18:32     ` [PATCHv3 3/5] gdb/mi: add regexp filtering to -file-list-exec-source-files Andrew Burgess
2021-06-07 18:32     ` [PATCHv3 4/5] gdb/mi: add new --group-by-objfile flag for -file-list-exec-source-files Andrew Burgess
2021-06-07 18:32     ` [PATCHv3 5/5] gdb: change info sources to group results by objfile Andrew Burgess
2021-06-21 12:02     ` PING! Re: [PATCHv3 0/5] "info sources" - group " Andrew Burgess
2021-06-25 20:08       ` Andrew Burgess

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5f7a72f3-a352-c107-4d10-3fadb7ecee38@polymtl.ca \
    --to=simon.marchi@polymtl.ca \
    --cc=andrew.burgess@embecosm.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).