2002-09-18 Andrew Cagney <ac131313@redhat.com>
[deliverable/binutils-gdb.git] / gdb / symfile.h
index 56cf4653850540e161cc29b9d3e7a5e69ef0dc2e..39eb3080f13c9522d31e2f97da660cc29016a211 100644 (file)
@@ -1,5 +1,6 @@
 /* Definitions for reading symbol files into GDB.
-   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996
+   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+   2000, 2001
    Free Software Foundation, Inc.
 
    This file is part of GDB.
@@ -61,10 +62,10 @@ struct psymbol_allocation_list
    solib.c to communicate the section addresses in shared objects to
    symbol_file_add (). */
  
-#define MAX_SECTIONS 40
+#define MAX_SECTIONS 64
 struct section_addr_info 
 {
-  /* Sections whose names are file format dependant. */
+  /* Sections whose names are file format dependent. */
   struct other_sections
   {
     CORE_ADDR addr;
@@ -217,18 +218,27 @@ extern char *obconcat (struct obstack *obstackp, const char *, const char *,
 
                        /*   Variables   */
 
-/* whether to auto load solibs at startup time:  0/1. 
+/* If non-zero, shared library symbols will be added automatically
+   when the inferior is created, new libraries are loaded, or when
+   attaching to the inferior.  This is almost always what users will
+   want to have happen; but for very large programs, the startup time
+   will be excessive, and so if this is a problem, the user can clear
+   this flag and then add the shared library symbols as needed.  Note
+   that there is a potential for confusion, since if the shared
+   library symbols are not loaded, commands like "info fun" will *not*
+   report all the functions that are actually present. */
 
-   On all platforms, 0 means "don't auto load".
-
-   On HP-UX, > 0 means a threshhold, in megabytes, of symbol table which will
-   be auto loaded.  When the cumulative size of solib symbol table exceeds
-   this threshhold, solibs' symbol tables will not be loaded.
+extern int auto_solib_add;
 
-   On other platforms, > 0 means, "always auto load".
- */
+/* For systems that support it, a threshold size in megabytes.  If
+   automatically adding a new library's symbol table to those already
+   known to the debugger would cause the total shared library symbol
+   size to exceed this threshhold, then the shlib's symbols are not
+   added.  The threshold is ignored if the user explicitly asks for a
+   shlib to be added, such as when using the "sharedlibrary"
+   command. */
 
-extern int auto_solib_add;
+extern int auto_solib_limit;
 
 /* From symfile.c */
 
@@ -242,8 +252,14 @@ extern void find_lowest_section (bfd *, asection *, PTR);
 
 extern bfd *symfile_bfd_open (char *);
 
+extern int get_section_index (struct objfile *, char *);
+
 /* Utility functions for overlay sections: */
-extern int overlay_debugging;
+extern enum overlay_debugging_state {
+  ovly_off, 
+  ovly_on, 
+  ovly_auto
+} overlay_debugging;
 extern int overlay_cache_invalid;
 
 /* return the "mapped" overlay section  containing the PC */
@@ -273,6 +289,12 @@ extern CORE_ADDR overlay_unmapped_address (CORE_ADDR, asection *);
 /* convert an address in an overlay section (force into VMA range) */
 extern CORE_ADDR symbol_overlayed_address (CORE_ADDR, asection *);
 
+/* Load symbols from a file. */
+extern void symbol_file_add_main (char *args, int from_tty);
+
+/* Clear GDB symbol tables. */
+extern void symbol_file_clear (int from_tty);
+
 /* From dwarfread.c */
 
 extern void
@@ -284,6 +306,7 @@ dwarf_build_psymtabs (struct objfile *, int, file_ptr, unsigned int,
 extern int dwarf2_has_info (bfd * abfd);
 
 extern void dwarf2_build_psymtabs (struct objfile *, int);
+extern void dwarf2_build_frame_info (struct objfile *);
 
 /* From mdebugread.c */
 
This page took 0.024575 seconds and 4 git commands to generate.