|
From: | Song Gao |
Subject: | Re: [PATCH v2 20/46] target/loongarch: Implement vext2xv |
Date: | Sat, 8 Jul 2023 15:24:54 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux loongarch64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 |
Hi, Richard 在 2023/7/8 上午5:19, Richard Henderson 写道:
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?
Yes.
Anyway, function signature and iteration without LASX_LEN. Isn't there a 128-bit helper to merge this with?
There is no similar 128 bit instructions. Thanks. Song Gao
[Prev in Thread] | Current Thread | [Next in Thread] |