diff options
author | Peter Schauer <Peter.Schauer@mytum.de> | 1995-01-07 15:30:58 +0000 |
---|---|---|
committer | Peter Schauer <Peter.Schauer@mytum.de> | 1995-01-07 15:30:58 +0000 |
commit | 02b40a193ee4627451f2c525671883ad94f17452 (patch) | |
tree | af34b2a2958c34c3cf9b43f16c845cdd3d1b0a41 /gdb/objfiles.c | |
parent | 4a4f9e3bf1f7f3d3b30311626cb04ed2518cf826 (diff) | |
download | gdb-02b40a193ee4627451f2c525671883ad94f17452.zip gdb-02b40a193ee4627451f2c525671883ad94f17452.tar.gz gdb-02b40a193ee4627451f2c525671883ad94f17452.tar.bz2 |
* dbxread.c (process_one_symbol): Handle N_FUN symbols
for Sun acc 3.0 under SunOS4.
Changes to improve handling of runtime common symbols
under SunOS4.
* minsyms.c (get_symbol_leading_char): New routine to determine
the leading symbol character for an objfile.
(prim_record_minimal_symbol_and_info, install_minimal_symbols):
Use it.
* objfiles.h (rt_common_objfile): New global, points to objfile
containing the runtime common minimal symbols.
* objfiles.c (free_objfile): Mark rt_common_objfile as
unallocated before freeing it.
* solib.c (allocate_rt_common_objfile): New routine to allocate
an objfile for the runtime common minimal symbols.
(solib_add_common_symbols): Allocate an objfile for the runtime
common symbols if necessary and put common symbols into it.
Clean up code and comments.
(solib_add, special_symbol_handling): Cleanup comments regarding
runtime common symbols.
* stabsread.c (scan_file_globals_1): New routine, contains
old scan_file_globals code. Checks if there are any unresolved
global symbols before starting the expensive minimal symbol table
search.
(scan_file_globals): Now calls scan_file_globals_1 for the passed
objfile and eventually for the runtime common objfile. Complains
about any unresolved global symbols and removes them from the
global symbol chain to avoid dangling pointers into the symbol
table if the symbol table is reread.
Diffstat (limited to 'gdb/objfiles.c')
-rw-r--r-- | gdb/objfiles.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gdb/objfiles.c b/gdb/objfiles.c index 891531d..cce17f8 100644 --- a/gdb/objfiles.c +++ b/gdb/objfiles.c @@ -1,5 +1,5 @@ /* GDB routines for manipulating objfiles. - Copyright 1992 Free Software Foundation, Inc. + Copyright 1992, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Cygnus Support, using pieces from other GDB modules. This file is part of GDB. @@ -59,6 +59,7 @@ extern char *error_pre_print; struct objfile *object_files; /* Linked list of all objfiles */ struct objfile *current_objfile; /* For symbol file being read in */ struct objfile *symfile_objfile; /* Main symbol table loaded from */ +struct objfile *rt_common_objfile; /* For runtime common symbols */ int mapped_symbol_files; /* Try to use mapped symbol files */ @@ -372,6 +373,12 @@ free_objfile (objfile) unlink_objfile (objfile); + /* If we are going to free the runtime common objfile, mark it + as unallocated. */ + + if (objfile == rt_common_objfile) + rt_common_objfile = NULL; + /* Before the symbol table code was redone to make it easier to selectively load and remove information particular to a specific linkage unit, gdb used to do these things whenever the monolithic |