This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Support targets that know how to continue over breakpoints[1/4] -- GDB
- From: Hui Zhu <teawater at gmail dot com>
- To: Hui Zhu <hui_zhu at mentor dot com>
- Cc: gdb-patches at sourceware dot org, lgustavo at codesourcery dot com, Pedro Alves <palves at redhat dot com>
- Date: Sun, 24 Mar 2013 13:35:37 +0800
- Subject: Re: [PATCH] Support targets that know how to continue over breakpoints[1/4] -- GDB
- References: <51322425 dot 6090007 at mentor dot com>
Ping http://sourceware.org/ml/gdb-patches/2013-03/msg00054.html
Thanks,
Hui
On Sun, Mar 3, 2013 at 12:09 AM, Hui Zhu <hui_zhu@mentor.com> wrote:
> Hello,
>
> According to the mail thread in
> http://sourceware-org.1504.n7.nabble.com/PATCH-Support-targets-that-know-how-to-step-over-breakpoints-td61666.html
> I update patches to change step to continue. When thread hop needed, GDB
> can use continue over breakpoints let the inferior keep going.
>
> The interface that add to target is:
> to_can_continue_over_breakpoints, it will return true if target can continue
> over breakpoints.
> to_next_continue_over_breakpoints, call this function before call to_resume
> will make to_resume do continue_over_breakpoints instead of continue.
>
> This patch is the GDB part that support continue over breakpoints. And
> there also have patches for doc, server and test. I will introduce them
> clear inside the mails of that paches.
>
> Please help me review it.
>
> Thanks,
> Hui
>
> 2013-03-03 Luis Machado <lgustavo@codesourcery.com>
> Pedro Alves <pedro@codesourcery.com>
> Hui Zhu <hui_zhu@mentor.com>
>
> * infrun.c (handle_inferior_event): Check if target can continue
> over breakpoints.
>
> * remote.c (struct remote_state): New member
> can_continue_over_breakpoints.
> (remote_continue_over_breakpoints_feature): New.
> (remote_protocol_features): Add ContinueOverBreakpoints feature.
> (remote_open_1): Clear can_continue_over_breakpoints.
> (remote_is_cob): New.
> (append_resumption, remote_resume): Check remote_is_cob.
> (remote_can_continue_over_breakpoints,
> remote_next_continue_over_breakpoints): New.
> (init_remote_ops): Set remote_ops.to_can_continue_over_breakpoints
> to remote_can_continue_over_breakpoints.
> Set to_next_continue_over_breakpoints to
> remote_next_continue_over_breakpoints.
>
> * target.c (update_current_target): Inherit
> to_can_continue_over_breakpoints, and default it to return 0.
> Inherit to_next_continue_over_breakpoints.
>
> * target.h (struct target_ops): Add new
> to_can_step_over_breakpoints member.
> (target_can_step_over_breakpoints): New.
>