Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Andrew Cagney <cagney@gnu.org>
To: Mark Kettenis <kettenis@chello.nl>
Cc: drow@mvista.com, gdb-patches@sources.redhat.com
Subject: Re: [PATCH/RFC] Per-architecture DWARF CFI register state initialization hooks
Date: Sun, 15 Feb 2004 16:04:00 -0000	[thread overview]
Message-ID: <402F988A.1080508@gnu.org> (raw)
In-Reply-To: <200402151530.i1FFUaht009031@elgar.kettenis.dyndns.org>

>    Date: Sat, 07 Feb 2004 18:48:47 -0500
>    From: Andrew Cagney <cagney@gnu.org>
> 
>    > Here's my proposal for the per-architecture DWARF CFI register state
>    > initialization hooks needed for S/390, and others.  This is a RFC,
>    > since I'm not entirely confident whether my approach is acceptable.  I
>    > chose to implement this using per-architecture data instead of adding
>    > a function to the architecture vector.  I think it is cleaner since it
>    > keeps things localized and modular, and the architecture vector is big
>    > enough as it stands.
> 
>    Yes.  Technical nit though - I think it is still better to have a local 
>    data struct and store the value in there.
> 
> I'm not sure what your idea is here.  Is it that you want me to use a
> data structure that would be allocated by the dwarf2-frame.c module
> such that I'd only need a single per-arch data key for the entire
> dwarf2-frame.c module?

Yes, just this:

> static struct gdbarch_data *frame_base_data;
> 
> struct frame_base_table
> {
>   frame_base_sniffer_ftype **sniffer;
....
> };
> 
> static struct frame_base_table *
> frame_base_table (struct gdbarch *gdbarch)
> {
>   struct frame_base_table *table = gdbarch_data (gdbarch, frame_base_data);
>   ...
>   return table;
> }

i.e, put the function inside a struct, instead of storing the function 
directly in that per-arch data pointer.

It's more consistent with:
http://sources.redhat.com/gdb/current/onlinedocs/gdbint_13.html#SEC114
but hmm, that's out of date, sigh.  Instead of free, memory is obtained 
using gdbarch_obstack_zalloc.

 > Or do you want the architecture to allocate
> and initialize the structure?  The latter would mean more work for the
> architecture; if you want to override a single member of the structure
> you'd have to fill in all the details.  I don't really like that.
> 
>    From: Daniel Jacobowitz <drow@mvista.com>
>    Date: Sat, 7 Feb 2004 18:03:30 -0500
> 
>    Hmm, I do.  You're adding a per-architecture data item which is a
>    function pointer, and what amounts to the rest of what gdbarch.sh would
>    generate (wrapper functions, default initialization.  I'd rather you
>    just used gdbarch.sh.
> 
> 
> What about Daniels objections that I'm hand-coding much what
> gdbarch.sh already does?  I'm feeling that the modularity is worth it,
> but how do you feel about that?

No. Yes.  Using gdbarch, and loosing that modularity, is far too high a 
price to pay.

Andrew



  reply	other threads:[~2004-02-15 16:04 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-07 22:38 Mark Kettenis
2004-02-07 23:03 ` Daniel Jacobowitz
2004-02-07 23:48 ` Andrew Cagney
2004-02-15 15:31   ` Mark Kettenis
2004-02-15 16:04     ` Andrew Cagney [this message]
2004-02-15 18:09       ` Daniel Jacobowitz
2004-02-15 19:49         ` Andrew Cagney
2004-02-15 20:37           ` Daniel Jacobowitz
2004-02-15 21:37             ` Andrew Cagney
2004-02-15 22:54               ` Daniel Jacobowitz
2004-02-15 21:31       ` Mark Kettenis
2004-02-08  1:01 ` Ulrich Weigand
2004-02-16  1:28 Ulrich Weigand
2004-02-16  1:56 ` Daniel Jacobowitz
2004-02-16 13:01   ` Ulrich Weigand
2004-02-16 19:47     ` Daniel Jacobowitz
2004-02-16 20:50       ` Andrew Cagney
2004-02-16 20:55         ` Andrew Cagney
2004-02-18 16:59           ` Mark Kettenis
2004-02-18 18:40             ` Andrew Cagney

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=402F988A.1080508@gnu.org \
    --to=cagney@gnu.org \
    --cc=drow@mvista.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=kettenis@chello.nl \
    /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