From: Christian Biesinger <cbiesinger@google.com>
To: Kamil Rytarowski <n54@gmx.com>
Cc: gdb-patches <gdb-patches@sourceware.org>
Subject: Re: [PATCH] Rename the read symbol to xread
Date: Tue, 17 Mar 2020 13:59:47 -0500 [thread overview]
Message-ID: <CAPTJ0XGe56JKCOzBcBX8Bkvudk_KEMXdhDKtZdp+_d7enhGEjA@mail.gmail.com> (raw)
In-Reply-To: <4f0eed4e-c649-a901-f0e5-c7dbfe65c8fd@gmx.com>
On Tue, Mar 17, 2020 at 1:02 PM Kamil Rytarowski <n54@gmx.com> wrote:
>
> On 17.03.2020 19:00, Christian Biesinger wrote:
> > On Tue, Mar 17, 2020 at 12:59 PM Kamil Rytarowski <n54@gmx.com> wrote:
> >>
> >> On 17.03.2020 18:51, Christian Biesinger wrote:
> >>> On Tue, Mar 17, 2020 at 7:46 AM Kamil Rytarowski <n54@gmx.com> wrote:
> >>>>
> >>>> This avoids clashes with macro read in the NetBSD headers.
> >>>
> >>> Out of curiosity, what does NetBSD define read to?
> >>>
> >>> I think it would be useful to add a comment saying why this is called xread.
> >>>
> >>
> >> NetBSD ships with SSP (stack smashing protector) support that
> >> conditionally redefines read(2).
> >>
> >> https://github.com/NetBSD/src/blob/trunk/include/ssp/unistd.h#L39
> >
> > Ah thanks.
> >
> >> Is a comment in the commit message enough?
> >
> > Not IMO, that's much harder to find...
> >
>
> Where should I document this? in struct_reg?
I'd put it above the declaration in user_reg, ...
>
> > Christian
> >
> >>> Christian
> >>>
> >>>> ---
> >>>> gdb/user-regs.c | 18 +++++++++---------
> >>>> 1 file changed, 9 insertions(+), 9 deletions(-)
> >>>>
> >>>> diff --git a/gdb/user-regs.c b/gdb/user-regs.c
> >>>> index a232b1eb000..a968a18bc23 100644
> >>>> --- a/gdb/user-regs.c
> >>>> +++ b/gdb/user-regs.c
> >>>> @@ -41,7 +41,7 @@
> >>>> struct user_reg
> >>>> {
> >>>> const char *name;
> >>>> - struct value *(*read) (struct frame_info * frame, const void *baton);
> >>>> + struct value *(*xread) (struct frame_info * frame, const void *baton);
... above this line.
> >>>> const void *baton;
> >>>> struct user_reg *next;
> >>>> };
> >>>> @@ -60,7 +60,7 @@ struct gdb_user_regs
> >>>>
> >>>> static void
> >>>> append_user_reg (struct gdb_user_regs *regs, const char *name,
> >>>> - user_reg_read_ftype *read, const void *baton,
> >>>> + user_reg_read_ftype *xread, const void *baton,
> >>>> struct user_reg *reg)
> >>>> {
> >>>> /* The caller is responsible for allocating memory needed to store
> >>>> @@ -68,7 +68,7 @@ append_user_reg (struct gdb_user_regs *regs, const char *name,
> >>>> register list stored in the common heap or a specific obstack. */
> >>>> gdb_assert (reg != NULL);
> >>>> reg->name = name;
> >>>> - reg->read = read;
> >>>> + reg->xread = xread;
> >>>> reg->baton = baton;
> >>>> reg->next = NULL;
> >>>> (*regs->last) = reg;
> >>>> @@ -82,10 +82,10 @@ static struct gdb_user_regs builtin_user_regs = {
> >>>> };
> >>>>
> >>>> void
> >>>> -user_reg_add_builtin (const char *name, user_reg_read_ftype *read,
> >>>> +user_reg_add_builtin (const char *name, user_reg_read_ftype *xread,
> >>>> const void *baton)
> >>>> {
> >>>> - append_user_reg (&builtin_user_regs, name, read, baton,
> >>>> + append_user_reg (&builtin_user_regs, name, xread, baton,
> >>>> XNEW (struct user_reg));
> >>>> }
> >>>>
> >>>> @@ -103,14 +103,14 @@ user_regs_init (struct gdbarch *gdbarch)
> >>>>
> >>>> regs->last = ®s->first;
> >>>> for (reg = builtin_user_regs.first; reg != NULL; reg = reg->next)
> >>>> - append_user_reg (regs, reg->name, reg->read, reg->baton,
> >>>> + append_user_reg (regs, reg->name, reg->xread, reg->baton,
> >>>> GDBARCH_OBSTACK_ZALLOC (gdbarch, struct user_reg));
> >>>> return regs;
> >>>> }
> >>>>
> >>>> void
> >>>> user_reg_add (struct gdbarch *gdbarch, const char *name,
> >>>> - user_reg_read_ftype *read, const void *baton)
> >>>> + user_reg_read_ftype *xread, const void *baton)
> >>>> {
> >>>> struct gdb_user_regs *regs
> >>>> = (struct gdb_user_regs *) gdbarch_data (gdbarch, user_regs_data);
> >>>> @@ -122,7 +122,7 @@ user_reg_add (struct gdbarch *gdbarch, const char *name,
> >>>> regs = (struct gdb_user_regs *) user_regs_init (gdbarch);
> >>>> deprecated_set_gdbarch_data (gdbarch, user_regs_data, regs);
> >>>> }
> >>>> - append_user_reg (regs, name, read, baton,
> >>>> + append_user_reg (regs, name, xread, baton,
> >>>> GDBARCH_OBSTACK_ZALLOC (gdbarch, struct user_reg));
> >>>> }
> >>>>
> >>>> @@ -214,7 +214,7 @@ value_of_user_reg (int regnum, struct frame_info *frame)
> >>>> struct user_reg *reg = usernum_to_user_reg (gdbarch, regnum - maxregs);
> >>>>
> >>>> gdb_assert (reg != NULL);
> >>>> - return reg->read (frame, reg->baton);
> >>>> + return reg->xread (frame, reg->baton);
> >>>> }
> >>>>
> >>>> static void
> >>>> --
> >>>> 2.25.0
> >>>>
> >>
> >>
>
>
next prev parent reply other threads:[~2020-03-17 19:00 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-17 12:45 Kamil Rytarowski
2020-03-17 17:51 ` Christian Biesinger
2020-03-17 17:58 ` Kamil Rytarowski
2020-03-17 18:00 ` Christian Biesinger
2020-03-17 18:01 ` Kamil Rytarowski
2020-03-17 18:59 ` Christian Biesinger [this message]
2020-03-17 23:57 ` [PATCH v2] " Kamil Rytarowski
2020-03-18 0:43 ` Simon Marchi
2020-03-18 1:01 ` Kamil Rytarowski
2020-03-18 20:51 ` Tom Tromey
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=CAPTJ0XGe56JKCOzBcBX8Bkvudk_KEMXdhDKtZdp+_d7enhGEjA@mail.gmail.com \
--to=cbiesinger@google.com \
--cc=gdb-patches@sourceware.org \
--cc=n54@gmx.com \
/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