enum lwp_stop_reason -> enum target_stop_reason
We're going to need the same enum as enum lwp_stop_reason in more targets, so this promotes it to common code. gdb/gdbserver/ChangeLog: 2015-03-04 Pedro Alves <palves@redhat.com> enum lwp_stop_reason -> enum target_stop_reason * linux-low.c (check_stopped_by_breakpoint): Adjust. (thread_still_has_status_pending_p, check_stopped_by_watchpoint) (linux_wait_1, stuck_in_jump_pad_callback) (move_out_of_jump_pad_callback, linux_resume_one_lwp) (linux_stopped_by_watchpoint): * linux-low.h (enum lwp_stop_reason): Delete. (struct lwp_info) <stop_reason>: Now an enum target_stop_reason. * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust. gdb/ChangeLog: 2015-03-04 Pedro Alves <palves@redhat.com> enum lwp_stop_reason -> enum target_stop_reason * linux-nat.c (linux_resume_one_lwp, check_stopped_by_watchpoint) (linux_nat_stopped_by_watchpoint, status_callback) (linux_nat_wait_1): Adjust. * linux-nat.h (enum lwp_stop_reason): Delete. (struct lwp_info) <stop_reason>: Now an enum target_stop_reason. * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust. * target/waitstatus.h (enum target_stop_reason): New.
This commit is contained in:
parent
1cf4d9513a
commit
15c66dd626
9 changed files with 74 additions and 67 deletions
|
@ -528,7 +528,7 @@ check_stopped_by_breakpoint (struct lwp_info *lwp)
|
|||
}
|
||||
|
||||
lwp->stop_pc = sw_breakpoint_pc;
|
||||
lwp->stop_reason = LWP_STOPPED_BY_SW_BREAKPOINT;
|
||||
lwp->stop_reason = TARGET_STOPPED_BY_SW_BREAKPOINT;
|
||||
current_thread = saved_thread;
|
||||
return 1;
|
||||
}
|
||||
|
@ -544,7 +544,7 @@ check_stopped_by_breakpoint (struct lwp_info *lwp)
|
|||
}
|
||||
|
||||
lwp->stop_pc = pc;
|
||||
lwp->stop_reason = LWP_STOPPED_BY_HW_BREAKPOINT;
|
||||
lwp->stop_reason = TARGET_STOPPED_BY_HW_BREAKPOINT;
|
||||
current_thread = saved_thread;
|
||||
return 1;
|
||||
}
|
||||
|
@ -1221,8 +1221,8 @@ thread_still_has_status_pending_p (struct thread_info *thread)
|
|||
return 0;
|
||||
|
||||
if (thread->last_resume_kind != resume_stop
|
||||
&& (lp->stop_reason == LWP_STOPPED_BY_SW_BREAKPOINT
|
||||
|| lp->stop_reason == LWP_STOPPED_BY_HW_BREAKPOINT))
|
||||
&& (lp->stop_reason == TARGET_STOPPED_BY_SW_BREAKPOINT
|
||||
|| lp->stop_reason == TARGET_STOPPED_BY_HW_BREAKPOINT))
|
||||
{
|
||||
struct thread_info *saved_thread;
|
||||
CORE_ADDR pc;
|
||||
|
@ -1242,7 +1242,7 @@ thread_still_has_status_pending_p (struct thread_info *thread)
|
|||
lwpid_of (thread));
|
||||
discard = 1;
|
||||
}
|
||||
else if (lp->stop_reason == LWP_STOPPED_BY_SW_BREAKPOINT
|
||||
else if (lp->stop_reason == TARGET_STOPPED_BY_SW_BREAKPOINT
|
||||
&& !(*the_low_target.breakpoint_at) (pc))
|
||||
{
|
||||
if (debug_threads)
|
||||
|
@ -1250,7 +1250,7 @@ thread_still_has_status_pending_p (struct thread_info *thread)
|
|||
lwpid_of (thread));
|
||||
discard = 1;
|
||||
}
|
||||
else if (lp->stop_reason == LWP_STOPPED_BY_HW_BREAKPOINT
|
||||
else if (lp->stop_reason == TARGET_STOPPED_BY_HW_BREAKPOINT
|
||||
&& !hardware_breakpoint_inserted_here (pc))
|
||||
{
|
||||
if (debug_threads)
|
||||
|
@ -1758,7 +1758,7 @@ check_stopped_by_watchpoint (struct lwp_info *child)
|
|||
|
||||
if (the_low_target.stopped_by_watchpoint ())
|
||||
{
|
||||
child->stop_reason = LWP_STOPPED_BY_WATCHPOINT;
|
||||
child->stop_reason = TARGET_STOPPED_BY_WATCHPOINT;
|
||||
|
||||
if (the_low_target.stopped_data_address != NULL)
|
||||
child->stopped_data_address
|
||||
|
@ -1770,7 +1770,7 @@ check_stopped_by_watchpoint (struct lwp_info *child)
|
|||
current_thread = saved_thread;
|
||||
}
|
||||
|
||||
return child->stop_reason == LWP_STOPPED_BY_WATCHPOINT;
|
||||
return child->stop_reason == TARGET_STOPPED_BY_WATCHPOINT;
|
||||
}
|
||||
|
||||
/* Do low-level handling of the event, and check if we should go on
|
||||
|
@ -2553,7 +2553,7 @@ linux_wait_1 (ptid_t ptid,
|
|||
Advance the PC manually past the breakpoint, otherwise the
|
||||
program would keep trapping the permanent breakpoint forever. */
|
||||
if (!ptid_equal (step_over_bkpt, null_ptid)
|
||||
&& event_child->stop_reason == LWP_STOPPED_BY_SW_BREAKPOINT)
|
||||
&& event_child->stop_reason == TARGET_STOPPED_BY_SW_BREAKPOINT)
|
||||
{
|
||||
unsigned int increment_pc = the_low_target.breakpoint_len;
|
||||
|
||||
|
@ -2572,7 +2572,7 @@ linux_wait_1 (ptid_t ptid,
|
|||
(*the_low_target.set_pc) (regcache, event_child->stop_pc);
|
||||
|
||||
if (!(*the_low_target.breakpoint_at) (event_child->stop_pc))
|
||||
event_child->stop_reason = LWP_STOPPED_BY_NO_REASON;
|
||||
event_child->stop_reason = TARGET_STOPPED_BY_NO_REASON;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2799,7 +2799,7 @@ linux_wait_1 (ptid_t ptid,
|
|||
report_to_gdb = (!maybe_internal_trap
|
||||
|| (current_thread->last_resume_kind == resume_step
|
||||
&& !in_step_range)
|
||||
|| event_child->stop_reason == LWP_STOPPED_BY_WATCHPOINT
|
||||
|| event_child->stop_reason == TARGET_STOPPED_BY_WATCHPOINT
|
||||
|| (!step_over_finished && !in_step_range
|
||||
&& !bp_explains_trap && !trace_event)
|
||||
|| (gdb_breakpoint_here (event_child->stop_pc)
|
||||
|
@ -2863,7 +2863,7 @@ linux_wait_1 (ptid_t ptid,
|
|||
else if (!lwp_in_step_range (event_child))
|
||||
debug_printf ("Out of step range, reporting event.\n");
|
||||
}
|
||||
if (event_child->stop_reason == LWP_STOPPED_BY_WATCHPOINT)
|
||||
if (event_child->stop_reason == TARGET_STOPPED_BY_WATCHPOINT)
|
||||
debug_printf ("Stopped by watchpoint.\n");
|
||||
else if (gdb_breakpoint_here (event_child->stop_pc))
|
||||
debug_printf ("Stopped by GDB breakpoint.\n");
|
||||
|
@ -2939,7 +2939,7 @@ linux_wait_1 (ptid_t ptid,
|
|||
|
||||
/* Now that we've selected our final event LWP, un-adjust its PC if
|
||||
it was a software breakpoint. */
|
||||
if (event_child->stop_reason == LWP_STOPPED_BY_SW_BREAKPOINT)
|
||||
if (event_child->stop_reason == TARGET_STOPPED_BY_SW_BREAKPOINT)
|
||||
{
|
||||
int decr_pc = the_low_target.decr_pc_after_break;
|
||||
|
||||
|
@ -3216,7 +3216,7 @@ stuck_in_jump_pad_callback (struct inferior_list_entry *entry, void *data)
|
|||
return (supports_fast_tracepoints ()
|
||||
&& agent_loaded_p ()
|
||||
&& (gdb_breakpoint_here (lwp->stop_pc)
|
||||
|| lwp->stop_reason == LWP_STOPPED_BY_WATCHPOINT
|
||||
|| lwp->stop_reason == TARGET_STOPPED_BY_WATCHPOINT
|
||||
|| thread->last_resume_kind == resume_step)
|
||||
&& linux_fast_tracepoint_collecting (lwp, NULL));
|
||||
}
|
||||
|
@ -3235,7 +3235,7 @@ move_out_of_jump_pad_callback (struct inferior_list_entry *entry)
|
|||
|
||||
/* Allow debugging the jump pad, gdb_collect, etc. */
|
||||
if (!gdb_breakpoint_here (lwp->stop_pc)
|
||||
&& lwp->stop_reason != LWP_STOPPED_BY_WATCHPOINT
|
||||
&& lwp->stop_reason != TARGET_STOPPED_BY_WATCHPOINT
|
||||
&& thread->last_resume_kind != resume_step
|
||||
&& maybe_move_out_of_jump_pad (lwp, wstat))
|
||||
{
|
||||
|
@ -3500,7 +3500,7 @@ linux_resume_one_lwp (struct lwp_info *lwp,
|
|||
regcache_invalidate_thread (thread);
|
||||
errno = 0;
|
||||
lwp->stopped = 0;
|
||||
lwp->stop_reason = LWP_STOPPED_BY_NO_REASON;
|
||||
lwp->stop_reason = TARGET_STOPPED_BY_NO_REASON;
|
||||
lwp->stepping = step;
|
||||
ptrace (step ? PTRACE_SINGLESTEP : PTRACE_CONT, lwpid_of (thread),
|
||||
(PTRACE_TYPE_ARG3) 0,
|
||||
|
@ -4906,7 +4906,7 @@ linux_stopped_by_watchpoint (void)
|
|||
{
|
||||
struct lwp_info *lwp = get_thread_lwp (current_thread);
|
||||
|
||||
return lwp->stop_reason == LWP_STOPPED_BY_WATCHPOINT;
|
||||
return lwp->stop_reason == TARGET_STOPPED_BY_WATCHPOINT;
|
||||
}
|
||||
|
||||
static CORE_ADDR
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue