gas: blackfin: handle multibyte symbols
[deliverable/binutils-gdb.git] / gdb / objfiles.h
index c689622729666838bb22cd74a2ed7a35e9990e25..b3e2e26faac695036864eb794ec74ce1a0467aa6 100644 (file)
@@ -188,8 +188,8 @@ struct objfile
 
     struct objfile *next;
 
-    /* The object file's name, tilde-expanded and absolute.
-       Malloc'd; free it if you free this struct.  */
+    /* The object file's name, tilde-expanded and absolute.  Malloc'd; free it
+       if you free this struct.  This pointer is never NULL.  */
 
     char *name;
 
@@ -249,7 +249,7 @@ struct objfile
     /* A byte cache where we can stash arbitrary "chunks" of bytes that
        will not change. */
 
-    struct bcache *psymbol_cache;      /* Byte cache for partial syms */
+    struct psymbol_bcache *psymbol_cache; /* Byte cache for partial syms */
     struct bcache *macro_cache;          /* Byte cache for macros */
     struct bcache *filename_cache;      /* Byte cache for file names.  */
 
@@ -391,6 +391,12 @@ struct objfile
     /* FIXME/carlton-2003-06-27: Delete this in a few years once
        "possible namespace symbols" go away.  */
     struct symtab *cp_namespace_symtab;
+
+    /* A linked list of symbols created when reading template types or
+       function templates.  These symbols are not stored in any symbol
+       table, so we have to keep them here to relocate them
+       properly.  */
+    struct symbol *template_symbols;
   };
 
 /* Defines for the objfile flag word. */
@@ -533,6 +539,7 @@ extern void *objfile_data (struct objfile *objfile,
 
 extern struct bfd *gdb_bfd_ref (struct bfd *abfd);
 extern void gdb_bfd_unref (struct bfd *abfd);
+extern int gdb_bfd_close_or_warn (struct bfd *abfd);
 \f
 
 /* Traverse all object files in the current program space.
@@ -564,11 +571,6 @@ extern void gdb_bfd_unref (struct bfd *abfd);
 #define        ALL_OBJFILE_SYMTABS(objfile, s) \
     for ((s) = (objfile) -> symtabs; (s) != NULL; (s) = (s) -> next)
 
-/* Traverse all psymtabs in one objfile.  */
-
-#define        ALL_OBJFILE_PSYMTABS(objfile, p) \
-    for ((p) = (objfile) -> psymtabs; (p) != NULL; (p) = (p) -> next)
-
 /* Traverse all minimal symbols in one objfile.  */
 
 #define        ALL_OBJFILE_MSYMBOLS(objfile, m) \
@@ -599,17 +601,6 @@ extern void gdb_bfd_unref (struct bfd *abfd);
     ALL_OBJFILE_SYMTABS (objfile, s)                   \
       if ((s)->primary)
 
-/* Traverse all psymtabs in all objfiles in the current symbol
-   space.  */
-
-#define        ALL_PSYMTABS(objfile, p) \
-  ALL_OBJFILES (objfile)        \
-    ALL_OBJFILE_PSYMTABS (objfile, p)
-
-#define ALL_PSPACE_PSYMTABS(ss, objfile, p)            \
-  ALL_PSPACE_OBJFILES (ss, objfile)                    \
-    ALL_OBJFILE_PSYMTABS (objfile, p)
-
 /* Traverse all minimal symbols in all objfiles in the current symbol
    space.  */
 
This page took 0.02605 seconds and 4 git commands to generate.