qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v2 20/46] target/loongarch: Implement vext2xv


From: Richard Henderson
Subject: Re: [PATCH v2 20/46] target/loongarch: Implement vext2xv
Date: Fri, 7 Jul 2023 22:19:42 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0

On 6/30/23 08:58, Song Gao wrote:
+#define VEXT2XV(NAME, BIT, E1, E2)                        \
+void HELPER(NAME)(CPULoongArchState *env, uint32_t oprsz, \
+                  uint32_t vd, uint32_t vj)               \
+{                                                         \
+    int i;                                                \
+    VReg *Vd = &(env->fpr[vd].vreg);                      \
+    VReg *Vj = &(env->fpr[vj].vreg);                      \
+    VReg temp;                                            \
+                                                          \
+    for (i = 0; i < LASX_LEN / BIT; i++) {                \
+        temp.E1(i) = Vj->E2(i);                           \
+    }                                                     \
+    *Vd = temp;                                           \
+}

So unlike VEXT(H), this does compress in order?

Anyway, function signature and iteration without LASX_LEN.
Isn't there a 128-bit helper to merge this with?


r~



reply via email to

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