You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "defs.h"
-#include <string.h>
+#include "gdb_string.h"
#include "bfd.h"
#include "symtab.h"
#include "symfile.h"
static void
nlm_symtab_read PARAMS ((bfd *, CORE_ADDR, struct objfile *));
-static struct section_offsets *
-nlm_symfile_offsets PARAMS ((struct objfile *, CORE_ADDR));
-
-static void
-record_minimal_symbol PARAMS ((char *, CORE_ADDR, enum minimal_symbol_type,
- struct objfile *));
-
-
/* Initialize anything that needs initializing when a completely new symbol
file is specified (not just adding some symbols from another file, e.g. a
shared library).
{
}
-static void
-record_minimal_symbol (name, address, ms_type, objfile)
- char *name;
- CORE_ADDR address;
- enum minimal_symbol_type ms_type;
- struct objfile *objfile;
-{
- name = obsavestring (name, strlen (name), &objfile -> symbol_obstack);
- prim_record_minimal_symbol (name, address, ms_type, objfile);
-}
-
-
/*
LOCAL FUNCTION
else
ms_type = mst_unknown;
- record_minimal_symbol ((char *) sym -> name, symaddr, ms_type,
- objfile);
+ prim_record_minimal_symbol (sym -> name, symaddr, ms_type,
+ objfile);
}
}
do_cleanups (back_to);
/* FIXME: We could locate and read the optional native debugging format
here and add the symbols to the minimal symbol table. */
- if (!have_partial_symbols ())
- {
- wrap_here ("");
- printf_filtered ("(no debugging symbols found)...");
- wrap_here ("");
- }
-
/* Install any minimal symbols that have been collected as the current
minimal symbols for this objfile. */
}
}
-/* NLM specific parsing routine for section offsets.
- FIXME: This may or may not be necessary. All the symbol readers seem
- to have similar code. See if it can be generalized and moved elsewhere. */
-
-static
-struct section_offsets *
-nlm_symfile_offsets (objfile, addr)
- struct objfile *objfile;
- CORE_ADDR addr;
-{
- struct section_offsets *section_offsets;
- int i;
-
- objfile->num_sections = SECT_OFF_MAX;
- section_offsets = (struct section_offsets *)
- obstack_alloc (&objfile -> psymbol_obstack,
- sizeof (struct section_offsets) +
- sizeof (section_offsets->offsets) * (SECT_OFF_MAX-1));
-
- for (i = 0; i < SECT_OFF_MAX; i++)
- {
- ANOFFSET (section_offsets, i) = addr;
- }
-
- return (section_offsets);
-}
-
-\f
/* Register that we are able to handle NLM file format. */
static struct sym_fns nlm_sym_fns =
nlm_symfile_init, /* sym_init: read initial info, setup for sym_read() */
nlm_symfile_read, /* sym_read: read a symbol file into symtab */
nlm_symfile_finish, /* sym_finish: finished with file, cleanup */
- nlm_symfile_offsets, /* sym_offsets: Translate ext. to int. relocation */
+ default_symfile_offsets,
+ /* sym_offsets: Translate ext. to int. relocation */
NULL /* next: pointer to next struct sym_fns */
};