qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 21/37] target/i386: reimplement 0x0f 0xd8-0xdf, 0xe8-0xef, 0


From: Richard Henderson
Subject: Re: [PATCH 21/37] target/i386: reimplement 0x0f 0xd8-0xdf, 0xe8-0xef, 0xf8-0xff, add AVX
Date: Mon, 12 Sep 2022 14:19:31 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 9/12/22 00:04, Paolo Bonzini wrote:
--- a/target/i386/tcg/emit.c.inc
+++ b/target/i386/tcg/emit.c.inc
@@ -290,6 +290,20 @@ BINARY_INT_MMX(PUNPCKHWD,  punpckhwd)
  BINARY_INT_MMX(PUNPCKHDQ,  punpckhdq)
  BINARY_INT_MMX(PACKSSDW,   packssdw)
+BINARY_INT_MMX(PSUBUSB, psubusb)
+BINARY_INT_MMX(PSUBUSW, psubusw)

tcg_gen_gvec_ussub

+BINARY_INT_MMX(PMINUB,  pminub)

tcg_gen_gvec_umin

+BINARY_INT_MMX(PADDUSB, paddusb)
+BINARY_INT_MMX(PADDUSW, paddusw)

tcg_gen_gvec_usadd

+BINARY_INT_MMX(PMAXUB,  pmaxub)

tcg_gen_gvec_umax

+BINARY_INT_MMX(PSUBSB, psubsb)
+BINARY_INT_MMX(PSUBSW, psubsw)

tcg_gen_gvec_sssub

+BINARY_INT_MMX(PMINSW, pminsw)

tcg_gen_gvec_smin

+BINARY_INT_MMX(PADDSB, paddsb)
+BINARY_INT_MMX(PADDSW, paddsw)

tcg_gen_gvec_ssadd

+BINARY_INT_MMX(PMAXSW, pmaxsw)

tcg_gen_gvec_smax

+static void gen_PADDB(DisasContext *s, CPUX86State *env, X86DecodedInsn 
*decode)
+{
+    int vec_len = sse_vec_len(s, decode);
+
+    tcg_gen_gvec_add(MO_8,
+                     decode->op[0].offset, decode->op[1].offset,
+                     decode->op[2].offset, vec_len, vec_len);
+}

Worth the creation of a helper and/or macro to reduce duplication?


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]