This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libbfd question...


   Date: Sat, 27 May 2000 02:07:10 -0700 (PDT)
   From: Chris Lattner <sabre@skylab.org>

   It appears that minisymbols are the way to go, but the documentation I
   have is not very thorough or complete in that area.  Right now anyway, I'm
   looking at the 'nm' source, because it's a start.  I'm wondering, however,
   what the 'dynamic' option to bfd_read_minisymbols is and means...

It means to read the dynamic symbol table rather than the normal
table.  For most object file formats which support dynamic linking,
shared libraries and dynamically linked executables have two symbols
tables: the ordinary one, and one which is specifically for the
dynamic linker.

   Also, given a set of minisymbols, is there a better way to find a
   particular address or symbol name in the table than just running through,
   converting each to a symbol, then comparing?  Hopefully, something
   nonlinear?  (I know I can use symbol tables (non-mini) for better
   performance...)

No, there isn't.

The advantage of minisymbols is that they require less memory.  If you
don't anticipate running your program on truly huge executables, then
it will be faster to use ordinary symbols.  I wrote minisymbols
because nm and objdump would crash on some gargantuan C++ executables,
particularly when using a.out in which all the debugging information
was in the symbol table.

Ian

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]