From: Jim Blandy <jimb@zwingli.cygnus.com>
To: Petr Sorfa <petrs@caldera.com>
Cc: Daniel Berlin <dan@dberlin.org>,
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: Wed, 23 Jan 2002 15:41:00 -0000 [thread overview]
Message-ID: <npu1tcbply.fsf@zwingli.cygnus.com> (raw)
In-Reply-To: <Pine.LNX.4.44.0201181449580.25029-100000@dberlin.org>
Daniel B. submitted patches to allow GDB to handle arbitrary Dwarf 2
location expressions. However, the initial patch simply extended the
functions that care about symbol locations (like read_var_value, for
example) with another case that evaluated a Dwarf 2 location
expression.
However, I felt it was important to keep the core of GDB independent
of any particular debug representation. Daniel B. was very
accommodating, and revised the patch to introduce a new, "neutral"
expression representation, and translate Dwarf 2 location expressions
into that form. I think I had some concerns about the exact way it
had been done, but I don't remember --- in general it was fine. I
don't know what happened to the patch, but I don't think it ever got
approved.
But while I feel pretty good about the "keep GDB's core independent of
the debug formats" rule, I felt pretty bad about introducing what
amounted to an exact duplicate of the Dwarf 2 location list
interpreter, with the constants renamed. Surely that wasn't
the right thing.
Another approach occurred to me just now that I wish I had thought of
when Daniel B.'s patch first appeared. If the core of GDB could
define a structure of functions (resembling `struct cp_abi_ops',
`struct target_ops', etc.) that allowed a debug reader to provide its
own set of functions for finding variables, describing their locations
in English, and everything else we do with `enum address_class' now,
then that would make it easy and clean to use straight Dwarf 2
location expressions, without any translation into an allegedly
"neutral" representation, and without contaminating the core of GDB.
(This would also allow us to move some odd HP-UX-specific stuff like
LOC_THREAD_LOCAL_STATIC out of the GDB core and into an HP-specific
module.)
next prev parent reply other threads:[~2002-01-23 23:41 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
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 [this message]
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=npu1tcbply.fsf@zwingli.cygnus.com \
--to=jimb@zwingli.cygnus.com \
--cc=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