All of lore.kernel.org
 help / color / mirror / Atom feed
From: <ltaylorsimpson@gmail.com>
To: "'Brian Cain'" <brian.cain@oss.qualcomm.com>, <qemu-devel@nongnu.org>
Cc: <richard.henderson@linaro.org>, <philmd@linaro.org>,
	<matheus.bernardino@oss.qualcomm.com>, <ale@rev.ng>,
	<anjo@rev.ng>, <marco.liebel@oss.qualcomm.com>,
	<alex.bennee@linaro.org>, <quic_mburton@quicinc.com>,
	<sid.manning@oss.qualcomm.com>
Subject: RE: [PATCH 2/2] tests/tcg/hexagon: Add cs{0,1} coverage
Date: Wed, 8 Oct 2025 15:51:58 -0600	[thread overview]
Message-ID: <024001dc389d$c5f5bf30$51e13d90$@gmail.com> (raw)
In-Reply-To: <20251008014754.3565553-2-brian.cain@oss.qualcomm.com>



> -----Original Message-----
> From: Brian Cain <brian.cain@oss.qualcomm.com>
> Sent: Tuesday, October 7, 2025 7:48 PM
> To: qemu-devel@nongnu.org
> Cc: brian.cain@oss.qualcomm.com; richard.henderson@linaro.org;
> philmd@linaro.org; matheus.bernardino@oss.qualcomm.com; ale@rev.ng;
> anjo@rev.ng; marco.liebel@oss.qualcomm.com; ltaylorsimpson@gmail.com;
> alex.bennee@linaro.org; quic_mburton@quicinc.com;
> sid.manning@oss.qualcomm.com
> Subject: [PATCH 2/2] tests/tcg/hexagon: Add cs{0,1} coverage
> 
> Cover cs0,1 register corruption in the signal_context test case.
> 
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
> ---
>  tests/tcg/hexagon/signal_context.c | 22 +++++++++++++++++++---
>  1 file changed, 19 insertions(+), 3 deletions(-)
> 
> diff --git a/tests/tcg/hexagon/signal_context.c
> b/tests/tcg/hexagon/signal_context.c
> index 7202fa64b6..00bbb3efc7 100644
> --- a/tests/tcg/hexagon/signal_context.c
> +++ b/tests/tcg/hexagon/signal_context.c
> @@ -26,7 +26,11 @@ void sig_user(int sig, siginfo_t *info, void *puc)
>          "p1 = r7\n\t"
>          "p2 = r7\n\t"
>          "p3 = r7\n\t"
> -        : : : "r7", "p0", "p1", "p2", "p3");
> +        "r6 = #0x12345678\n\t"
> +        "cs0 = r6\n\t"
> +        "r6 = #0x87654321\n\t"
> +        "cs1 = r6\n\t"
> +        : : : "r6", "r7", "p0", "p1", "p2", "p3");

Add cs0, cs1 to the clobber list.

>  }
> 
>  int main()
> @@ -52,7 +56,11 @@ int main()
>      it.it_value.tv_nsec = 100000;
>      timer_settime(tid, 0, &it, NULL);
> 
> -    asm("loop0(1f, %1)\n\t"
> +    asm("r9 = #0xdeadbeef\n\t"
> +        "   cs0 = r9\n\t"
> +        "   r9 = #0xbadc0fee\n\t"
> +        "   cs1 = r9\n\t"

Should these be inside the loop?

> +        "   loop0(1f, %1)\n\t"
>          "1: r8 = #0xff\n\t"
>          "   p0 = r8\n\t"
>          "   p1 = r8\n\t"
> @@ -74,10 +82,18 @@ int main()
>          "   r8 = p3\n\t"
>          "   p0 = cmp.eq(r8, #0xff)\n\t"
>          "   if (!p0) jump 2b\n\t"
> +        "   r8 = cs0\n\t"
> +        "   r9 = #0xdeadbeef\n\t"
> +        "   p0 = cmp.eq(r8, r9)\n\t"
> +        "   if (!p0) jump 2b\n\t"
> +        "   r8 = cs1\n\t"
> +        "   r9 = #0xbadc0fee\n\t"
> +        "   p0 = cmp.eq(r8, r9)\n\t"
> +        "   if (!p0) jump 2b\n\t"
>          "4: {}: endloop0\n\t"
>          :
>          : "r"(&err), "r"(i)
> -        : "memory", "r8", "p0", "p1", "p2", "p3");
> +        : "memory", "r8", "r9", "p0", "p1", "p2", "p3");

Add cs0, cs1 to the clobber list.  Also, add sa0, lc0 due to the loop0 instruction.


> 
>      puts(err ? "FAIL" : "PASS");
>      return err;
> --
> 2.34.1




  parent reply	other threads:[~2025-10-08 21:53 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-08  1:47 [PATCH 1/2] linux-user/hexagon: Fix sigcontext Brian Cain
2025-10-08  1:47 ` [PATCH 2/2] tests/tcg/hexagon: Add cs{0,1} coverage Brian Cain
2025-10-08 15:03   ` Anton Johansson via
2025-10-08 21:51   ` ltaylorsimpson [this message]
2025-10-10 18:40     ` Brian Cain
2025-10-08 15:27 ` [PATCH 1/2] linux-user/hexagon: Fix sigcontext Anton Johansson via
2025-10-08 16:02   ` Richard Henderson
2025-10-08 21:46 ` ltaylorsimpson

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='024001dc389d$c5f5bf30$51e13d90$@gmail.com' \
    --to=ltaylorsimpson@gmail.com \
    --cc=ale@rev.ng \
    --cc=alex.bennee@linaro.org \
    --cc=anjo@rev.ng \
    --cc=brian.cain@oss.qualcomm.com \
    --cc=marco.liebel@oss.qualcomm.com \
    --cc=matheus.bernardino@oss.qualcomm.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=quic_mburton@quicinc.com \
    --cc=richard.henderson@linaro.org \
    --cc=sid.manning@oss.qualcomm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.