public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Andrew Burgess <aburgess@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH] gdb/python: add gdb.Architecture.format_address
Date: Fri, 11 Feb 2022 20:54:44 +0200	[thread overview]
Message-ID: <83leyhs07f.fsf@gnu.org> (raw)
In-Reply-To: <20220211161721.3252422-1-aburgess@redhat.com> (message from Andrew Burgess via Gdb-patches on Fri, 11 Feb 2022 16:17:21 +0000)

> Date: Fri, 11 Feb 2022 16:17:21 +0000
> From: Andrew Burgess via Gdb-patches <gdb-patches@sourceware.org>
> Cc: Andrew Burgess <andrew.burgess@embecosm.com>
> 
> diff --git a/gdb/NEWS b/gdb/NEWS
> index e173d38c3a1..4f4f0c2af6d 100644
> --- a/gdb/NEWS
> +++ b/gdb/NEWS
> @@ -187,6 +187,11 @@ GNU/Linux/LoongArch    loongarch*-*-linux*
>  
>  GNU/Linux/OpenRISC		or1k*-*-linux*
>  
> +  ** New function gdb.Architecture.format_address(ADDRESS), which
> +     takes an address in the currently selected inferior's address
> +     space, and returns a string representing the address.  The format
> +     of the returned string is '0x.... <symbol+offset>'.
> +
>  *** Changes in GDB 11
>  
>  * The 'set disassembler-options' command now supports specifying options
> diff --git a/gdb/doc/python.texi b/gdb/doc/python.texi
> index c1a3f5f2a7e..50443f7b704 100644
> --- a/gdb/doc/python.texi
> +++ b/gdb/doc/python.texi
> @@ -6016,6 +6016,25 @@
>  @code{gdb.Architecture}.
>  @end defun
>  
> +@defun Architecture.format_address (@var{address})
> +Returns @var{address}, an address within the currently selected

Our style is to say "Return", not "Returns".

Also, saying "return ADDRESS" basically misses the main rationale of
this function, I think; see below.

> +inferior's address space, formatted as a string.  When a suitable
> +symbol can be found to associate with @var{address} this will be
> +included in the returned string, formatted like this:
> +
> +@smallexample
> +0x00001042 <symbol+16>
> +@end smallexample
> +
> +If there is no symbol that @value{GDBN} can find to associate with
> +@var{address} then the returned string will just contain
> +@var{address}.
> +
> +If @var{address} is not accessible within the current inferior's
> +address space, this function will still return a string containing
> +@var{address}.
> +@end defun

More generally, I wonder whether the name "format_address" is the best
one we could come up with.  Isn't this the equivalent of "info symbol"
CLI command?  If so, why not call it "address_to_symbol" or somesuch?

This goes back to the documentation: saying that a method takes its
argument and returns it as a string makes the reader wonder why would
we need such a trivial method.  So the documentation should start by
saying that the method returns SYMBOL+OFFSET that corresponds to
ADDRESS, and only mention that it returns ADDRESS as a string as the
fallback, when SYMBOL cannot be found.

Thanks.

  reply	other threads:[~2022-02-11 18:55 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-11 16:17 Andrew Burgess
2022-02-11 18:54 ` Eli Zaretskii [this message]
2022-02-21 17:27   ` Andrew Burgess
2022-02-21 18:02     ` Eli Zaretskii
2022-02-22 13:56       ` Andrew Burgess
2022-02-22 14:48         ` Eli Zaretskii
2022-02-23 14:20           ` Andrew Burgess
2022-03-03 16:49             ` Andrew Burgess
2022-03-03 18:35         ` Craig Blackmore
2022-03-04 10:51           ` Andrew Burgess
2022-03-04 10:50 ` [PATCHv2] " Andrew Burgess
2022-03-04 15:22   ` Simon Marchi
2022-03-07 12:33   ` [PATCHv3] gdb/python: add gdb.format_address function Andrew Burgess
2022-03-21 17:53     ` Andrew Burgess
2022-03-21 18:23     ` Simon Marchi
2022-03-22 13:19       ` Andrew Burgess
2022-03-23 12:14         ` Simon Marchi
2022-03-23 15:30           ` Andrew Burgess
2022-03-28 21:59             ` Simon Marchi
2022-03-29 13:38               ` 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=83leyhs07f.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=aburgess@redhat.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).