Don't assume the first entry on dld's library list is the main
program. Don't load the same library more than once and don't
consider the main program a shared library.
(som_solib_sharedlibrary_command): New function
(_initialize_som_solib): Add "sharedlibrary" command.
mentor-7135
text and data symbols.
(som_symfile_offsets): If objfile is a shared library, then get
text and data offsets from the shared library structures.
* somsolib.c (som_solib_add): Copy the bfd pointer from the
objfile rather than reopening the file again.
(som_solib_section_offsets): New function.
* somsolib.h (som_solib_section_offsets): Declare.
* somsolib.h (som_solib_get_got_by_pc): Add extern decl.
* hppa-tdep.c (hppa_fix_call_dummy): Handle case where FUN is the
function's export stub or real address in a shared library.
(som_solib_add): Immediately return if $SHLIB_INFO$ sections does
not exist or has size zero. Slightly simplify error handling.
Keep an internal list of all the loaded shared libraries and
various tidbits of information about the loaded shared libraries.
Build section tables for each loaded shared library and add those
tables to the core target if necessary.
(som_solib_create_inferior_hook): Force re-reading of shared
libraries at exec time.
(som_sharedlibrary_info_command): New function for dumping
information about the currently loaded shared libraries.
(_initialize_som_solib): New function.
* somsolib.c (som_solib_add): Check the value of __dld_flags, if
it indicates __dld_list is not valid return an error. If it
indicates that libraries were not mapped privately, issue a
warning.
single frame backtracing within the library only. Only works when
using the HPUX 9 dynamic linker. More functionality to be added
soon.
* somsolib.c, somsolib.h: New files.
* Makefile.in (HFILES_NO_SRCDIR): Add somsolib.h
(ALLDEPFILES): Add somsolib.c.
(somsolib.o): Add some dependencies.
* mpw-make.in (HFILES_NO_SRCDIR): Add somsolib.h
(ALLDEPFILES): Add somsolib.c.
(somsolib.o): Add some dependencies.
* somread.c (som_symtab_read): Accept multiple section offsets.
All callers changed. Adjust all text symbols with the first
section offset.
* symfile.c (find_lowest_section): Enable this function. Add some
tie-breaking logic when sections have the same vma.
(syms_from_objfile): Use find_lowest_section rather than looking
for ".text" by name. Relax warning to only warn if the lowest
section is not a code section.
* config/pa/{hppabsd.mh, hppahpux.mh} (NATDEPFILES): Add somsolib.o
* config/pa/{nm-hppab.h, nm-hppah.h}: Include somsolib.h.