/* Read os9/os9k symbol tables and convert to internal format, for GDB.
- Copyright 1986, 87, 88, 89, 90, 91, 92, 93, 94, 96, 1998
+ Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
+ 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This file is part of GDB.
#include "defs.h"
#include "gdb_string.h"
+#include "gdb_assert.h"
#include <stdio.h>
#if defined(USG) || defined(__CYGNUSCLIB__)
#include "obstack.h"
#include "gdb_stat.h"
-#include <ctype.h>
#include "symtab.h"
#include "breakpoint.h"
#include "command.h"
/* keep symbol table file nested depth */
static int symfile_depth = 0;
-/* Nonzero means give verbose info on gdb action. From main.c. */
-extern int info_verbose;
-
extern int previous_stab_code;
/* Name of last function encountered. Used in Solaris to approximate
table (as opposed to a shared lib or dynamically loaded file). */
static void
-os9k_symfile_read (objfile, mainline)
- struct objfile *objfile;
- int mainline; /* FIXME comments above */
+os9k_symfile_read (struct objfile *objfile, int mainline)
{
bfd *sym_bfd;
struct cleanup *back_to;
sym_bfd = objfile->obfd;
/* If we are reinitializing, or if we have never loaded syms yet, init */
- if (mainline || objfile->global_psymbols.size == 0 ||
- objfile->static_psymbols.size == 0)
+ if (mainline
+ || (objfile->global_psymbols.size == 0
+ && objfile->static_psymbols.size == 0))
init_psymbol_list (objfile, DBX_SYMCOUNT (objfile));
free_pending_blocks ();
{
if (objfile->sym_stab_info != NULL)
{
- mfree (objfile->md, objfile->sym_stab_info);
+ xmfree (objfile->md, objfile->sym_stab_info);
}
/*
free_header_files ();
FIXME: List variables and peculiarities of same. */
static struct partial_symtab *
-os9k_end_psymtab (pst, include_list, num_includes, capping_symbol_cnt,
- capping_text, dependency_list, number_dependencies)
- struct partial_symtab *pst;
- char **include_list;
- int num_includes;
- int capping_symbol_cnt;
- CORE_ADDR capping_text;
- struct partial_symtab **dependency_list;
- int number_dependencies;
- /* struct partial_symbol *capping_global, *capping_static; */
+os9k_end_psymtab (struct partial_symtab *pst, char **include_list,
+ int num_includes, int capping_symbol_cnt,
+ CORE_ADDR capping_text,
+ struct partial_symtab **dependency_list,
+ int number_dependencies)
{
int i;
struct partial_symtab *p1;
/* Relocate for dynamic loading and for ELF acc fn-relative syms. */
valu += ANOFFSET (section_offsets, SECT_OFF_TEXT (objfile));
/* FIXME: loses if sizeof (char *) > sizeof (int) */
+ gdb_assert (sizeof (name) <= sizeof (int));
record_line (current_subfile, (int) name, valu);
break;