diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-11-25 16:01:36 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-11-25 16:01:36 +0000 |
commit | aff6338aa94b864c1023667204ba26874599b662 (patch) | |
tree | 9122d1ee801bee51990b3a0298303f501a37e140 /gdb/infrun.c | |
parent | f4e8b6f343aa10df99e887bc8ab6a062cffc0a71 (diff) | |
download | gdb-aff6338aa94b864c1023667204ba26874599b662.zip gdb-aff6338aa94b864c1023667204ba26874599b662.tar.gz gdb-aff6338aa94b864c1023667204ba26874599b662.tar.bz2 |
2003-11-25 Andrew Cagney <cagney@redhat.com>
* infrun.c: Don't include "exec.h".
(handle_inferior_event): Pass current_target, instead of exec_ops,
to SOLIB_ADD. Add comments.
* Makefile.in (infrun.o): Update dependencies.
Diffstat (limited to 'gdb/infrun.c')
-rw-r--r-- | gdb/infrun.c | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/gdb/infrun.c b/gdb/infrun.c index 0b85cc6..b16cc62 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -44,7 +44,6 @@ #include "value.h" #include "observer.h" #include "language.h" -#include "exec.h" /* Prototypes for local functions */ @@ -1363,7 +1362,22 @@ handle_inferior_event (struct execution_control_state *ecs) terminal for any messages produced by breakpoint_re_set. */ target_terminal_ours_for_output (); - SOLIB_ADD (NULL, 0, &exec_ops, auto_solib_add); + /* NOTE: cagney/2003-11-25: Make certain that the target + stack's section table is kept up-to-date. Architectures, + (e.g., PPC64), use the section table to perform + operations such as address => section name and hence + require the table to contain all sections (including + those found in shared libraries). */ + /* NOTE: cagney/2003-11-25: Pass current_target and not + exec_ops to SOLIB_ADD. This is because current GDB is + only tooled to propagate section_table changes out from + the "current_target" (see target_resize_to_sections), and + not up from the exec stratum. This, of course, isn't + right. "infrun.c" should only interact with the + exec/process stratum, instead relying on the target stack + to propagate relevant changes (stop, section table + changed, ...) up to other layers. */ + SOLIB_ADD (NULL, 0, ¤t_target, auto_solib_add); target_terminal_inferior (); /* Reinsert breakpoints and continue. */ @@ -2186,7 +2200,22 @@ process_event_stop_test: terminal for any messages produced by breakpoint_re_set. */ target_terminal_ours_for_output (); - SOLIB_ADD (NULL, 0, &exec_ops, auto_solib_add); + /* NOTE: cagney/2003-11-25: Make certain that the target + stack's section table is kept up-to-date. Architectures, + (e.g., PPC64), use the section table to perform + operations such as address => section name and hence + require the table to contain all sections (including + those found in shared libraries). */ + /* NOTE: cagney/2003-11-25: Pass current_target and not + exec_ops to SOLIB_ADD. This is because current GDB is + only tooled to propagate section_table changes out from + the "current_target" (see target_resize_to_sections), and + not up from the exec stratum. This, of course, isn't + right. "infrun.c" should only interact with the + exec/process stratum, instead relying on the target stack + to propagate relevant changes (stop, section table + changed, ...) up to other layers. */ + SOLIB_ADD (NULL, 0, ¤t_target, auto_solib_add); target_terminal_inferior (); /* Try to reenable shared library breakpoints, additional |