Thu Nov 20 04:11:27 1997 Geoffrey Noer <noer@cygnus.com>
[deliverable/binutils-gdb.git] / gdb / objfiles.h
index 0a8bbd3803ec39743e9d82eb328b8e4d3da13fc0..d90095dd3efad5b20ea0836cf87f0de785098e32 100644 (file)
@@ -154,6 +154,9 @@ struct obj_section {
 
   /* Objfile this section is part of.  */
   struct objfile *objfile;
+
+  /* True if this "overlay section" is mapped into an "overlay region". */
+  int ovly_mapped;
 };
 
 /* The "objstats" structure provides a place for gdb to record some
@@ -175,6 +178,7 @@ struct objstats {
 #define OBJSTAT(objfile, expr) (objfile -> stats.expr)
 #define OBJSTATS struct objstats stats
 extern void print_objfile_statistics PARAMS ((void));
+extern void print_symbol_bcache_statistics PARAMS ((void));
 
 #else
 
@@ -252,6 +256,11 @@ struct objfile
   struct obstack symbol_obstack;       /* Full symbols */
   struct obstack type_obstack;         /* Types */
 
+  /* A byte cache where we can stash arbitrary "chunks" of bytes that
+     will not change. */
+
+  struct bcache psymbol_cache;         /* Byte cache for partial syms */
+
   /* Vectors of all partial symbols read in from file.  The actual data
      is stored in the psymbol_obstack. */
 
@@ -310,7 +319,7 @@ struct objfile
   /* Information about stabs.  Will be filled in with a dbx_symfile_info
      struct by those readers that need it. */
 
-  PTR sym_stab_info;
+  struct dbx_symfile_info *sym_stab_info;
 
   /* Hook for information for use by the symbol reader (currently used
      for information shared by sym_init and sym_read).  It is
@@ -448,6 +457,12 @@ have_minimal_symbols PARAMS ((void));
 extern struct obj_section *
 find_pc_section PARAMS((CORE_ADDR pc));
 
+extern struct obj_section *
+find_pc_sect_section PARAMS((CORE_ADDR pc, asection *section));
+
+extern int
+in_plt_section PARAMS ((CORE_ADDR, char *));
+
 /* Traverse all object files.  ALL_OBJFILES_SAFE works even if you delete
    the objfile during the traversal.  */
 
@@ -493,4 +508,11 @@ find_pc_section PARAMS((CORE_ADDR pc));
     if ((objfile)->msymbols)    \
       ALL_OBJFILE_MSYMBOLS (objfile, m)
 
+#define ALL_OBJFILE_OSECTIONS(objfile, osect)  \
+  for (osect = objfile->sections; osect < objfile->sections_end; osect++)
+
+#define ALL_OBJSECTIONS(objfile, osect)                \
+  ALL_OBJFILES (objfile)                       \
+    ALL_OBJFILE_OSECTIONS (objfile, osect)
+
 #endif /* !defined (OBJFILES_H) */
This page took 0.023494 seconds and 4 git commands to generate.