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/remote-vx.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/remote-vx.c')
-rw-r--r-- | gdb/remote-vx.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gdb/remote-vx.c b/gdb/remote-vx.c index 15ca4ae..c8625f5 100644 --- a/gdb/remote-vx.c +++ b/gdb/remote-vx.c @@ -642,6 +642,10 @@ vx_load_command (arg_string, from_tty) /* FIXME, for now we ignore data_addr and bss_addr. */ symbol_file_add (arg_string, from_tty, text_addr, 0, 0, 0); + + /* Getting new symbols may change our opinion about what is + frameless. */ + reinit_frame_cache (); } #ifdef FIXME /* Not ready for prime time */ @@ -1002,6 +1006,7 @@ vx_open (args, from_tty) struct ldfile *pLoadFile; int i; extern CLIENT *pClient; + int symbols_added = 0; if (!args) error_no_arg ("target machine name"); @@ -1077,13 +1082,19 @@ vx_open (args, from_tty) /* Botches, FIXME: (1) Searches the PATH, not the source path. (2) data and bss are assumed to be at the usual offsets from text. */ - catch_errors (add_symbol_stub, (char *)pLoadFile, (char *)0, - RETURN_MASK_ALL); + if (catch_errors (add_symbol_stub, (char *)pLoadFile, (char *)0, + RETURN_MASK_ALL)) + symbols_added = 1; #endif } printf_filtered ("Done.\n"); clnt_freeres (pClient, xdr_ldtabl, &loadTable); + + /* Getting new symbols may change our opinion about what is + frameless. */ + if (symbols_added) + reinit_frame_cache (); } /* Takes a task started up outside of gdb and ``attaches'' to it. |