/* The number of sections for which address information is
available. */
size_t num_sections;
- /* Sections whose names are file format dependent. */
+ /* Sections whose names are file format dependent. */
struct other_sections
{
CORE_ADDR addr;
/* Find global or static symbols in all tables that are in NAMESPACE
and for which MATCH (symbol name, NAME) == 0, passing each to
CALLBACK, reading in partial symbol symbol tables as needed. Look
- through global symbols if GLOBAL and otherwise static symbols.
+ through global symbols if GLOBAL and otherwise static symbols.
Passes NAME, NAMESPACE, and DATA to CALLBACK with each symbol
found. After each block is processed, passes NULL to CALLBACK.
MATCH must be weaker than strcmp_iw in the sense that
strcmp(x,y) == 0 --> ORDERED_COMPARE(x,y) == 0
and
strcmp(x,y) <= 0 --> ORDERED_COMPARE(x,y) <= 0
- (allowing strcmp(x,y) < 0 while ORDERED_COMPARE(x, y) == 0).
+ (allowing strcmp(x,y) < 0 while ORDERED_COMPARE(x, y) == 0).
CALLBACK returns 0 to indicate that the scan should continue, or
non-zero to indicate that the scan should be terminated. */
void (*sym_read) (struct objfile *, int);
+ /* Read the partial symbols for an objfile. This may be NULL, in
+ which case gdb assumes that sym_read already read the partial
+ symbols. This may only be non-NULL if the objfile actually does
+ have debuginfo available. */
+
+ void (*sym_read_psymbols) (struct objfile *);
+
/* Called when we are finished with an objfile. Should do all
cleanup that is specific to the object file format for the
particular objfile. */
};
extern struct section_addr_info *
- build_section_addr_info_from_objfile (const struct objfile *objfile);
+ build_section_addr_info_from_objfile (const struct objfile *objfile);
extern void relative_addr_info_to_section_offsets
(struct section_offsets *section_offsets, int num_sections,
SYMFILE_MAINLINE = 1 << 2,
/* Do not call breakpoint_re_set when adding this symbol file. */
- SYMFILE_DEFER_BP_RESET = 1 << 3
+ SYMFILE_DEFER_BP_RESET = 1 << 3,
+
+ /* Do not immediately read symbols for this file. By default,
+ symbols are read when the objfile is created. */
+ SYMFILE_NO_READ = 1 << 4
};
extern void syms_from_objfile (struct objfile *,
extern char *obsavestring (const char *, int, struct obstack *);
-/* Concatenate NULL terminated variable argument list of `const char *' strings;
- return the new string. Space is found in the OBSTACKP. Argument list must
- be terminated by a sentinel expression `(char *) NULL'. */
+/* Concatenate NULL terminated variable argument list of `const char
+ *' strings; return the new string. Space is found in the OBSTACKP.
+ Argument list must be terminated by a sentinel expression `(char *)
+ NULL'. */
extern char *obconcat (struct obstack *obstackp, ...) ATTRIBUTE_SENTINEL;
extern int auto_solib_add;
-/* 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_limit;
-
/* From symfile.c */
extern void set_initial_language (void);