* coffread.c (coff_symfile_init): Use set_objfile_data.
(coff_symfile_read): Use DBX_SYMFILE_INFO. * dbxread.c (dbx_objfile_data_key): New global. (dbx_symfile_init): Use set_objfile_data. (dbx_symfile_finish): Don't free deprecated_sym_stab_info. (dbx_free_symfile_info): New function. (coffstab_build_psymtabs, elfstab_build_psymtabs): Use DBX_SYMFILE_INFO. (stabsect_build_psymtabs): Use set_objfile_data. (_initialize_dbxreadb): Initialize dbx_objfile_data_key. * elfread.c (elf_symtab_read): Use DBX_SYMFILE_INFO, set_objfile_data. (free_elfinfo): Use DBX_SYMFILE_INFO. (elf_symfile_finish): Don't free deprecated_sym_stab_info. (elfstab_offset_sections): Use DBX_SYMFILE_INFO. * gdb-stabs.h (dbx_objfile_data_key): Declare. (DBX_SYMFILE_INFO): Rewrite to use objfile_data. * objfiles.h (struct objfile) <deprecated_sym_stab_info>: Remove. * somread.c (som_symfile_finish): Don't free deprecated_sym_stab_info.
This commit is contained in:
parent
6f112b1867
commit
d2f4b8feb9
7 changed files with 84 additions and 68 deletions
|
@ -27,6 +27,10 @@
|
|||
#if !defined (GDBSTABS_H)
|
||||
#define GDBSTABS_H
|
||||
|
||||
/* The tag used to find the DBX info attached to an objfile. This is
|
||||
global because it is referenced by several modules. */
|
||||
extern const struct objfile_data *dbx_objfile_data_key;
|
||||
|
||||
/* The stab_section_info chain remembers info from the ELF symbol table,
|
||||
while psymtabs are being built for the other symbol tables in the
|
||||
objfile. It is destroyed at the complation of psymtab-reading.
|
||||
|
@ -42,8 +46,8 @@ struct stab_section_info
|
|||
};
|
||||
|
||||
/* Information is passed among various dbxread routines for accessing
|
||||
symbol files. A pointer to this structure is kept in the
|
||||
deprecated_sym_stab_info field of the objfile struct. */
|
||||
symbol files. A pointer to this structure is kept in the objfile,
|
||||
using the dbx_objfile_data_key. */
|
||||
|
||||
struct dbx_symfile_info
|
||||
{
|
||||
|
@ -73,7 +77,8 @@ struct dbx_symfile_info
|
|||
asection *stab_section;
|
||||
};
|
||||
|
||||
#define DBX_SYMFILE_INFO(o) ((o)->deprecated_sym_stab_info)
|
||||
#define DBX_SYMFILE_INFO(o) \
|
||||
((struct dbx_symfile_info *) objfile_data ((o), dbx_objfile_data_key))
|
||||
#define DBX_TEXT_ADDR(o) (DBX_SYMFILE_INFO(o)->text_addr)
|
||||
#define DBX_TEXT_SIZE(o) (DBX_SYMFILE_INFO(o)->text_size)
|
||||
#define DBX_SYMCOUNT(o) (DBX_SYMFILE_INFO(o)->symcount)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue