All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chinmay Rath <rathc@linux.vnet.ibm.com>
To: Richard Henderson <richard.henderson@linaro.org>,
	Chinmay Rath <rathc@linux.ibm.com>,
	qemu-ppc@nongnu.org
Cc: qemu-devel@nongnu.org, npiggin@gmail.com, danielhb413@gmail.com,
	harshpb@linux.ibm.com
Subject: Re: [PATCH 3/4] target/ppc: Move VSX vector storage access insns to decodetree.
Date: Sun, 9 Jun 2024 23:55:08 +0530	[thread overview]
Message-ID: <ff22f709-0c3d-4cf7-b88c-18adde978af1@linux.vnet.ibm.com> (raw)
In-Reply-To: <28ea359e-fdbf-4a4f-b004-19e558d8d96f@linaro.org>


Hi Richard,

On 6/7/24 21:16, Richard Henderson wrote:
> On 6/7/24 07:49, Chinmay Rath wrote:
>> Moving the following instructions to decodetree specification:
>>
>>    lxv{b16, d2, h8, w4, ds, ws}x   : X-form
>>    stxv{b16, d2, h8, w4}x          : X-form
>>
>> The changes were verified by validating that the tcg-ops generated 
>> for those
>> instructions remain the same, which were captured using the '-d 
>> in_asm,op' flag.
>>
>> Signed-off-by: Chinmay Rath <rathc@linux.ibm.com>
>> ---
>>   target/ppc/insn32.decode            |  10 ++
>>   target/ppc/translate/vsx-impl.c.inc | 199 ++++++++++++----------------
>>   target/ppc/translate/vsx-ops.c.inc  |  12 --
>>   3 files changed, 97 insertions(+), 124 deletions(-)
>
> Because the ops are identical,
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
>
> But you really should update these to use tcg_gen_qemu_ld/st_i128 with 
> the proper atomicity flags.  This will fix an existing bug...
>
^ Surely Richard, I have noted this suggestion of yours from an earlier 
patch, and plan to do this change and implement a few of your other 
suggestions,
     which I couldn't implement earlier, along with some clean-ups this 
week.
     I refrained from doing it with the decodetree movement, to take 
proper time to understand and test.

     Should send out those patches soon.

     Thanks & Regards,
     Chinmay
>> +static bool trans_LXVD2X(DisasContext *ctx, arg_LXVD2X *a)
>>   {
>>       TCGv EA;
>>       TCGv_i64 t0;
>> +
>> +    REQUIRE_VSX(ctx);
>> +    REQUIRE_INSNS_FLAGS2(ctx, VSX);
>> +
>>       t0 = tcg_temp_new_i64();
>>       gen_set_access_type(ctx, ACCESS_INT);
>> +    EA = do_ea_calc(ctx, a->ra, cpu_gpr[a->rb]);
>>       gen_qemu_ld64_i64(ctx, t0, EA);
>> +    set_cpu_vsr(a->rt, t0, true);
>
> where the vector register is partially modified ...
>
>>       tcg_gen_addi_tl(EA, EA, 8);
>>       gen_qemu_ld64_i64(ctx, t0, EA);
>
> before a fault from the second load is recognized.
> Similarly for stores leaving memory partially modified.
>
>
> r~
>
>



  reply	other threads:[~2024-06-09 18:25 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-07 14:49 [PATCH 0/4] target/ppc: Move VSX storage access and compare Chinmay Rath
2024-06-07 14:49 ` [PATCH 1/4] target/ppc: Moving VSX scalar storage access insns to decodetree Chinmay Rath
2024-06-07 15:42   ` Richard Henderson
2024-06-07 14:49 ` [PATCH 2/4] target/ppc: Move VSX vector with length " Chinmay Rath
2024-06-07 15:41   ` Richard Henderson
2024-06-09 18:11     ` Chinmay Rath
2024-06-09 18:20       ` Richard Henderson
2024-06-07 14:49 ` [PATCH 3/4] target/ppc: Move VSX vector " Chinmay Rath
2024-06-07 15:46   ` Richard Henderson
2024-06-09 18:25     ` Chinmay Rath [this message]
2024-06-09 18:36     ` Chinmay Rath
2024-06-07 14:49 ` [PATCH 4/4] target/ppc: Move VSX fp compare " Chinmay Rath
2024-06-07 15:55   ` Richard Henderson
2024-06-09 18:26     ` Chinmay Rath

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=ff22f709-0c3d-4cf7-b88c-18adde978af1@linux.vnet.ibm.com \
    --to=rathc@linux.vnet.ibm.com \
    --cc=danielhb413@gmail.com \
    --cc=harshpb@linux.ibm.com \
    --cc=npiggin@gmail.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=rathc@linux.ibm.com \
    --cc=richard.henderson@linaro.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 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.