[Qemu-devel] [PATCH 01/38] target/arm: Fill in .opc for cmtst_op

Richard Henderson posted 38 patches 6 years, 9 months ago
Maintainers: Cornelia Huck <cohuck@redhat.com>, Alistair Francis <Alistair.Francis@wdc.com>, David Gibson <david@gibson.dropbear.id.au>, Stefan Weil <sw@weilnetz.de>, Paolo Bonzini <pbonzini@redhat.com>, Aleksandar Rikalo <arikalo@wavecomp.com>, Peter Maydell <peter.maydell@linaro.org>, Aurelien Jarno <aurelien@aurel32.net>, Richard Henderson <rth@twiddle.net>, Palmer Dabbelt <palmer@sifive.com>, Claudio Fontana <claudio.fontana@huawei.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, David Hildenbrand <david@redhat.com>, Max Filippov <jcmvbkbc@gmail.com>, Andrzej Zaborowski <balrogg@gmail.com>
There is a newer version of this series
[Qemu-devel] [PATCH 01/38] target/arm: Fill in .opc for cmtst_op
Posted by Richard Henderson 6 years, 9 months ago
This allows us to fall back to integers if the tcg backend
does not support comparisons in the given vece.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/arm/translate.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/target/arm/translate.c b/target/arm/translate.c
index d408e4d7ef..13e2dc6562 100644
--- a/target/arm/translate.c
+++ b/target/arm/translate.c
@@ -6140,16 +6140,20 @@ static void gen_cmtst_vec(unsigned vece, TCGv_vec d, TCGv_vec a, TCGv_vec b)
 const GVecGen3 cmtst_op[4] = {
     { .fni4 = gen_helper_neon_tst_u8,
       .fniv = gen_cmtst_vec,
+      .opc = INDEX_op_cmp_vec,
       .vece = MO_8 },
     { .fni4 = gen_helper_neon_tst_u16,
       .fniv = gen_cmtst_vec,
+      .opc = INDEX_op_cmp_vec,
       .vece = MO_16 },
     { .fni4 = gen_cmtst_i32,
       .fniv = gen_cmtst_vec,
+      .opc = INDEX_op_cmp_vec,
       .vece = MO_32 },
     { .fni8 = gen_cmtst_i64,
       .fniv = gen_cmtst_vec,
       .prefer_i64 = TCG_TARGET_REG_BITS == 64,
+      .opc = INDEX_op_cmp_vec,
       .vece = MO_64 },
 };
 
-- 
2.17.1


Re: [Qemu-devel] [PATCH 01/38] target/arm: Fill in .opc for cmtst_op
Posted by David Hildenbrand 6 years, 9 months ago
On 20.04.19 09:34, Richard Henderson wrote:
> This allows us to fall back to integers if the tcg backend
> does not support comparisons in the given vece.
> 
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  target/arm/translate.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/target/arm/translate.c b/target/arm/translate.c
> index d408e4d7ef..13e2dc6562 100644
> --- a/target/arm/translate.c
> +++ b/target/arm/translate.c
> @@ -6140,16 +6140,20 @@ static void gen_cmtst_vec(unsigned vece, TCGv_vec d, TCGv_vec a, TCGv_vec b)
>  const GVecGen3 cmtst_op[4] = {
>      { .fni4 = gen_helper_neon_tst_u8,
>        .fniv = gen_cmtst_vec,
> +      .opc = INDEX_op_cmp_vec,
>        .vece = MO_8 },
>      { .fni4 = gen_helper_neon_tst_u16,
>        .fniv = gen_cmtst_vec,
> +      .opc = INDEX_op_cmp_vec,
>        .vece = MO_16 },
>      { .fni4 = gen_cmtst_i32,
>        .fniv = gen_cmtst_vec,
> +      .opc = INDEX_op_cmp_vec,
>        .vece = MO_32 },
>      { .fni8 = gen_cmtst_i64,
>        .fniv = gen_cmtst_vec,
>        .prefer_i64 = TCG_TARGET_REG_BITS == 64,
> +      .opc = INDEX_op_cmp_vec,
>        .vece = MO_64 },
>  };
>  
> 

Reviewed-by: David Hildenbrand <david@redhat.com>

-- 

Thanks,

David / dhildenb