]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/symtab.h
import gdb-1999-10-04 snapshot
[thirdparty/binutils-gdb.git] / gdb / symtab.h
index d651209ecdbff1cec2e51589dfa2c368fb9c5788..3fb21fc4549af82881b812abc7ba559a6c208f2f 100644 (file)
@@ -826,6 +826,26 @@ struct section_offsets
   (sizeof (struct section_offsets) \
    + sizeof (((struct section_offsets *) 0)->offsets) * (SECT_OFF_MAX-1))
 
+/* Define an array of addresses to accommodate non-contiguous dynamic
+   loading of modules.  This is for use when entering commands, so we
+   can keep track of the section names until we read the file and
+   can map them to bfd sections. */
+#define MAX_SECTIONS 12
+struct section_addr_info 
+{
+  /* Sections whose names are always known to gdb. */
+  CORE_ADDR text_addr;
+  CORE_ADDR data_addr;
+  CORE_ADDR bss_addr;
+  /* Sections whose names are file format dependant. */
+  struct other_sections
+  {
+    CORE_ADDR addr;
+    char *name;
+    int sectindex;
+  } other[MAX_SECTIONS];
+};
 
 /* Each source file or header is represented by a struct symtab. 
    These objects are chained through the `next' field.  */
@@ -1399,7 +1419,7 @@ extern void
 clear_solib PARAMS ((void));
 
 extern struct objfile *
-  symbol_file_add PARAMS ((char *, int, CORE_ADDR, int, int, int, int, int));
+  symbol_file_add PARAMS ((char *, int, struct section_addr_info *, int, int, int, int));
 
 /* source.c */