2003-04-08 Elena Zannoni <ezannoni@redhat.com>

* infrun.c (stop_soon): Rename from stop_soon_quietly.
	(struct inferior_status): Rename stop_soon_quietly field to stop_soon.
	(clear_proceed_status): Rename stop_soon_quietly to stop_soon.
	(start_remote): Ditto.
	(handle_inferior_event): Ditto.
	(save_inferior_status): Ditto.
	(restore_inferior_status): Ditto.
	* infcmd.c (attach_command): Ditto.
	* fork-child.c (startup_inferior): Ditto.
        * inferior.h (stop_soon): Rename from stop_soon_quietly.
	* alpha-tdep.c (heuristic_proc_start): Ditto.
	* mips-tdep.c (heuristic_proc_start): Ditto.
	* solib-svr4.c (svr4_solib_create_inferior_hook): Ditto.
	* solib-sunos.c (sunos_solib_create_inferior_hook): Ditto.
	* solib-osf.c (osf_solib_create_inferior_hook): Ditto.
	* solib-irix.c (irix_solib_create_inferior_hook): Ditto.
	* remote-vx.c (vx_create_inferior): Ditto.
This commit is contained in:
Elena Zannoni 2003-04-08 19:21:15 +00:00
parent c54cfec8d4
commit c0236d928f
12 changed files with 75 additions and 33 deletions

View file

@ -1,3 +1,45 @@
2003-04-08 Elena Zannoni <ezannoni@redhat.com>
* infrun.c (stop_soon): Rename from stop_soon_quietly.
(struct inferior_status): Rename stop_soon_quietly field to stop_soon.
(clear_proceed_status): Rename stop_soon_quietly to stop_soon.
(start_remote): Ditto.
(handle_inferior_event): Ditto.
(save_inferior_status): Ditto.
(restore_inferior_status): Ditto.
* infcmd.c (attach_command): Ditto.
* fork-child.c (startup_inferior): Ditto.
* inferior.h (stop_soon): Rename from stop_soon_quietly.
* alpha-tdep.c (heuristic_proc_start): Ditto.
* mips-tdep.c (heuristic_proc_start): Ditto.
* solib-svr4.c (svr4_solib_create_inferior_hook): Ditto.
* solib-sunos.c (sunos_solib_create_inferior_hook): Ditto.
* solib-osf.c (osf_solib_create_inferior_hook): Ditto.
* solib-irix.c (irix_solib_create_inferior_hook): Ditto.
* remote-vx.c (vx_create_inferior): Ditto.
2003-04-08 Elena Zannoni <ezannoni@redhat.com>
* infrun.c (stop_soon_quietly): Make it an enum, to better
override the default behavior of handle_inferior_event.
(clear_proceed_status): Update uses of stop_soon_quietly to
reflect that it is now an enum.
(start_remote): Ditto.
(handle_inferior_event): Change logic a bit if stop_soon_quietly
is set to handle the new GNU/Linux kernel behavior for
attach/sigstop. Update uses of stop_soon_quietly.
* inferior.h (enum stop_kind): New enum.
* infcmd.c (attach_command): Use STOP_QUIETLY_NO_SIGSTOP.
Reset normal handle_inferior_event behavior, afterwards.
* fork-child.c (startup_inferior): Update.
* alpha-tdep.c (heuristic_proc_start): Update.
* solib-svr4.c (svr4_solib_create_inferior_hook): Update.
* solib-sunos.c (sunos_solib_create_inferior_hook): Update.
* solib-osf.c (osf_solib_create_inferior_hook): Update.
* solib-irix.c (irix_solib_create_inferior_hook): Update.
* remote-vx.c (vx_create_inferior): Update.
* mips-tdep.c (heuristic_proc_start): Update.
2003-04-07 Elena Zannoni <ezannoni@redhat.com> 2003-04-07 Elena Zannoni <ezannoni@redhat.com>
* disasm.c (dump_insns): Move variables inside loop, or they will * disasm.c (dump_insns): Move variables inside loop, or they will

View file

@ -554,10 +554,10 @@ heuristic_proc_start (CORE_ADDR pc)
if (start_pc < fence) if (start_pc < fence)
{ {
/* It's not clear to me why we reach this point when /* It's not clear to me why we reach this point when
stop_soon_quietly, but with this test, at least we stop_soon, but with this test, at least we
don't print out warnings for every child forked (eg, on don't print out warnings for every child forked (eg, on
decstation). 22apr93 rich@cygnus.com. */ decstation). 22apr93 rich@cygnus.com. */
if (stop_soon_quietly == NO_STOP_QUIETLY) if (stop_soon == NO_STOP_QUIETLY)
{ {
static int blurb_printed = 0; static int blurb_printed = 0;

View file

@ -410,7 +410,7 @@ startup_inferior (int ntraps)
while (1) while (1)
{ {
/* Make wait_for_inferior be quiet */ /* Make wait_for_inferior be quiet */
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
wait_for_inferior (); wait_for_inferior ();
if (stop_signal != TARGET_SIGNAL_TRAP) if (stop_signal != TARGET_SIGNAL_TRAP)
{ {
@ -445,5 +445,5 @@ startup_inferior (int ntraps)
} }
} }
#endif /* STARTUP_INFERIOR */ #endif /* STARTUP_INFERIOR */
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
} }

View file

@ -1914,9 +1914,9 @@ attach_command (char *args, int from_tty)
don't ignore SIGSTOPs on continue requests anymore. We need a don't ignore SIGSTOPs on continue requests anymore. We need a
way for handle_inferior_event to reset the stop_signal variable way for handle_inferior_event to reset the stop_signal variable
after an attach, and this is what STOP_QUIETLY_NO_SIGSTOP is for. */ after an attach, and this is what STOP_QUIETLY_NO_SIGSTOP is for. */
stop_soon_quietly = STOP_QUIETLY_NO_SIGSTOP; stop_soon = STOP_QUIETLY_NO_SIGSTOP;
wait_for_inferior (); wait_for_inferior ();
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
#endif #endif
/* /*

View file

@ -420,7 +420,7 @@ enum stop_kind
STOP_QUIETLY_NO_SIGSTOP STOP_QUIETLY_NO_SIGSTOP
}; };
extern enum stop_kind stop_soon_quietly; extern enum stop_kind stop_soon;
/* Nonzero if proceed is being used for a "finish" command or a similar /* Nonzero if proceed is being used for a "finish" command or a similar
situation when stop_registers should be saved. */ situation when stop_registers should be saved. */

View file

@ -286,7 +286,7 @@ int stop_after_trap;
when running in the shell before the child program has been exec'd; when running in the shell before the child program has been exec'd;
and when running some kinds of remote stuff (FIXME?). */ and when running some kinds of remote stuff (FIXME?). */
enum stop_kind stop_soon_quietly; enum stop_kind stop_soon;
/* Nonzero if proceed is being used for a "finish" command or a similar /* Nonzero if proceed is being used for a "finish" command or a similar
situation when stop_registers should be saved. */ situation when stop_registers should be saved. */
@ -659,7 +659,7 @@ clear_proceed_status (void)
step_frame_id = null_frame_id; step_frame_id = null_frame_id;
step_over_calls = STEP_OVER_UNDEBUGGABLE; step_over_calls = STEP_OVER_UNDEBUGGABLE;
stop_after_trap = 0; stop_after_trap = 0;
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
proceed_to_finish = 0; proceed_to_finish = 0;
breakpoint_proceeded = 1; /* We're about to proceed... */ breakpoint_proceeded = 1; /* We're about to proceed... */
@ -802,7 +802,7 @@ start_remote (void)
{ {
init_thread_list (); init_thread_list ();
init_wait_for_inferior (); init_wait_for_inferior ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
trap_expected = 0; trap_expected = 0;
/* Always go on waiting for the target, regardless of the mode. */ /* Always go on waiting for the target, regardless of the mode. */
@ -1258,7 +1258,7 @@ handle_inferior_event (struct execution_control_state *ecs)
might be the shell which has just loaded some objects, might be the shell which has just loaded some objects,
otherwise add the symbols for the newly loaded objects. */ otherwise add the symbols for the newly loaded objects. */
#ifdef SOLIB_ADD #ifdef SOLIB_ADD
if (stop_soon_quietly == NO_STOP_QUIETLY) if (stop_soon == NO_STOP_QUIETLY)
{ {
/* Remove breakpoints, SOLIB_ADD might adjust /* Remove breakpoints, SOLIB_ADD might adjust
breakpoint addresses via breakpoint_re_set. */ breakpoint addresses via breakpoint_re_set. */
@ -1758,8 +1758,8 @@ handle_inferior_event (struct execution_control_state *ecs)
|| (breakpoints_inserted && || (breakpoints_inserted &&
(stop_signal == TARGET_SIGNAL_ILL (stop_signal == TARGET_SIGNAL_ILL
|| stop_signal == TARGET_SIGNAL_EMT)) || stop_signal == TARGET_SIGNAL_EMT))
|| stop_soon_quietly == STOP_QUIETLY || stop_soon == STOP_QUIETLY
|| stop_soon_quietly == STOP_QUIETLY_NO_SIGSTOP) || stop_soon == STOP_QUIETLY_NO_SIGSTOP)
{ {
if (stop_signal == TARGET_SIGNAL_TRAP && stop_after_trap) if (stop_signal == TARGET_SIGNAL_TRAP && stop_after_trap)
{ {
@ -1770,7 +1770,7 @@ handle_inferior_event (struct execution_control_state *ecs)
/* This is originated from start_remote(), start_inferior() and /* This is originated from start_remote(), start_inferior() and
shared libraries hook functions. */ shared libraries hook functions. */
if (stop_soon_quietly == STOP_QUIETLY) if (stop_soon == STOP_QUIETLY)
{ {
stop_stepping (ecs); stop_stepping (ecs);
return; return;
@ -1780,7 +1780,7 @@ handle_inferior_event (struct execution_control_state *ecs)
the stop_signal here, because some kernels don't ignore a the stop_signal here, because some kernels don't ignore a
SIGSTOP in a subsequent ptrace(PTRACE_SONT,SOGSTOP) call. SIGSTOP in a subsequent ptrace(PTRACE_SONT,SOGSTOP) call.
See more comments in inferior.h. */ See more comments in inferior.h. */
if (stop_soon_quietly == STOP_QUIETLY_NO_SIGSTOP) if (stop_soon == STOP_QUIETLY_NO_SIGSTOP)
{ {
stop_stepping (ecs); stop_stepping (ecs);
if (stop_signal == TARGET_SIGNAL_STOP) if (stop_signal == TARGET_SIGNAL_STOP)
@ -3477,7 +3477,7 @@ struct inferior_status
enum step_over_calls_kind step_over_calls; enum step_over_calls_kind step_over_calls;
CORE_ADDR step_resume_break_address; CORE_ADDR step_resume_break_address;
int stop_after_trap; int stop_after_trap;
int stop_soon_quietly; int stop_soon;
struct regcache *stop_registers; struct regcache *stop_registers;
/* These are here because if call_function_by_hand has written some /* These are here because if call_function_by_hand has written some
@ -3523,7 +3523,7 @@ save_inferior_status (int restore_stack_info)
inf_status->step_frame_id = step_frame_id; inf_status->step_frame_id = step_frame_id;
inf_status->step_over_calls = step_over_calls; inf_status->step_over_calls = step_over_calls;
inf_status->stop_after_trap = stop_after_trap; inf_status->stop_after_trap = stop_after_trap;
inf_status->stop_soon_quietly = stop_soon_quietly; inf_status->stop_soon = stop_soon;
/* Save original bpstat chain here; replace it with copy of chain. /* Save original bpstat chain here; replace it with copy of chain.
If caller's caller is walking the chain, they'll be happier if we If caller's caller is walking the chain, they'll be happier if we
hand them back the original chain when restore_inferior_status is hand them back the original chain when restore_inferior_status is
@ -3577,7 +3577,7 @@ restore_inferior_status (struct inferior_status *inf_status)
step_frame_id = inf_status->step_frame_id; step_frame_id = inf_status->step_frame_id;
step_over_calls = inf_status->step_over_calls; step_over_calls = inf_status->step_over_calls;
stop_after_trap = inf_status->stop_after_trap; stop_after_trap = inf_status->stop_after_trap;
stop_soon_quietly = inf_status->stop_soon_quietly; stop_soon = inf_status->stop_soon;
bpstat_clear (&stop_bpstat); bpstat_clear (&stop_bpstat);
stop_bpstat = inf_status->stop_bpstat; stop_bpstat = inf_status->stop_bpstat;
breakpoint_proceeded = inf_status->breakpoint_proceeded; breakpoint_proceeded = inf_status->breakpoint_proceeded;

View file

@ -1818,10 +1818,10 @@ heuristic_proc_start (CORE_ADDR pc)
if (start_pc < fence) if (start_pc < fence)
{ {
/* It's not clear to me why we reach this point when /* It's not clear to me why we reach this point when
stop_soon_quietly, but with this test, at least we stop_soon, but with this test, at least we
don't print out warnings for every child forked (eg, on don't print out warnings for every child forked (eg, on
decstation). 22apr93 rich@cygnus.com. */ decstation). 22apr93 rich@cygnus.com. */
if (stop_soon_quietly == NO_STOP_QUIETLY) if (stop_soon == NO_STOP_QUIETLY)
{ {
static int blurb_printed = 0; static int blurb_printed = 0;

View file

@ -67,7 +67,7 @@
extern void vx_read_register (); extern void vx_read_register ();
extern void vx_write_register (); extern void vx_write_register ();
extern void symbol_file_command (); extern void symbol_file_command ();
extern enum stop_kind stop_soon_quietly; /* for wait_for_inferior */ extern enum stop_kind stop_soon; /* for wait_for_inferior */
static int net_step (); static int net_step ();
static int net_ptrace_clnt_call (); /* Forward decl */ static int net_ptrace_clnt_call (); /* Forward decl */
@ -243,9 +243,9 @@ vx_create_inferior (char *exec_file, char *args, char **env)
/* Install inferior's terminal modes. */ /* Install inferior's terminal modes. */
target_terminal_inferior (); target_terminal_inferior ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
wait_for_inferior (); /* Get the task spawn event */ wait_for_inferior (); /* Get the task spawn event */
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
/* insert_step_breakpoint (); FIXME, do we need this? */ /* insert_step_breakpoint (); FIXME, do we need this? */
proceed (-1, TARGET_SIGNAL_DEFAULT, 0); proceed (-1, TARGET_SIGNAL_DEFAULT, 0);

View file

@ -436,7 +436,7 @@ irix_solib_create_inferior_hook (void)
out what we need to know about them. */ out what we need to know about them. */
clear_proceed_status (); clear_proceed_status ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
stop_signal = TARGET_SIGNAL_0; stop_signal = TARGET_SIGNAL_0;
do do
{ {
@ -459,10 +459,10 @@ irix_solib_create_inferior_hook (void)
But we are stopped in the startup code and we might not have symbols But we are stopped in the startup code and we might not have symbols
for the startup code, so heuristic_proc_start could be called for the startup code, so heuristic_proc_start could be called
and will put out an annoying warning. and will put out an annoying warning.
Delaying the resetting of stop_soon_quietly until after symbol loading Delaying the resetting of stop_soon until after symbol loading
suppresses the warning. */ suppresses the warning. */
solib_add ((char *) 0, 0, (struct target_ops *) 0, auto_solib_add); solib_add ((char *) 0, 0, (struct target_ops *) 0, auto_solib_add);
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
re_enable_breakpoints_in_shlibs (); re_enable_breakpoints_in_shlibs ();
} }

View file

@ -321,7 +321,7 @@ osf_solib_create_inferior_hook (void)
out what we need to know about them. */ out what we need to know about them. */
clear_proceed_status (); clear_proceed_status ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
stop_signal = TARGET_SIGNAL_0; stop_signal = TARGET_SIGNAL_0;
do do
{ {
@ -334,10 +334,10 @@ osf_solib_create_inferior_hook (void)
But we are stopped in the runtime loader and we do not have symbols 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 for the runtime loader. So heuristic_proc_start will be called
and will put out an annoying warning. and will put out an annoying warning.
Delaying the resetting of stop_soon_quietly until after symbol loading Delaying the resetting of stop_soon until after symbol loading
suppresses the warning. */ suppresses the warning. */
solib_add ((char *) 0, 0, (struct target_ops *) 0, auto_solib_add); solib_add ((char *) 0, 0, (struct target_ops *) 0, auto_solib_add);
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
/* Enable breakpoints disabled (unnecessarily) by clear_solib(). */ /* Enable breakpoints disabled (unnecessarily) by clear_solib(). */
re_enable_breakpoints_in_shlibs (); re_enable_breakpoints_in_shlibs ();

View file

@ -829,7 +829,7 @@ sunos_solib_create_inferior_hook (void)
out what we need to know about them. */ out what we need to know about them. */
clear_proceed_status (); clear_proceed_status ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
stop_signal = TARGET_SIGNAL_0; stop_signal = TARGET_SIGNAL_0;
do do
{ {
@ -837,7 +837,7 @@ sunos_solib_create_inferior_hook (void)
wait_for_inferior (); wait_for_inferior ();
} }
while (stop_signal != TARGET_SIGNAL_TRAP); while (stop_signal != TARGET_SIGNAL_TRAP);
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
/* We are now either at the "mapping complete" breakpoint (or somewhere /* We are now either at the "mapping complete" breakpoint (or somewhere
else, a condition we aren't prepared to deal with anyway), so adjust else, a condition we aren't prepared to deal with anyway), so adjust

View file

@ -1290,7 +1290,7 @@ svr4_solib_create_inferior_hook (void)
out what we need to know about them. */ out what we need to know about them. */
clear_proceed_status (); clear_proceed_status ();
stop_soon_quietly = STOP_QUIETLY; stop_soon = STOP_QUIETLY;
stop_signal = TARGET_SIGNAL_0; stop_signal = TARGET_SIGNAL_0;
do do
{ {
@ -1298,7 +1298,7 @@ svr4_solib_create_inferior_hook (void)
wait_for_inferior (); wait_for_inferior ();
} }
while (stop_signal != TARGET_SIGNAL_TRAP); while (stop_signal != TARGET_SIGNAL_TRAP);
stop_soon_quietly = NO_STOP_QUIETLY; stop_soon = NO_STOP_QUIETLY;
#endif /* defined(_SCO_DS) */ #endif /* defined(_SCO_DS) */
} }