Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
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



  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