From: Claudio Fontana <cfontana@suse.de>
To: Fabiano Rosas <farosas@suse.de>,
qemu-devel@nongnu.org, Ilya Leoshkevich <iii@linux.ibm.com>
Cc: qemu-stable@nongnu.org, Nicholas Piggin <npiggin@gmail.com>,
Daniel Henrique Barboza <danielhb413@gmail.com>
Subject: Re: [PATCH] target/ppc: Fix lxvx/stxvx facility check
Date: Wed, 18 Sep 2024 17:11:12 +0200 [thread overview]
Message-ID: <bcdc7a95-09de-4a2e-a45c-aa4a539afc06@suse.de> (raw)
In-Reply-To: <9e6212ca-5c2f-459c-a59d-11fbdb796c07@suse.de>
Adding Ilya FYI.
Ciao,
Claudio
On 9/11/24 18:19, Claudio Fontana wrote:
> On 9/11/24 16:16, Fabiano Rosas wrote:
>> The XT check for the lxvx/stxvx instructions is currently
>> inverted. This was introduced during the move to decodetree.
>>
>> From the ISA:
>> Chapter 7. Vector-Scalar Extension Facility
>> Load VSX Vector Indexed X-form
>>
>> lxvx XT,RA,RB
>> if TX=0 & MSR.VSX=0 then VSX_Unavailable()
>> if TX=1 & MSR.VEC=0 then Vector_Unavailable()
>> ...
>> Let XT be the value 32×TX + T.
>>
>> The code currently does the opposite:
>>
>> if (paired || a->rt >= 32) {
>> REQUIRE_VSX(ctx);
>> } else {
>> REQUIRE_VECTOR(ctx);
>> }
>>
>> This was already fixed for lxv/stxv at commit "2cc0e449d1 (target/ppc:
>> Fix lxv/stxv MSR facility check)", but the indexed forms were missed.
>>
>> Cc: qemu-stable@nongnu.org
>> Fixes: 70426b5bb7 ("target/ppc: moved stxvx and lxvx from legacy to decodtree")
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>> ---
>> target/ppc/translate/vsx-impl.c.inc | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/target/ppc/translate/vsx-impl.c.inc b/target/ppc/translate/vsx-impl.c.inc
>> index 40a87ddc4a..a869f30e86 100644
>> --- a/target/ppc/translate/vsx-impl.c.inc
>> +++ b/target/ppc/translate/vsx-impl.c.inc
>> @@ -2244,7 +2244,7 @@ static bool do_lstxv_PLS_D(DisasContext *ctx, arg_PLS_D *a,
>>
>> static bool do_lstxv_X(DisasContext *ctx, arg_X *a, bool store, bool paired)
>> {
>> - if (paired || a->rt >= 32) {
>> + if (paired || a->rt < 32) {
>> REQUIRE_VSX(ctx);
>> } else {
>> REQUIRE_VECTOR(ctx);
>
> Reviewed-by: Claudio Fontana <cfontana@suse.de>
>
next prev parent reply other threads:[~2024-09-18 15:12 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-11 14:16 [PATCH] target/ppc: Fix lxvx/stxvx facility check Fabiano Rosas
2024-09-11 16:19 ` Claudio Fontana
2024-09-18 15:11 ` Claudio Fontana [this message]
2024-09-19 11:36 ` Claudio Fontana
2024-09-20 9:24 ` Ilya Leoshkevich
2024-09-22 4:56 ` Richard Henderson
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=bcdc7a95-09de-4a2e-a45c-aa4a539afc06@suse.de \
--to=cfontana@suse.de \
--cc=danielhb413@gmail.com \
--cc=farosas@suse.de \
--cc=iii@linux.ibm.com \
--cc=npiggin@gmail.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).