[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] target/s390x: Use tcg_gen_gvec_bitsel
From: |
Richard Henderson |
Subject: |
Re: [Qemu-devel] [PATCH] target/s390x: Use tcg_gen_gvec_bitsel |
Date: |
Mon, 3 Jun 2019 16:59:37 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 |
On 6/3/19 2:41 PM, David Hildenbrand wrote:
>> -static void gen_sel_vec(unsigned vece, TCGv_vec d, TCGv_vec a, TCGv_vec b,
>> - TCGv_vec c)
>> -{
>> - TCGv_vec t = tcg_temp_new_vec_matching(d);
>> -
>> - tcg_gen_andc_vec(vece, t, b, c);
>> - tcg_gen_and_vec(vece, d, a, c);
>> - tcg_gen_or_vec(vece, d, d, t);
>> - tcg_temp_free_vec(t);
>> -}
>> -
>
> Comparing against tcg_gen_bitsel_i64()
>
> 1. a and c are switched
> 2. b is _not_ switched (and() and andc() are switched)
Not quite. {a,b,c} from your s390 implementation becomes {c,a,b} for tcg.
Running tests would show for sure; I guess you have those later in your vx
patch set?
> Should I send this patch with the next s390x/tcg pull request?
Yes please.
r~