Add a symbol's value to the computed frag offset, rather than overwriting it.
[deliverable/binutils-gdb.git] / gdb / objfiles.h
index f6fe03ca5339d02150160953e9e6d981aaf47bb1..98d45751e7881153e95ed2b8952ef1d6f19ea489 100644 (file)
@@ -232,22 +232,6 @@ struct objfile
 
     char *name;
 
-    /* TRUE if this objfile was created because the user explicitly caused
-       it (e.g., used the add-symbol-file command).
-     */
-    int user_loaded;
-
-    /* TRUE if this objfile was explicitly created to represent a solib.
-
-       (If FALSE, the objfile may actually be a solib.  This can happen if
-       the user created the objfile by using the add-symbol-file command.
-       GDB doesn't in that situation actually check whether the file is a
-       solib.  Rather, the target's implementation of the solib interface
-       is responsible for setting this flag when noticing solibs used by
-       an inferior.)
-     */
-    int is_solib;
-
     /* Some flag bits for this objfile. */
 
     unsigned short flags;
@@ -377,7 +361,7 @@ struct objfile
     int num_sections;
 
     /* These pointers are used to locate the section table, which
-       among other thigs, is used to map pc addresses into sections.
+       among other things, is used to map pc addresses into sections.
        SECTIONS points to the first entry in the table, and
        SECTIONS_END points to the first location past the last entry
        in the table.  Currently the table is stored on the
@@ -430,11 +414,29 @@ struct objfile
 
 #define OBJF_REORDERED (1 << 2)        /* Functions are reordered */
 
-/* Distinguish between an objfile for a shared library and a
-   "vanilla" objfile. */
+/* Distinguish between an objfile for a shared library and a "vanilla"
+   objfile. (If not set, the objfile may still actually be a solib.
+   This can happen if the user created the objfile by using the
+   add-symbol-file command.  GDB doesn't in that situation actually
+   check whether the file is a solib.  Rather, the target's
+   implementation of the solib interface is responsible for setting
+   this flag when noticing solibs used by an inferior.)  */
 
 #define OBJF_SHARED     (1 << 3)       /* From a shared library */
 
+/* User requested that this objfile be read in it's entirety. */
+
+#define OBJF_READNOW   (1 << 4)        /* Immediate full read */
+
+/* This objfile was created because the user explicitly caused it
+   (e.g., used the add-symbol-file command).  This bit offers a way
+   for run_command to remove old objfile entries which are no longer
+   valid (i.e., are associated with an old inferior), but to preserve
+   ones that the user explicitly loaded via the add-symbol-file
+   command. */
+
+#define OBJF_USERLOADED        (1 << 5)        /* User loaded */
+
 /* The object file that the main symbol table was loaded from (e.g. the
    argument to the "symbol-file" or "file" command).  */
 
@@ -468,7 +470,7 @@ extern struct objfile *object_files;
 /* Declarations for functions defined in objfiles.c */
 
 extern struct objfile *
-  allocate_objfile PARAMS ((bfd *, int, int, int));
+allocate_objfile PARAMS ((bfd *, int));
 
 extern int
 build_objfile_section_table PARAMS ((struct objfile *));
@@ -515,6 +517,9 @@ extern struct obj_section *
 extern int
 in_plt_section PARAMS ((CORE_ADDR, char *));
 
+extern int
+is_in_import_list PARAMS ((char *, struct objfile *));
+
 /* Traverse all object files.  ALL_OBJFILES_SAFE works even if you delete
    the objfile during the traversal.  */
 
This page took 0.024962 seconds and 4 git commands to generate.