From: Pedro Alves Date: Mon, 9 May 2011 14:25:37 +0000 (+0000) Subject: 2011-05-09 Pedro Alves X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e4c8541fca4c7a63ffdabf9b43798c0f9ac2665f;p=binutils-gdb.git 2011-05-09 Pedro Alves * inferior.h (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter. * infrun.c (proceed, start_remote): Adjust. (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter, and adjust to not handle it. * solib-irix.c (irix_solib_create_inferior_hook): Adjust. * solib-osf.c (osf_solib_create_inferior_hook): Adjust. * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust. * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust. * windows-nat.c (do_initial_windows_stuff): Adjust. * infcmd.c (attach_command): Adjust. (notice_new_inferior): Adjust. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c01e09183f5..0d9b20f7f5a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,18 @@ +2011-05-09 Pedro Alves + + * inferior.h (wait_for_inferior): Remove `thread_exec_as_sigtrap' + parameter. + * infrun.c (proceed, start_remote): Adjust. + (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter, + and adjust to not handle it. + * solib-irix.c (irix_solib_create_inferior_hook): Adjust. + * solib-osf.c (osf_solib_create_inferior_hook): Adjust. + * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust. + * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust. + * windows-nat.c (do_initial_windows_stuff): Adjust. + * infcmd.c (attach_command): Adjust. + (notice_new_inferior): Adjust. + 2011-05-06 Ulrich Weigand * ppc-linux-tdep.c (ppu2spu_prev_register): Handle pseudo registers. diff --git a/gdb/infcmd.c b/gdb/infcmd.c index fce1e8fe1e3..be1f0a5ad24 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -2526,7 +2526,7 @@ attach_command (char *args, int from_tty) return; } - wait_for_inferior (0); + wait_for_inferior (); } attach_command_post_wait (args, from_tty, async_exec); @@ -2590,7 +2590,7 @@ notice_new_inferior (ptid_t ptid, int leave_running, int from_tty) return; } else - wait_for_inferior (0); + wait_for_inferior (); } async_exec = leave_running; diff --git a/gdb/inferior.h b/gdb/inferior.h index f8adb6cce98..15e3ca2264e 100644 --- a/gdb/inferior.h +++ b/gdb/inferior.h @@ -171,7 +171,7 @@ extern void address_to_signed_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr); -extern void wait_for_inferior (int treat_exec_as_sigtrap); +extern void wait_for_inferior (void); extern void prepare_for_detach (void); diff --git a/gdb/infrun.c b/gdb/infrun.c index 2d6d5236b96..3b779de823c 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -2205,7 +2205,7 @@ proceed (CORE_ADDR addr, enum target_signal siggnal, int step) does not support asynchronous execution. */ if (!target_can_async_p ()) { - wait_for_inferior (0); + wait_for_inferior (); normal_stop (); } } @@ -2236,7 +2236,7 @@ start_remote (int from_tty) target_open() return to the caller an indication that the target is currently running and GDB state should be set to the same as for an async run. */ - wait_for_inferior (0); + wait_for_inferior (); /* Now that the inferior has stopped, do any bookkeeping like loading shared libraries. We want to do this before normal_stop, @@ -2604,18 +2604,13 @@ prepare_for_detach (void) /* Wait for control to return from inferior to debugger. - If TREAT_EXEC_AS_SIGTRAP is non-zero, then handle EXEC signals - as if they were SIGTRAP signals. This can be useful during - the startup sequence on some targets such as HP/UX, where - we receive an EXEC event instead of the expected SIGTRAP. - If inferior gets a signal, we may decide to start it up again instead of returning. That is why there is a loop in this function. When this function actually returns it means the inferior should be left stopped and GDB should read more commands. */ void -wait_for_inferior (int treat_exec_as_sigtrap) +wait_for_inferior (void) { struct cleanup *old_cleanups; struct execution_control_state ecss; @@ -2623,8 +2618,7 @@ wait_for_inferior (int treat_exec_as_sigtrap) if (debug_infrun) fprintf_unfiltered - (gdb_stdlog, "infrun: wait_for_inferior (treat_exec_as_sigtrap=%d)\n", - treat_exec_as_sigtrap); + (gdb_stdlog, "infrun: wait_for_inferior ()\n"); old_cleanups = make_cleanup (delete_step_thread_step_resume_breakpoint_cleanup, NULL); @@ -2656,13 +2650,6 @@ wait_for_inferior (int treat_exec_as_sigtrap) if (debug_infrun) print_target_wait_results (waiton_ptid, ecs->ptid, &ecs->ws); - if (treat_exec_as_sigtrap && ecs->ws.kind == TARGET_WAITKIND_EXECD) - { - xfree (ecs->ws.value.execd_pathname); - ecs->ws.kind = TARGET_WAITKIND_STOPPED; - ecs->ws.value.sig = TARGET_SIGNAL_TRAP; - } - /* If an error happens while handling the event, propagate GDB's knowledge of the executing state to the frontend/user running state. */ diff --git a/gdb/solib-irix.c b/gdb/solib-irix.c index 17956be685c..7bb528a8723 100644 --- a/gdb/solib-irix.c +++ b/gdb/solib-irix.c @@ -475,7 +475,7 @@ irix_solib_create_inferior_hook (int from_tty) do { target_resume (pid_to_ptid (-1), 0, tp->suspend.stop_signal); - wait_for_inferior (0); + wait_for_inferior (); } while (tp->suspend.stop_signal != TARGET_SIGNAL_TRAP); diff --git a/gdb/solib-osf.c b/gdb/solib-osf.c index 33e851c87b1..0905eb6f1ca 100644 --- a/gdb/solib-osf.c +++ b/gdb/solib-osf.c @@ -346,7 +346,7 @@ osf_solib_create_inferior_hook (int from_tty) do { target_resume (minus_one_ptid, 0, tp->suspend.stop_signal); - wait_for_inferior (0); + wait_for_inferior (); } while (tp->suspend.stop_signal != TARGET_SIGNAL_TRAP); diff --git a/gdb/solib-sunos.c b/gdb/solib-sunos.c index 52f50a434fe..9936038d4e5 100644 --- a/gdb/solib-sunos.c +++ b/gdb/solib-sunos.c @@ -778,7 +778,7 @@ sunos_solib_create_inferior_hook (int from_tty) do { target_resume (pid_to_ptid (-1), 0, tp->suspend.stop_signal); - wait_for_inferior (0); + wait_for_inferior (); } while (tp->suspend.stop_signal != TARGET_SIGNAL_TRAP); inf->control.stop_soon = NO_STOP_QUIETLY; diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c index 7e2e39c2d09..bcb94e77ecf 100644 --- a/gdb/solib-svr4.c +++ b/gdb/solib-svr4.c @@ -2213,7 +2213,7 @@ svr4_solib_create_inferior_hook (int from_tty) do { target_resume (pid_to_ptid (-1), 0, tp->suspend.stop_signal); - wait_for_inferior (0); + wait_for_inferior (); } while (tp->suspend.stop_signal != TARGET_SIGNAL_TRAP); inf->control.stop_soon = NO_STOP_QUIETLY; diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index cf1a097aa26..8096f95724a 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-nat.c @@ -1714,7 +1714,7 @@ do_initial_windows_stuff (struct target_ops *ops, DWORD pid, int attaching) while (1) { stop_after_trap = 1; - wait_for_inferior (0); + wait_for_inferior (); tp = inferior_thread (); if (tp->suspend.stop_signal != TARGET_SIGNAL_TRAP) resume (0, tp->suspend.stop_signal);