[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 033/114] target/arm: Implement SVE2 integer add/subtract interleav
From: |
Peter Maydell |
Subject: |
[PULL 033/114] target/arm: Implement SVE2 integer add/subtract interleaved long |
Date: |
Tue, 25 May 2021 16:02:03 +0100 |
From: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20210525010358.152808-12-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target/arm/sve.decode | 6 ++++++
target/arm/translate-sve.c | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/target/arm/sve.decode b/target/arm/sve.decode
index fbfd57b23a8..12be0584a8c 100644
--- a/target/arm/sve.decode
+++ b/target/arm/sve.decode
@@ -1178,3 +1178,9 @@ SABDLB 01000101 .. 0 ..... 00 1100 ..... .....
@rd_rn_rm
SABDLT 01000101 .. 0 ..... 00 1101 ..... ..... @rd_rn_rm
UABDLB 01000101 .. 0 ..... 00 1110 ..... ..... @rd_rn_rm
UABDLT 01000101 .. 0 ..... 00 1111 ..... ..... @rd_rn_rm
+
+## SVE2 integer add/subtract interleaved long
+
+SADDLBT 01000101 .. 0 ..... 1000 00 ..... ..... @rd_rn_rm
+SSUBLBT 01000101 .. 0 ..... 1000 10 ..... ..... @rd_rn_rm
+SSUBLTB 01000101 .. 0 ..... 1000 11 ..... ..... @rd_rn_rm
diff --git a/target/arm/translate-sve.c b/target/arm/translate-sve.c
index 22983b3b85a..ae8323adb7d 100644
--- a/target/arm/translate-sve.c
+++ b/target/arm/translate-sve.c
@@ -6016,3 +6016,7 @@ DO_SVE2_ZZZ_TB(SABDLT, sabdl, true, true)
DO_SVE2_ZZZ_TB(UADDLT, uaddl, true, true)
DO_SVE2_ZZZ_TB(USUBLT, usubl, true, true)
DO_SVE2_ZZZ_TB(UABDLT, uabdl, true, true)
+
+DO_SVE2_ZZZ_TB(SADDLBT, saddl, false, true)
+DO_SVE2_ZZZ_TB(SSUBLBT, ssubl, false, true)
+DO_SVE2_ZZZ_TB(SSUBLTB, ssubl, true, false)
--
2.20.1
- [PULL 029/114] target/arm: Implement SVE2 integer halving add/subtract (predicated), (continued)
- [PULL 029/114] target/arm: Implement SVE2 integer halving add/subtract (predicated), Peter Maydell, 2021/05/25
- [PULL 027/114] target/arm: Split out saturating/rounding shifts from neon, Peter Maydell, 2021/05/25
- [PULL 034/114] target/arm: Implement SVE2 integer add/subtract wide, Peter Maydell, 2021/05/25
- [PULL 040/114] target/arm: Implement SVE2 complex integer add, Peter Maydell, 2021/05/25
- [PULL 039/114] target/arm: Implement SVE2 bitwise permute, Peter Maydell, 2021/05/25
- [PULL 036/114] target/arm: Implement SVE2 PMULLB, PMULLT, Peter Maydell, 2021/05/25
- [PULL 047/114] target/arm: Implement SVE2 floating-point pairwise, Peter Maydell, 2021/05/25
- [PULL 032/114] target/arm: Implement SVE2 integer add/subtract long, Peter Maydell, 2021/05/25
- [PULL 038/114] target/arm: Implement SVE2 bitwise exclusive-or interleaved, Peter Maydell, 2021/05/25
- [PULL 037/114] target/arm: Implement SVE2 bitwise shift left long, Peter Maydell, 2021/05/25
- [PULL 033/114] target/arm: Implement SVE2 integer add/subtract interleaved long,
Peter Maydell <=
- [PULL 041/114] target/arm: Implement SVE2 integer absolute difference and accumulate long, Peter Maydell, 2021/05/25
- [PULL 049/114] target/arm: Implement SVE2 SQSHRUN, SQRSHRUN, Peter Maydell, 2021/05/25
- [PULL 046/114] target/arm: Implement SVE2 saturating extract narrow, Peter Maydell, 2021/05/25
- [PULL 050/114] target/arm: Implement SVE2 UQSHRN, UQRSHRN, Peter Maydell, 2021/05/25
- [PULL 053/114] target/arm: Implement SVE2 WHILERW, WHILEWR, Peter Maydell, 2021/05/25
- [PULL 052/114] target/arm: Implement SVE2 WHILEGT, WHILEGE, WHILEHI, WHILEHS, Peter Maydell, 2021/05/25
- [PULL 055/114] target/arm: Implement SVE2 MATCH, NMATCH, Peter Maydell, 2021/05/25
- [PULL 042/114] target/arm: Implement SVE2 integer add/subtract long with carry, Peter Maydell, 2021/05/25
- [PULL 057/114] target/arm: Implement SVE2 saturating multiply-add high, Peter Maydell, 2021/05/25
- [PULL 061/114] target/arm: Implement SVE2 RADDHNB, RADDHNT, Peter Maydell, 2021/05/25