[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 050/117] target/arm: Use TRANS_FEAT for do_zpzzz_ool
From: |
Peter Maydell |
Subject: |
[PULL 050/117] target/arm: Use TRANS_FEAT for do_zpzzz_ool |
Date: |
Mon, 30 May 2022 17:06:01 +0100 |
From: Richard Henderson <richard.henderson@linaro.org>
Remove the DO_ZPZZZ macro, as it had just the two uses.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220527181907.189259-48-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target/arm/translate-sve.c | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/target/arm/translate-sve.c b/target/arm/translate-sve.c
index 98f9cfa86c9..52bbd1a4faa 100644
--- a/target/arm/translate-sve.c
+++ b/target/arm/translate-sve.c
@@ -1071,20 +1071,17 @@ static bool do_zpzzz_ool(DisasContext *s, arg_rprrr_esz
*a,
return true;
}
-#define DO_ZPZZZ(NAME, name) \
-static bool trans_##NAME(DisasContext *s, arg_rprrr_esz *a) \
-{ \
- static gen_helper_gvec_5 * const fns[4] = { \
- gen_helper_sve_##name##_b, gen_helper_sve_##name##_h, \
- gen_helper_sve_##name##_s, gen_helper_sve_##name##_d, \
- }; \
- return do_zpzzz_ool(s, a, fns[a->esz]); \
-}
+static gen_helper_gvec_5 * const mla_fns[4] = {
+ gen_helper_sve_mla_b, gen_helper_sve_mla_h,
+ gen_helper_sve_mla_s, gen_helper_sve_mla_d,
+};
+TRANS_FEAT(MLA, aa64_sve, do_zpzzz_ool, a, mla_fns[a->esz])
-DO_ZPZZZ(MLA, mla)
-DO_ZPZZZ(MLS, mls)
-
-#undef DO_ZPZZZ
+static gen_helper_gvec_5 * const mls_fns[4] = {
+ gen_helper_sve_mls_b, gen_helper_sve_mls_h,
+ gen_helper_sve_mls_s, gen_helper_sve_mls_d,
+};
+TRANS_FEAT(MLS, aa64_sve, do_zpzzz_ool, a, mls_fns[a->esz])
/*
*** SVE Index Generation Group
--
2.25.1
- [PULL 041/117] target/arm: Introduce gen_gvec_fn_zzi, (continued)
- [PULL 041/117] target/arm: Introduce gen_gvec_fn_zzi, Peter Maydell, 2022/05/30
- [PULL 037/117] target/arm: Use TRANS_FEAT for do_sve2_fn_zzz, Peter Maydell, 2022/05/30
- [PULL 047/117] target/arm: Use TRANS_FEAT for do_shift_imm, Peter Maydell, 2022/05/30
- [PULL 053/117] target/arm: Use TRANS_FEAT for do_adr, Peter Maydell, 2022/05/30
- [PULL 055/117] target/arm: Use TRANS_FEAT for RDFFR, WRFFR, Peter Maydell, 2022/05/30
- [PULL 057/117] target/arm: Use TRANS_FEAT for do_EXT, Peter Maydell, 2022/05/30
- [PULL 038/117] target/arm: Use TRANS_FEAT for RAX1, Peter Maydell, 2022/05/30
- [PULL 044/117] target/arm: Introduce gen_gvec_fn_arg_zzi, Peter Maydell, 2022/05/30
- [PULL 048/117] target/arm: Introduce do_shift_zpzi, Peter Maydell, 2022/05/30
- [PULL 043/117] target/arm: Hoist sve access check through do_sel_z, Peter Maydell, 2022/05/30
- [PULL 050/117] target/arm: Use TRANS_FEAT for do_zpzzz_ool,
Peter Maydell <=
- [PULL 059/117] target/arm: Use TRANS_FEAT for do_perm_pred2, Peter Maydell, 2022/05/30
- [PULL 063/117] target/arm: Use TRANS_FEAT for do_clast_vector, Peter Maydell, 2022/05/30
- [PULL 083/117] target/arm: Implement NOT (prediates) alias, Peter Maydell, 2022/05/30
- [PULL 049/117] target/arm: Use TRANS_FEAT for do_shift_zpzi, Peter Maydell, 2022/05/30
- [PULL 042/117] target/arm: Use TRANS_FEAT for do_zz_dbm, Peter Maydell, 2022/05/30
- [PULL 045/117] target/arm: Use TRANS_FEAT for do_sve2_fn2i, Peter Maydell, 2022/05/30
- [PULL 054/117] target/arm: Use TRANS_FEAT for do_predset, Peter Maydell, 2022/05/30
- [PULL 056/117] target/arm: Use TRANS_FEAT for do_pfirst_pnext, Peter Maydell, 2022/05/30
- [PULL 068/117] target/arm: Use TRANS_FEAT for SPLICE, Peter Maydell, 2022/05/30
- [PULL 062/117] target/arm: Use TRANS_FEAT for do_zip, do_zip_q, Peter Maydell, 2022/05/30