From: Daniel Berlin <dan@dberlin.org>
To: Jim Blandy <jimb@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH] Let dwarf2 CFI's execute_stack_op be used outside of CFI
Date: Tue, 26 Mar 2002 19:17:00 -0000 [thread overview]
Message-ID: <Pine.LNX.4.44.0203262201390.13327-100000@dberlin.org> (raw)
In-Reply-To: <np8z8esyob.fsf@zwingli.cygnus.com>
On 26 Mar 2002, Jim Blandy wrote:
>
> Daniel Berlin <dan@dberlin.org> writes:
> > On 26 Mar 2002, Jim Blandy wrote:
> > > Actually, Daniel, I'm sorry --- I've re-read the change more
> > > carefully, and I've gotten more confused than I was before.
> > >
> > > You've changed the Dwarf 2 location expression evaluator to consult
> > > the current register values --- not the values of the registers with
> > > respect to a specific stack frame. I can't think of any situations in
> > > which this the correct behavior. Can you explain more about the
> > > contexts in which this change is useful? It seems to me that it's
> > > wrong in most of the cases I can think of. It really needs to take a
> > > frame argument, or at the very least, read registers from the selected
> > > frame (although that's kind of gross and global-variable-ish).
> >
> > Whoops.
> > You're right.
> > I must have merged it while on crack or something.
> > I *meant* to add the frame argument, and only require *either* the
> > context argument (Which is what it currently takes, a CFA context) or the
> > frame, but it looks like I messed up.
> >
> > What it *should* look like is closer to the one from the WIP i sent. It
> > should call get_saved_register with the frame argument if the context is
> > null, or get_reg with the context argument if the context is not null.
>
> Okay --- that makes more sense.
>
> I started reviewing the WIP, but I got interrupted. Do you want to
> extract something from that and post it as a non-WIP patch?
I'm not sure. Let me explain:
As it stands, the evaluator in the WIP requires a few extra arguments and
returns a struct value, while the the one in dwarf2cfi does not.
The extra arguments are required because we need to keep track of whether
the result is an lval or not, and whether the result is in memory or a
register, so we can set the approriate flags on the value struct
But i'm not sure this is the right approach.
This is why the first patch was meant only to make it external, take
either a dwarf2 cfa context, or a struct frame info, and do the right
thing with either, in terms of handing back a location.
I didn't want to deal with the issue of whether we want to return a struct
value, and the issue of how best to keep track of whether it's in memory
or a register, without getting an opinion first.
So, in short, if the approach taken by the WIP evaluator is the right way
to deal with the issue of needing to be able to set the right flags on a
struct value, than sure, i'll take that part out, and merge it.
Otherwise, I'd rather make sure the version in the repository is
changed the right way, merging in the other direction to the WIP.
--Dan
next prev parent reply other threads:[~2002-03-27 3:17 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-25 15:57 Daniel Berlin
2002-03-25 16:07 ` Andrew Cagney
2002-03-25 16:21 ` Daniel Berlin
2002-03-26 7:52 ` Daniel Berlin
2002-03-26 9:49 ` Andrew Cagney
2002-03-26 9:52 ` Daniel Berlin
2002-03-26 11:09 ` Daniel Berlin
2002-03-26 12:06 ` Andreas Jaeger
2002-03-26 17:59 ` Daniel Berlin
2002-03-27 0:09 ` Andreas Jaeger
2002-03-27 6:24 ` Andrew Cagney
2002-03-27 6:32 ` Andreas Jaeger
2002-03-26 18:06 ` Andrew Cagney
2002-03-27 20:56 ` Richard Stallman
2002-03-26 9:27 ` Andrew Cagney
2002-03-26 9:49 ` Daniel Berlin
2002-03-26 11:59 ` Jim Blandy
2002-03-26 13:42 ` Jim Blandy
2002-03-26 14:43 ` Daniel Berlin
2002-03-26 14:53 ` Andrew Cagney
2002-03-26 15:26 ` Daniel Berlin
2002-03-26 17:09 ` Andrew Cagney
2002-03-26 17:18 ` Daniel Berlin
2002-03-26 18:12 ` Andrew Cagney
2002-03-26 18:19 ` Andrew Cagney
2002-03-26 18:26 ` Daniel Berlin
2002-03-26 15:21 ` Jim Blandy
2002-03-26 19:17 ` Daniel Berlin [this message]
2002-03-28 13:12 ` Jim Blandy
2002-03-28 13:32 ` Daniel Berlin
2002-03-28 15:31 ` Jim Blandy
2002-03-29 17:06 ` Daniel Berlin
2002-04-01 11:00 ` Jim Blandy
2002-04-02 6:59 ` Daniel Berlin
2002-04-02 11:28 ` Jim Blandy
2002-04-02 11:31 ` Daniel Jacobowitz
2002-04-02 11:46 ` Daniel Berlin
2002-04-02 11:57 ` Daniel Jacobowitz
2002-04-02 13:12 ` Daniel Berlin
2002-04-02 13:15 ` Daniel Jacobowitz
2002-04-02 11:47 ` Daniel Berlin
2002-04-02 18:55 ` Daniel Berlin
2002-04-02 21:02 ` Daniel Jacobowitz
2002-04-03 13:05 ` Jim Blandy
2002-04-03 14:12 ` Daniel Berlin
2002-04-03 12:58 ` Stan Shebs
2002-04-03 18:59 ` Andrew Cagney
2002-04-02 6:50 ` Petr Sorfa
2002-04-02 6:56 ` Daniel Berlin
2002-04-02 8:19 ` [PATCH] Let dwarf2 CFI's execute_stack_op be used outside ofCFI Petr Sorfa
2002-04-04 12:24 ` [PATCH] Let dwarf2 CFI's execute_stack_op be used outside of CFI Daniel Berlin
2002-04-04 12:30 ` Daniel Jacobowitz
2002-04-04 13:11 ` Jim Blandy
2002-03-28 15:03 ` Andrew Cagney
2002-03-27 7:50 ` Petr Sorfa
2002-03-27 8:09 ` Daniel Berlin
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=Pine.LNX.4.44.0203262201390.13327-100000@dberlin.org \
--to=dan@dberlin.org \
--cc=gdb-patches@sources.redhat.com \
--cc=jimb@redhat.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