Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Hui Zhu <teawater@gmail.com>
To: Michael Snyder <msnyder@vmware.com>
Cc: "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
Subject: Re: [RFA] reverse debugging tests
Date: Tue, 15 Sep 2009 00:23:00 -0000	[thread overview]
Message-ID: <daef60380909141722l32d35dc9iff2a562e8c5d77bf@mail.gmail.com> (raw)
In-Reply-To: <4AAAB750.8000209@vmware.com>

It works OK with me.

Thanks,
Hui

On Sat, Sep 12, 2009 at 04:47, Michael Snyder <msnyder@vmware.com> wrote:
> Note, I've only done one of the several tests here --
> if this change is approved, I'll change the others the same way.
>
> This patch is to make the reverse debugging tests auto-detect
> the targets that they can run on, to eliminate the need for
> using a board description file to run them.
>
> It's tricky, because we have to detect several different kinds
> of targets:
> 1) Native Linux, which can be detected early, and
> 2) Remote targets that answer the qSupported probe appropriately,
> which can't be tested until after gdb connects to the target.
>
> So I've made two changes:
>
> 1) In place of "if ![target_info exists gdb,can_reverse]"
> substitute
> +if [istarget "*linux*"] then {
> +    if { ![istarget "i?86-*linux*"] && ![istarget "amd64-*linux*"] } then {
> +       # test process record on i?86 and amd64 linux
> +       return;
> +    }
> +}
>
>
> and
> 2) After "runto main", this substitution:
>
> -if [target_info exists gdb,use_precord] {
> -    # Activate process record/replay
> -    gdb_test "record" "" "Turn on process record"
> -    # FIXME: command ought to acknowledge, so we can test if it succeeded.
> +if ![target_info exists use_gdb_stub] then {
> +    if { [istarget "i?86-*linux*"] || [istarget "amd64-*linux*"] } then {
> +       # Activate process record/replay
> +       gdb_test "record" "" "Turn on process record"
> +       # FIXME: command ought to acknowledge, so we can test if it
> succeeded.
> +    }
> +}
> +
> +if [target_info exists use_gdb_stub] then {
> +    send_gdb "show remote reverse-continue\n"
> +    gdb_expect {
> +       -re ".* currently enabled.*$gdb_prompt " {
> +       }
> +       -re ".*$gdb_prompt " {
> +           return
> +       }
> +    }
>  }
>
>
> 2009-09-11  Michael Snyder  <msnyder@vmware.com>
>
>        * gdb.reverse/step-reverse.exp: Explicitly check for targets
>        that can support reverse debuggnig.
>
> Index: step-reverse.exp
> ===================================================================
> RCS file: /cvs/src/src/gdb/testsuite/gdb.reverse/step-reverse.exp,v
> retrieving revision 1.2
> diff -u -p -r1.2 step-reverse.exp
> --- step-reverse.exp    14 Jul 2009 20:17:26 -0000      1.2
> +++ step-reverse.exp    11 Sep 2009 19:14:19 -0000
> @@ -20,8 +20,11 @@
>  # Test step and next in reverse
>  #
>
> -if ![target_info exists gdb,can_reverse] {
> -    return
> +if [istarget "*linux*"] then {
> +    if { ![istarget "i?86-*linux*"] && ![istarget "amd64-*linux*"] } then {
> +       # test process record on i?86 and amd64 linux
> +       return;
> +    }
>  }
>
>  set testfile "step-reverse"
> @@ -33,10 +36,23 @@ if { [prepare_for_testing $testfile.exp
>
>  runto main
>
> -if [target_info exists gdb,use_precord] {
> -    # Activate process record/replay
> -    gdb_test "record" "" "Turn on process record"
> -    # FIXME: command ought to acknowledge, so we can test if it succeeded.
> +if ![target_info exists use_gdb_stub] then {
> +    if { [istarget "i?86-*linux*"] || [istarget "amd64-*linux*"] } then {
> +       # Activate process record/replay
> +       gdb_test "record" "" "Turn on process record"
> +       # FIXME: command ought to acknowledge, so we can test if it
> succeeded.
> +    }
> +}
> +
> +if [target_info exists use_gdb_stub] then {
> +    send_gdb "show remote reverse-continue\n"
> +    gdb_expect {
> +       -re ".* currently enabled.*$gdb_prompt " {
> +       }
> +       -re ".*$gdb_prompt " {
> +           return
> +       }
> +    }
>  }
>
>  # plain vanilla step/next (no count)
>
>


      parent reply	other threads:[~2009-09-15  0:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-11 20:49 Michael Snyder
2009-09-11 22:29 ` Tom Tromey
2009-09-15  0:23 ` Hui Zhu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=daef60380909141722l32d35dc9iff2a562e8c5d77bf@mail.gmail.com \
    --to=teawater@gmail.com \
    --cc=gdb-patches@sourceware.org \
    --cc=msnyder@vmware.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox