Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Daniel Berlin <dan@dberlin.org>
To: Petr Sorfa <petrs@caldera.com>
Cc: Daniel Jacobowitz <drow@mvista.com>, <gdb@sources.redhat.com>
Subject: Re: Upcoming DWARF 3 and FORTRAN95 patches for 5.1.1 or 5.2?
Date: Thu, 17 Jan 2002 16:12:00 -0000	[thread overview]
Message-ID: <Pine.LNX.4.44.0201171900010.21196-100000@dberlin.org> (raw)
In-Reply-To: <3C4760B2.53889E14@caldera.com>

On Thu, 17 Jan 2002, Petr Sorfa wrote:

> Hi,
> 
> The DWARF3 stuff which I plan to release soonist is the run-time
> evaluation of DWARF3 DW_OP_* codes.

We had a discussion about how to do this a while ago.  I *hope* you didn't 
just make it dwarf2/3 specific, and add some kind of dwarf2 locexpr 
location type to the possible types of locations, and just keep dwarf2 
blocks around to evaluate.
This was deemed to be the wrong way to do it.
Instead, it was decided that it should be converted to a gdb specific 
language locexpr (which is, essentially, dwarf3 minus a few things that we 
don't need because we don't care about saving a few bytes here or there).
This is so we aren't tied down to the standard, and so people don't make 
assumptions about the format of the bytecode.

Don't look at meef, i thought, and think, that it is a horribly bad idea, 
as it adds another layer with no real reason for doing so.
I'm just telling you what the general consensus was.

> DW_OP_push_object_address with DW_OP_* logical operators PLUS all the
> existing DW_OP* functionality.
> 
> Basically the current implementation attaches DWARF info to struct type,
> which gets evaluated at runtime when dealing with:
> 
> DW_AT_associated
> DW_AT_allocated
> DW_AT_data_location
> DW_AT_stride
> DW_AT_lower_bound
> DW_AT_upper_bound
> (some others may follow)
> 
> Most of this work is to support FORTRAN95 stuff, but should help other
> languages that generate dynamic arrays with variable boundaries.
> 
> As I stated before, the current implementation just attaches the DWARF
> data block to the struct type for simplicity. I guess there could be
> some kind of internal representation of the functionality as well, but
> some of the DW_OP_* sequences are pretty hairy so attaching the DWARF
> data block and interpreting it on the fly seems OK to me.
This is exactly what i was told not to do.
In fact, I had code to do exactly what you say over a year ago, 
submitted it, and that is when the discussion started.
I have a patch to implement a gdb specific version of the dwarf2 bytecode 
(which was deemed the "right" solution) at 
http://sources.redhat.com/ml/gdb-patches/2001-06/msg00441.html.

--Dan


  reply	other threads:[~2002-01-18  0:12 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-17 14:08 Petr Sorfa
2002-01-17 14:56 ` Daniel Jacobowitz
2002-01-17 15:07   ` Daniel Berlin
2002-01-17 15:10     ` Daniel Jacobowitz
2002-01-17 15:46       ` Petr Sorfa
2002-01-17 16:12         ` Daniel Berlin [this message]
2002-01-18  7:08           ` Petr Sorfa
2002-01-18  8:09             ` Petr Sorfa
2002-01-18 12:09               ` Daniel Berlin
2002-01-18 11:46                 ` Petr Sorfa
2002-01-18 12:10                   ` Daniel Berlin
2002-01-23 15:41                     ` Jim Blandy
2002-01-23 16:18                       ` Daniel Berlin
2002-01-23 16:36                         ` Andrew Cagney
2002-01-23 17:10                           ` Daniel Berlin
2002-01-23 16:38                       ` Daniel Jacobowitz
2002-01-23 17:19                         ` Daniel Berlin
2002-02-01 13:44                       ` Jim Blandy
2002-02-04  9:13                         ` Daniel Berlin
2002-02-04 17:13                           ` Andrew Cagney
2002-02-15 12:47                           ` Jim Blandy
2002-02-04 16:29                         ` Andrew Cagney
2002-01-17 15:20   ` 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=Pine.LNX.4.44.0201171900010.21196-100000@dberlin.org \
    --to=dan@dberlin.org \
    --cc=drow@mvista.com \
    --cc=gdb@sources.redhat.com \
    --cc=petrs@caldera.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