Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@mvista.com>
To: Andrew Cagney <ac131313@redhat.com>
Cc: binutils@sources.redhat.com, gdb@sources.redhat.com
Subject: Re: A gdb+bfd string pool?
Date: Fri, 31 Oct 2003 15:51:00 -0000	[thread overview]
Message-ID: <20031031155102.GA1102@nevyn.them.org> (raw)
In-Reply-To: <3FA283A7.7080706@redhat.com>

On Fri, Oct 31, 2003 at 10:45:43AM -0500, Andrew Cagney wrote:
> >On Fri, Oct 31, 2003 at 10:15:39AM -0500, Andrew Cagney wrote:
> >
> >>Hello,
> >>
> >>GDB, to contain its run-time size is, uses gdb/bcaches where ...
> >>/* A bcache is a data structure for factoring out duplication in
> >>   read-only structures.  You give the bcache some string of bytes S.
> >>   If the bcache already contains a copy of S, it hands you back a
> >>   pointer to its copy.  Otherwise, it makes a fresh copy of S, and
> >>   hands you back a pointer to that.  In either case, you can throw
> >>   away your copy of S, and use the bcache's.
> >>One notable feature of this mechanism is that it lets you eliminate 
> >>string equality comparisons - equal bcache values implies equal strings.
> >>
> >>Now, if I'm reading the BFD elf reader correctly, elf-strtab implements 
> >>a similar mechanism (But I think it is currently only used by the 
> >>linker?).
> >>
> >>Should/could BFD export a string pool that GDB could use and then use 
> >>that for any slurped symbol names?
> >
> >
> >Well, if so, it should go in libiberty - and in fact, is the hash table
> >in libiberty in any way unsuited to replace bcache?
> 
> The interface or the implementation?  The bcache interface is focused 
> and simple (something that can't be said for that hash table).  The 
> hashtab could certainly be used in the implementation (as elf-strtab did).

So does gdb/symtab.c.

> Anyway, back to the question.  Does a [global] common pool make sense 
> for BFD?

Oh, you meant an _instance_, not a data structure.  Sorry.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


  reply	other threads:[~2003-10-31 15:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-31 15:15 Andrew Cagney
2003-10-31 15:19 ` Daniel Jacobowitz
2003-10-31 15:45   ` Andrew Cagney
2003-10-31 15:51     ` Daniel Jacobowitz [this message]
2003-10-31 17:29       ` Andrew Cagney
2003-10-31 17:36         ` Jakub Jelinek
2003-10-31 17:45           ` Andrew Cagney
2003-11-03 17:25 ` David Carlton
2003-11-04  8:16   ` Joel Brobecker
2003-11-04 16:31     ` Andrew Cagney
2003-11-04 23:51   ` 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=20031031155102.GA1102@nevyn.them.org \
    --to=drow@mvista.com \
    --cc=ac131313@redhat.com \
    --cc=binutils@sources.redhat.com \
    --cc=gdb@sources.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