Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Paul Hilfinger <hilfingr@gnat.com>
To: jimb@redhat.com
Cc: drow@false.org, gdb-patches@sources.redhat.com
Subject: Re: [RFA] Introduce notion of "search name"
Date: Sat, 03 Apr 2004 12:04:00 -0000	[thread overview]
Message-ID: <20040403120403.0A9C4F2ADF@nile.gnat.com> (raw)
In-Reply-To: <vt21xn66mpo.fsf@zenia.home> (message from Jim Blandy on 02 Apr 2004 17:26:11 -0500)


> I meant lazily demangling the names.  I was wondering if the
> demangling could be done at minsym reading time, or psymtab->symtab
> conversion time, as the other languages do, when there is an

I'd really be very reluctant to do this; it vitiates the entire point
of this "search name" strategy, which was to avoid the storage
requirements of demangled names.  We adopted that strategy quite a few years
ago, due in part to the fact that ACT had customers with LOTS of symbols
and this was a way to save a good deal of symbol space.  

(Side comment: Indeed, until I started to make changes for the public tree,
the ACT version of GDB never even cached demangled names at all, but
instead demangled on the fly into a static area.  One of you (Daniel
or David) objected that this was dangerous, and that we should make
permanent copies of demangled names, which is what gave rise to this
whole caching problem.  Oddly enough, we had never enountered
difficulties as a result of the short lifetimes of our demangled symbols:
it was just a contingent property of GDB that such persistance wasn't
needed.  Nevertheless, I had to agree that it is better not to
rely on a property that is not guaranteed.) 

Do you really object to our simply making permanent copies of these
names as needed?  (I'm perfectly happy to ditch the kludgy
objfile-finding hack.) You can't expect to save any space by
reclaiming these demangled names space when you reload the symbol
file, because (as I argued before) the set of demangled names
generally doesn't change much in such cases, and we are "interning"
the demangled symbols, so that multiple computations of the same
demangled symbol don't increase space.  This particular choice of name
storage is confined to the Ada module (the symbol table module doesn't
apply free to names stored in symbols, partial symbols, or minimal
symbols, so it doesn't care if one them has a longer than necessary
lifetime).

Paul Hilfinger


  reply	other threads:[~2004-04-03 12:04 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-03 19:15 Paul Hilfinger
2004-03-19  0:09 ` David Carlton
2004-03-03 19:26   ` David Carlton
2004-03-19  0:09   ` Paul Hilfinger
2004-03-04  8:45     ` Paul Hilfinger
2004-03-19  0:09 ` Paul Hilfinger
2004-03-19  0:09 ` Daniel Jacobowitz
2004-03-05  3:59   ` Daniel Jacobowitz
2004-03-05 10:39   ` Paul Hilfinger
2004-03-19  0:09     ` Paul Hilfinger
2004-03-31 22:12     ` Daniel Jacobowitz
2004-04-01 14:53       ` Jim Blandy
2004-04-01 15:00         ` Daniel Jacobowitz
2004-04-01 15:21           ` Jim Blandy
2004-04-02  9:30             ` Paul Hilfinger
2004-04-02 22:27               ` Jim Blandy
2004-04-03 12:04                 ` Paul Hilfinger [this message]
2004-04-06 14:37                   ` Jim Blandy
2004-04-02  9:33         ` Paul Hilfinger
2004-04-02  8:29       ` Paul Hilfinger
2004-04-09 22:40         ` Daniel Jacobowitz
2004-04-12  8:22           ` Paul Hilfinger
2004-04-16  4:11             ` Jim Blandy
2004-04-29 10:37               ` Paul Hilfinger
     [not found]                 ` <20040429211458.GB27523@nevyn.them.org>
     [not found]                   ` <vt2n04umj8b.fsf@zenia.home>
     [not found]                     ` <20040430084538.ECDE1F2E1C@nile.gnat.com>
     [not found]                       ` <20040430134955.GA15786@nevyn.them.org>
2004-05-03  8:49                         ` Paul Hilfinger
2004-05-11 19:48                           ` Daniel Jacobowitz
2004-05-12 11:00                             ` Paul Hilfinger
2004-05-12 13:27                               ` Daniel Jacobowitz
2004-05-12 14:14                                 ` Andrew Cagney
2004-05-12 14:23                                   ` Daniel Jacobowitz
2004-05-12 15:11                                     ` Andrew Cagney
2004-05-12 16:59                                       ` Joel Brobecker
2004-05-13 14:29                                         ` Andrew Cagney
2004-05-13  9:30                                   ` Paul Hilfinger
2004-05-13 13:49                                     ` Daniel Jacobowitz
2004-05-18 21:59                                     ` Jim Blandy
2004-05-19  9:55                                       ` Paul Hilfinger
2004-05-19 13:00                                         ` Daniel Jacobowitz
2004-05-19 15:21                                       ` Andrew Cagney
2004-05-20 10:18                                         ` Abstracting "name" Paul Hilfinger
2004-05-21 19:10                                           ` Andrew Cagney
2004-05-21 20:01                                             ` Jim Blandy
2004-03-30  9:37 [RFA] Introduce notion of "search name" Paul Hilfinger

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=20040403120403.0A9C4F2ADF@nile.gnat.com \
    --to=hilfingr@gnat.com \
    --cc=drow@false.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