[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 03/81] target/arm: Fix sve_punpk_p vs odd vector lengths
From: |
Richard Henderson |
Subject: |
[PATCH v3 03/81] target/arm: Fix sve_punpk_p vs odd vector lengths |
Date: |
Fri, 18 Sep 2020 11:36:33 -0700 |
Wrote too much with punpk1 with vl % 512 != 0.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reported-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/arm/sve_helper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/target/arm/sve_helper.c b/target/arm/sve_helper.c
index b8651ae173..c983cd4356 100644
--- a/target/arm/sve_helper.c
+++ b/target/arm/sve_helper.c
@@ -2104,11 +2104,11 @@ void HELPER(sve_punpk_p)(void *vd, void *vn, uint32_t
pred_desc)
high = oprsz >> 1;
}
- if ((high & 3) == 0) {
+ if ((oprsz & 7) == 0) {
uint32_t *n = vn;
high >>= 2;
- for (i = 0; i < DIV_ROUND_UP(oprsz, 8); i++) {
+ for (i = 0; i < oprsz / 8; i++) {
uint64_t nn = n[H4(high + i)];
d[i] = expand_bits(nn, 0);
}
--
2.25.1
- [PATCH v3 00/81] target/arm: Implement SVE2, Richard Henderson, 2020/09/18
- [PATCH v3 01/81] target/arm: Fix sve_uzp_p vs odd vector lengths, Richard Henderson, 2020/09/18
- [PATCH v3 02/81] target/arm: Fix sve_zip_p vs odd vector lengths, Richard Henderson, 2020/09/18
- [PATCH v3 03/81] target/arm: Fix sve_punpk_p vs odd vector lengths,
Richard Henderson <=
- [PATCH v3 04/81] target/arm: Add ID_AA64ZFR0 fields and isar_feature_aa64_sve2, Richard Henderson, 2020/09/18
- [PATCH v3 06/81] target/arm: Implement SVE2 integer pairwise add and accumulate long, Richard Henderson, 2020/09/18
- [PATCH v3 05/81] target/arm: Implement SVE2 Integer Multiply - Unpredicated, Richard Henderson, 2020/09/18
- [PATCH v3 07/81] target/arm: Implement SVE2 integer unary operations (predicated), Richard Henderson, 2020/09/18
- [PATCH v3 08/81] target/arm: Split out saturating/rounding shifts from neon, Richard Henderson, 2020/09/18
- [PATCH v3 11/81] target/arm: Implement SVE2 integer pairwise arithmetic, Richard Henderson, 2020/09/18
- [PATCH v3 09/81] target/arm: Implement SVE2 saturating/rounding bitwise shift left (predicated), Richard Henderson, 2020/09/18
- [PATCH v3 10/81] target/arm: Implement SVE2 integer halving add/subtract (predicated), Richard Henderson, 2020/09/18
- [PATCH v3 13/81] target/arm: Implement SVE2 integer add/subtract long, Richard Henderson, 2020/09/18
- [PATCH v3 14/81] target/arm: Implement SVE2 integer add/subtract interleaved long, Richard Henderson, 2020/09/18