* amd64fbsd-nat.c: Include <sys/types.h, <machine/pcb.h> and
[deliverable/binutils-gdb.git] / gdb / xcoffread.c
index 243dab81de4acedcdc6971c09a94430a457de39e..759dfcb1fb7b90c3b44e32d9d79d98a3a2154fe6 100644 (file)
@@ -1,6 +1,6 @@
 /* Read AIX xcoff symbol tables and convert to internal format, for GDB.
    Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
-   1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+   1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
    Free Software Foundation, Inc.
    Derived from coffread.c, dbxread.c, and a lot of hacking.
    Contributed by IBM Corporation.
@@ -44,6 +44,7 @@
 
 #include "symtab.h"
 #include "gdbtypes.h"
+/* FIXME: ezannoni/2004-02-13 Verify if the include below is really needed.  */
 #include "symfile.h"
 #include "objfiles.h"
 #include "buildsym.h"
@@ -193,8 +194,6 @@ static void xcoff_symfile_finish (struct objfile *);
 static void xcoff_symfile_offsets (struct objfile *,
                                   struct section_addr_info *addrs);
 
-static void find_linenos (bfd *, sec_ptr, void *);
-
 static char *coff_getfilename (union internal_auxent *, struct objfile *);
 
 static void read_symbol (struct internal_syment *, int);
@@ -990,7 +989,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
            if (cs->c_name[E_SYMNMLEN - 1] != '\0')
              {
                char *p;
-               p = obstack_alloc (&objfile->symbol_obstack, E_SYMNMLEN + 1);
+               p = obstack_alloc (&objfile->objfile_obstack, E_SYMNMLEN + 1);
                strncpy (p, cs->c_name, E_SYMNMLEN);
                p[E_SYMNMLEN] = '\0';
                cs->c_name = p;
@@ -1253,7 +1252,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
          break;
 
        case C_FCN:
-         if (STREQ (cs->c_name, ".bf"))
+         if (DEPRECATED_STREQ (cs->c_name, ".bf"))
            {
              CORE_ADDR off = ANOFFSET (objfile->section_offsets,
                                        SECT_OFF_TEXT (objfile));
@@ -1270,7 +1269,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
              if (new->name != NULL)
                SYMBOL_SECTION (new->name) = SECT_OFF_TEXT (objfile);
            }
-         else if (STREQ (cs->c_name, ".ef"))
+         else if (DEPRECATED_STREQ (cs->c_name, ".ef"))
            {
 
              bfd_coff_swap_aux_in (abfd, raw_auxptr, cs->c_type, cs->c_sclass,
@@ -1364,7 +1363,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
          break;
 
        case C_BLOCK:
-         if (STREQ (cs->c_name, ".bb"))
+         if (DEPRECATED_STREQ (cs->c_name, ".bb"))
            {
              depth++;
              new = push_context (depth,
@@ -1372,7 +1371,7 @@ read_xcoff_symtab (struct partial_symtab *pst)
                                   + ANOFFSET (objfile->section_offsets,
                                               SECT_OFF_TEXT (objfile))));
            }
-         else if (STREQ (cs->c_name, ".eb"))
+         else if (DEPRECATED_STREQ (cs->c_name, ".eb"))
            {
              if (context_stack_depth <= 0)
                {               /* We attempted to pop an empty context stack */
@@ -1424,12 +1423,12 @@ read_xcoff_symtab (struct partial_symtab *pst)
 
 #define        SYMBOL_DUP(SYMBOL1, SYMBOL2)    \
   (SYMBOL2) = (struct symbol *)                \
-       obstack_alloc (&objfile->symbol_obstack, sizeof (struct symbol)); \
+       obstack_alloc (&objfile->objfile_obstack, sizeof (struct symbol)); \
   *(SYMBOL2) = *(SYMBOL1);
 
 
 #define        SYMNAME_ALLOC(NAME, ALLOCED)    \
-  (ALLOCED) ? (NAME) : obsavestring ((NAME), strlen (NAME), &objfile->symbol_obstack);
+  (ALLOCED) ? (NAME) : obsavestring ((NAME), strlen (NAME), &objfile->objfile_obstack);
 
 
 static struct type *func_symbol_type;
@@ -1673,7 +1672,7 @@ read_symbol_lineno (int symno)
       if (symbol->n_sclass == C_FCN)
        {
          char *name = xcoff64 ? strtbl + symbol->n_offset : symbol->n_name;
-         if (STREQ (name, ".bf"))
+         if (DEPRECATED_STREQ (name, ".bf"))
            goto gotit;
        }
       symno += symbol->n_numaux + 1;
@@ -1699,7 +1698,7 @@ gotit:
  * mainline code can read the whole thing for efficiency.
  */
 static void
-find_linenos (bfd *abfd, sec_ptr asect, void *vpinfo)
+find_linenos (struct bfd *abfd, struct bfd_section *asect, void *vpinfo)
 {
   struct coff_symfile_info *info;
   int size, count;
@@ -1707,7 +1706,7 @@ find_linenos (bfd *abfd, sec_ptr asect, void *vpinfo)
 
   count = asect->lineno_count;
 
-  if (!STREQ (asect->name, ".text") || count == 0)
+  if (!DEPRECATED_STREQ (asect->name, ".text") || count == 0)
     return;
 
   size = count * coff_data (abfd)->local_linesz;
@@ -1896,10 +1895,10 @@ init_stringtab (bfd *abfd, file_ptr offset, struct objfile *objfile)
   if (val != sizeof lengthbuf || length < sizeof lengthbuf)
     return;
 
-  /* Allocate string table from symbol_obstack. We will need this table
+  /* Allocate string table from objfile_obstack. We will need this table
      as long as we have its symbol table around. */
 
-  strtbl = (char *) obstack_alloc (&objfile->symbol_obstack, length);
+  strtbl = (char *) obstack_alloc (&objfile->objfile_obstack, length);
   ((struct coff_symfile_info *) objfile->sym_private)->strtbl = strtbl;
 
   /* Copy length buffer, the first byte is usually zero and is
@@ -1948,7 +1947,7 @@ xcoff_start_psymtab (struct objfile *objfile, char *filename, int first_symnum,
                        global_syms, static_syms);
 
   result->read_symtab_private = (char *)
-    obstack_alloc (&objfile->psymbol_obstack, sizeof (struct symloc));
+    obstack_alloc (&objfile->objfile_obstack, sizeof (struct symloc));
   ((struct symloc *) result->read_symtab_private)->first_symnum = first_symnum;
   result->read_symtab = xcoff_psymtab_to_symtab;
 
@@ -1995,7 +1994,7 @@ xcoff_end_psymtab (struct partial_symtab *pst, char **include_list,
   if (number_dependencies)
     {
       pst->dependencies = (struct partial_symtab **)
-       obstack_alloc (&objfile->psymbol_obstack,
+       obstack_alloc (&objfile->objfile_obstack,
                    number_dependencies * sizeof (struct partial_symtab *));
       memcpy (pst->dependencies, dependency_list,
              number_dependencies * sizeof (struct partial_symtab *));
@@ -2010,7 +2009,7 @@ xcoff_end_psymtab (struct partial_symtab *pst, char **include_list,
 
       subpst->section_offsets = pst->section_offsets;
       subpst->read_symtab_private =
-       (char *) obstack_alloc (&objfile->psymbol_obstack,
+       (char *) obstack_alloc (&objfile->objfile_obstack,
                                sizeof (struct symloc));
       ((struct symloc *) subpst->read_symtab_private)->first_symnum = 0;
       ((struct symloc *) subpst->read_symtab_private)->numsyms = 0;
@@ -2020,7 +2019,7 @@ xcoff_end_psymtab (struct partial_symtab *pst, char **include_list,
       /* We could save slight bits of space by only making one of these,
          shared by the entire set of include files.  FIXME-someday.  */
       subpst->dependencies = (struct partial_symtab **)
-       obstack_alloc (&objfile->psymbol_obstack,
+       obstack_alloc (&objfile->objfile_obstack,
                       sizeof (struct partial_symtab *));
       subpst->dependencies[0] = pst;
       subpst->number_of_dependencies = 1;
@@ -2083,7 +2082,7 @@ swap_sym (struct internal_syment *symbol, union internal_auxent *aux,
          /* FIXME: wastes memory for symbols which we don't end up putting
             into the minimal symbols.  */
          char *p;
-         p = obstack_alloc (&objfile->psymbol_obstack, E_SYMNMLEN + 1);
+         p = obstack_alloc (&objfile->objfile_obstack, E_SYMNMLEN + 1);
          strncpy (p, symbol->n_name, E_SYMNMLEN);
          p[E_SYMNMLEN] = '\0';
          *name = p;
@@ -2532,12 +2531,12 @@ scan_xcoff_symtab (struct objfile *objfile)
               things like "break c-exp.y:435" need to work (I
               suppose the psymtab_include_list could be hashed or put
               in a binary tree, if profiling shows this is a major hog).  */
-           if (pst && STREQ (namestring, pst->filename))
+           if (pst && DEPRECATED_STREQ (namestring, pst->filename))
              continue;
            {
              int i;
              for (i = 0; i < includes_used; i++)
-               if (STREQ (namestring, psymtab_include_list[i]))
+               if (DEPRECATED_STREQ (namestring, psymtab_include_list[i]))
                  {
                    i = -1;
                    break;
@@ -2881,7 +2880,7 @@ xcoff_initial_scan (struct objfile *objfile, int mainline)
 
       /* Read the .debug section, if present.  */
       {
-       sec_ptr secp;
+       struct bfd_section *secp;
        bfd_size_type length;
        char *debugsec = NULL;
 
@@ -2892,7 +2891,7 @@ xcoff_initial_scan (struct objfile *objfile, int mainline)
            if (length)
              {
                debugsec =
-                 (char *) obstack_alloc (&objfile->symbol_obstack, length);
+                 (char *) obstack_alloc (&objfile->objfile_obstack, length);
 
                if (!bfd_get_section_contents (abfd, secp, debugsec,
                                               (file_ptr) 0, length))
@@ -2915,7 +2914,7 @@ xcoff_initial_scan (struct objfile *objfile, int mainline)
           name, bfd_errmsg (bfd_get_error ()));
   size = coff_data (abfd)->local_symesz * num_symbols;
   ((struct coff_symfile_info *) objfile->sym_private)->symtbl =
-    obstack_alloc (&objfile->symbol_obstack, size);
+    obstack_alloc (&objfile->objfile_obstack, size);
   ((struct coff_symfile_info *) objfile->sym_private)->symtbl_num_syms =
     num_symbols;
 
@@ -2961,7 +2960,7 @@ xcoff_symfile_offsets (struct objfile *objfile, struct section_addr_info *addrs)
 
   objfile->num_sections = bfd_count_sections (objfile->obfd);
   objfile->section_offsets = (struct section_offsets *)
-    obstack_alloc (&objfile->psymbol_obstack, 
+    obstack_alloc (&objfile->objfile_obstack, 
                   SIZEOF_N_SECTION_OFFSETS (objfile->num_sections));
 
   /* Initialize the section indexes for future use. */
This page took 0.026941 seconds and 4 git commands to generate.