aboutsummaryrefslogtreecommitdiff
path: root/gdb/irix5-nat.c
diff options
context:
space:
mode:
authorPeter Schauer <Peter.Schauer@mytum.de>1994-08-28 13:57:48 +0000
committerPeter Schauer <Peter.Schauer@mytum.de>1994-08-28 13:57:48 +0000
commit46d185d3d1919b707dc3bea1f243bcec2843bffd (patch)
treebaa81bdae6143cc896db7dc316ced19e9dd80abb /gdb/irix5-nat.c
parentb11fb93989a2d454f91f5856140404aef9e2a7fb (diff)
downloadgdb-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/irix5-nat.c')
-rw-r--r--gdb/irix5-nat.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gdb/irix5-nat.c b/gdb/irix5-nat.c
index 74004d41..2831b9c 100644
--- a/gdb/irix5-nat.c
+++ b/gdb/irix5-nat.c
@@ -607,6 +607,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)
{
@@ -614,9 +615,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. */
@@ -683,9 +682,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 ();
}
/*