From ede1849f9211940ccad355759eb755c6df3e5ce2 Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Wed, 7 Sep 2011 14:24:48 +0000 Subject: [PATCH] gdb/ * gdbthread.h (struct thread_info): Remove fields `stepping_through_solib_after_catch' and `stepping_through_solib_catchpoints'. * infrun.c (init_thread_stepping_state): Update. (process_event_stop_test, currently_stepping): Update. (currently_stepping_or_nexting_callback): Update. --- gdb/ChangeLog | 9 +++++++++ gdb/gdbthread.h | 11 ----------- gdb/infrun.c | 37 +------------------------------------ 3 files changed, 10 insertions(+), 47 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 584959d..43d4a06 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,14 @@ 2011-09-07 Yao Qi + * gdbthread.h (struct thread_info): Remove fields + `stepping_through_solib_after_catch' and + `stepping_through_solib_catchpoints'. + * infrun.c (init_thread_stepping_state): Update. + (process_event_stop_test, currently_stepping): Update. + (currently_stepping_or_nexting_callback): Update. + +2011-09-07 Yao Qi + * gdbthread.h (struct thread_info): Comment on field `step_after_step_resume_breakpoint'. diff --git a/gdb/gdbthread.h b/gdb/gdbthread.h index 6baeb92..6011087 100644 --- a/gdb/gdbthread.h +++ b/gdb/gdbthread.h @@ -186,17 +186,6 @@ struct thread_info when GDB gets back SIGTRAP from step_resume_breakpoint. */ int step_after_step_resume_breakpoint; - /* This is set TRUE when a catchpoint of a shared library event - triggers. Since we don't wish to leave the inferior in the - solib hook when we report the event, we step the inferior - back to user code before stopping and reporting the event. */ - int stepping_through_solib_after_catch; - - /* When stepping_through_solib_after_catch is TRUE, this is a - list of the catchpoints that should be reported as triggering - when we finally do stop stepping. */ - bpstat stepping_through_solib_catchpoints; - /* Per-thread command support. */ /* Pointer to what is left to do for an execution command after the diff --git a/gdb/infrun.c b/gdb/infrun.c index 8846cdf..2b4f6db 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -2853,8 +2853,6 @@ init_thread_stepping_state (struct thread_info *tss) { tss->stepping_over_breakpoint = 0; tss->step_after_step_resume_breakpoint = 0; - tss->stepping_through_solib_after_catch = 0; - tss->stepping_through_solib_catchpoints = NULL; } /* Return the cached copy of the last pid/waitstatus returned by @@ -4553,37 +4551,6 @@ process_event_stop_test: } } - /* Are we stepping to get the inferior out of the dynamic linker's - hook (and possibly the dld itself) after catching a shlib - event? */ - if (ecs->event_thread->stepping_through_solib_after_catch) - { -#if defined(SOLIB_ADD) - /* Have we reached our destination? If not, keep going. */ - if (SOLIB_IN_DYNAMIC_LINKER (PIDGET (ecs->ptid), stop_pc)) - { - if (debug_infrun) - fprintf_unfiltered (gdb_stdlog, - "infrun: stepping in dynamic linker\n"); - ecs->event_thread->stepping_over_breakpoint = 1; - keep_going (ecs); - return; - } -#endif - if (debug_infrun) - fprintf_unfiltered (gdb_stdlog, "infrun: step past dynamic linker\n"); - /* Else, stop and report the catchpoint(s) whose triggering - caused us to begin stepping. */ - ecs->event_thread->stepping_through_solib_after_catch = 0; - bpstat_clear (&ecs->event_thread->control.stop_bpstat); - ecs->event_thread->control.stop_bpstat - = bpstat_copy (ecs->event_thread->stepping_through_solib_catchpoints); - bpstat_clear (&ecs->event_thread->stepping_through_solib_catchpoints); - stop_print_frame = 1; - stop_stepping (ecs); - return; - } - if (ecs->event_thread->control.step_resume_breakpoint) { if (debug_infrun) @@ -5143,7 +5110,6 @@ currently_stepping (struct thread_info *tp) return ((tp->control.step_range_end && tp->control.step_resume_breakpoint == NULL) || tp->control.trap_expected - || tp->stepping_through_solib_after_catch || bpstat_should_step ()); } @@ -5157,8 +5123,7 @@ currently_stepping_or_nexting_callback (struct thread_info *tp, void *data) return 0; return (tp->control.step_range_end - || tp->control.trap_expected - || tp->stepping_through_solib_after_catch); + || tp->control.trap_expected); } /* Inferior has stepped into a subroutine call with source code that -- 2.7.4