diff options
author | Peter Schauer <Peter.Schauer@mytum.de> | 1994-08-28 13:57:48 +0000 |
---|---|---|
committer | Peter Schauer <Peter.Schauer@mytum.de> | 1994-08-28 13:57:48 +0000 |
commit | 46d185d3d1919b707dc3bea1f243bcec2843bffd (patch) | |
tree | baa81bdae6143cc896db7dc316ced19e9dd80abb /gdb/osfsolib.c | |
parent | b11fb93989a2d454f91f5856140404aef9e2a7fb (diff) | |
download | gdb-46d185d3d1919b707dc3bea1f243bcec2843bffd.zip gdb-46d185d3d1919b707dc3bea1f243bcec2843bffd.tar.gz gdb-46d185d3d1919b707dc3bea1f243bcec2843bffd.tar.bz2 |
* symfile.c (symbol_file_add): Move reinit_frame_cache call to
the callers of symbol_file_add. Gets rid of heuristic fence-post
warnings on mips and alpha targets when the PC resides in a shared
library which is not yet read in.
* coff-solib.c (coff_solib_add), cxux-nat.c (add_shared_symbol_files),
irix5-nat.c (solib_add), osfsolib.c (solib_add),
remote-vx.c (vx_open), solib.c (solib_add):
Add call to reinit_frame_cache after all shared libraries are read in.
* remote-udi.c (udi_load), remote-vx.c (vx_load_command),
symfile.c (symbol_file_command, add_symbol_file_command):
Add call to reinit_frame_cache after symbol_file_add.
Diffstat (limited to 'gdb/osfsolib.c')
-rw-r--r-- | gdb/osfsolib.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/gdb/osfsolib.c b/gdb/osfsolib.c index 054d584..6232ea1 100644 --- a/gdb/osfsolib.c +++ b/gdb/osfsolib.c @@ -473,6 +473,7 @@ solib_add (arg_string, from_tty, target) char *re_err; int count; int old; + int symbols_added = 0; if ((re_err = re_comp (arg_string ? arg_string : ".")) != NULL) { @@ -481,9 +482,7 @@ solib_add (arg_string, from_tty, target) /* Add the shared library sections to the section table of the - specified target, if any. We have to do this before reading the - symbol files as symbol_file_add calls reinit_frame_cache and - creating a new frame might access memory in the shared library. */ + specified target, if any. */ if (target) { /* Count how many new section_table entries there are. */ @@ -551,9 +550,15 @@ solib_add (arg_string, from_tty, target) { so_last = so; so -> symbols_loaded = 1; + symbols_added = 1; } } } + + /* Getting new symbols may change our opinion about what is + frameless. */ + if (symbols_added) + reinit_frame_cache (); } /* @@ -752,7 +757,7 @@ solib_create_inferior_hook() } while (stop_signal != TARGET_SIGNAL_TRAP); - /* solib_add will call reinit_frame_cache via symbol_file_add. + /* solib_add will call reinit_frame_cache. But we are stopped in the runtime loader and we do not have symbols for the runtime loader. So heuristic_proc_start will be called and will put out an annoying warning. |