|
From: | Richard Henderson |
Subject: | Re: [RFC PATCH 20/43] target/loongarch: Implement vsigncov |
Date: | Sat, 24 Dec 2022 10:18:51 -0800 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 |
On 12/24/22 00:16, Song Gao wrote:
+static void do_vsigncov(vec_t *Vd, vec_t *Vj, vec_t *Vk, int bit, int n) +{ + switch (bit) { + case 8: + Vd->B[n] = (Vj->B[n] == 0x0) ? 0 : + (Vj->B[n] < 0) ? -Vk->B[n] : Vk->B[n]; + break; + case 16: + Vd->H[n] = (Vj->H[n] == 0x0) ? 0 : + (Vj->H[n] < 0) ? -Vk->H[n] : Vk->H[n]; + break; + case 32: + Vd->W[n] = (Vj->W[n] == 0x0) ? 0 : + (Vj->W[n] < 0) ? -Vk->W[n] : Vk->W[n]; + break; + case 64: + Vd->D[n] = (Vj->D[n] == 0x0) ? 0 : + (Vj->D[n] < 0) ? -Vk->D[n] : Vk->W[n];
Typo in this last line. Can be implemented with neg + cmpsel * 2. r~
[Prev in Thread] | Current Thread | [Next in Thread] |