aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2013-10-28 16:39:06 +0000
committerPedro Alves <palves@redhat.com>2013-10-28 16:46:23 +0000
commitfcf3daefe6e48a4f3b802f0adad2a16639cef126 (patch)
tree3d066b26fb6496fd6e237ba2697f5ed4d28c915e
parentc447ac0bfb51568d4c239dd11e016dc0281ee358 (diff)
downloadfsf-binutils-gdb-fcf3daefe6e48a4f3b802f0adad2a16639cef126.zip
fsf-binutils-gdb-fcf3daefe6e48a4f3b802f0adad2a16639cef126.tar.gz
fsf-binutils-gdb-fcf3daefe6e48a4f3b802f0adad2a16639cef126.tar.bz2
infrun.c:handle_inferior_event: Move process_event_stop_test goto label.
We only ever call "goto process_event_stop_test;" right after checking that ecs->random_signal is clear. The code at the process_event_stop_test label looks like: /* For the program's own signals, act according to the signal handling tables. */ if (ecs->random_signal) { ... random signal handling ... return; } else { ... the stop tests that actually matter for the goto callers. } So this moves the label into the else branch. It'll make converting process_event_stop_test into a function a bit clearer. gdb/ 2013-10-28 Pedro Alves <palves@redhat.com> * infrun.c (handle_inferior_event): Move process_event_stop_test goto label to the else branch of the ecs->random_signal check, along with FRAME and GDBARCH re-fetching.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/infrun.c14
2 files changed, 13 insertions, 7 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index baf9a11..26f749c 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
2013-10-28 Pedro Alves <palves@redhat.com>
+ * infrun.c (handle_inferior_event): Move process_event_stop_test
+ goto label to the else branch of the ecs->random_signal check,
+ along with FRAME and GDBARCH re-fetching.
+
+2013-10-28 Pedro Alves <palves@redhat.com>
+
* infrun.c (switch_back_to_stepped_thread): New function, factored
out from handle_inferior_event.
(handle_inferior_event): Adjust to call
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 0da90ec..4f22456 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -4288,13 +4288,6 @@ Cannot fill $_exitsignal with the correct signal number.\n"));
ecs->event_thread->suspend.stop_signal = GDB_SIGNAL_TRAP;
}
-process_event_stop_test:
-
- /* Re-fetch current thread's frame in case we did a
- "goto process_event_stop_test" above. */
- frame = get_current_frame ();
- gdbarch = get_frame_arch (frame);
-
/* For the program's own signals, act according to
the signal handling tables. */
@@ -4417,6 +4410,13 @@ process_event_stop_test:
CORE_ADDR jmp_buf_pc;
struct bpstat_what what;
+process_event_stop_test:
+
+ /* Re-fetch current thread's frame in case we did a
+ "goto process_event_stop_test" above. */
+ frame = get_current_frame ();
+ gdbarch = get_frame_arch (frame);
+
what = bpstat_what (ecs->event_thread->control.stop_bpstat);
if (what.call_dummy)