Add section table to objfile struct. Use it for find_pc_section.

* objfiles.c (add_to_objfile_sections,
  build_objfile_section_table, find_pc_section): new functions.
  (allocate_objfile): build section table.
* objfiles.h (struct obj_section): new structure.
  (struct objfile): add section table.
  (find_pc_section): new prototype.
* solib.[ch] (find_pc_section_from_so_list): removed.
* sparc-tdep.c: include objfiles.h for find_pc_section.  include
  symfile.h for objfiles.h.
  (in_solib_trampoline): adjusted for new find_pc_section
  prototype.  Removed BAD_RICH_HACK ifdefs.
* symfile.c (syms_from_objfile): offset objfile sections.
  (find_pc_section): removed.  Also removed BAD_RICH_HACK ifdefs.
* symfile.h (find_pc_section): prototype removed.  Also fixed
  comment typo NUL -> NULL.
* target.[ch] (find_pc_section_from_targets): removed.
* config/sparc/tm-sun4sol2.h (BAD_RICHH_HACK): removed.
This commit is contained in:
K. Richard Pixley
1993-04-07 07:04:26 +00:00
parent 07861607f5
commit 73d0fc7820
6 changed files with 118 additions and 28 deletions

View File

@ -40,9 +40,9 @@ struct sym_fns {
/* counts how many bytes of sym_name should be checked against the
BFD target type of the file being read. If an exact match is
desired, specify the number of characters in sym_name plus 1 for the
NUL. If a prefix match is desired, specify the number of characters in
sym_name. */
desired, specify the number of characters in sym_name plus 1 for
the NULL. If a prefix match is desired, specify the number of
characters in sym_name. */
int sym_namelen;
@ -133,22 +133,7 @@ extend_psymbol_list PARAMS ((struct psymbol_allocation_list *,
PSYMBOL_CLASS (psym) = (CLASS); \
VT (psym) = (VALUE); \
SYMBOL_LANGUAGE (psym) = (LANGUAGE); \
if ((LANGUAGE) == language_cplus) \
{ \
demangled_name = \
cplus_demangle (SYMBOL_NAME (psym), DMGL_PARAMS | DMGL_ANSI); \
if (demangled_name == NULL) \
{ \
SYMBOL_DEMANGLED_NAME (psym) = NULL; \
} \
else \
{ \
SYMBOL_DEMANGLED_NAME (psym) = \
obsavestring (demangled_name, strlen (demangled_name), \
&objfile->psymbol_obstack); \
free (demangled_name); \
} \
} \
SYMBOL_INIT_DEMANGLED_NAME (psym, &objfile->psymbol_obstack); \
} while (0);
/* Add a symbol with an integer value to a psymtab. */