aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-05-27 11:18:35 -0700
committerPeter Maydell <peter.maydell@linaro.org>2022-05-30 17:05:09 +0100
commit4b0b37e900700889f7cecd812bd05005fb2fbd57 (patch)
treec2974cf4296aa34feb29ca86cbfdcd3b3f749679
parent29693f5f97c716718f05e601ea2b954b4a1236de (diff)
downloadqemu-4b0b37e900700889f7cecd812bd05005fb2fbd57.zip
qemu-4b0b37e900700889f7cecd812bd05005fb2fbd57.tar.gz
qemu-4b0b37e900700889f7cecd812bd05005fb2fbd57.tar.bz2
target/arm: Use TRANS_FEAT for MOVPRFX
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20220527181907.189259-83-richard.henderson@linaro.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--target/arm/translate-sve.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/target/arm/translate-sve.c b/target/arm/translate-sve.c
index a040d69..6e8d8d5 100644
--- a/target/arm/translate-sve.c
+++ b/target/arm/translate-sve.c
@@ -6054,20 +6054,9 @@ static bool trans_PRF_rr(DisasContext *s, arg_PRF_rr *a)
* In the meantime, just emit the moves.
*/
-static bool trans_MOVPRFX(DisasContext *s, arg_MOVPRFX *a)
-{
- return do_mov_z(s, a->rd, a->rn);
-}
-
-static bool trans_MOVPRFX_m(DisasContext *s, arg_rpr_esz *a)
-{
- return do_sel_z(s, a->rd, a->rn, a->rd, a->pg, a->esz);
-}
-
-static bool trans_MOVPRFX_z(DisasContext *s, arg_rpr_esz *a)
-{
- return do_movz_zpz(s, a->rd, a->rn, a->pg, a->esz, false);
-}
+TRANS_FEAT(MOVPRFX, aa64_sve, do_mov_z, a->rd, a->rn)
+TRANS_FEAT(MOVPRFX_m, aa64_sve, do_sel_z, a->rd, a->rn, a->rd, a->pg, a->esz)
+TRANS_FEAT(MOVPRFX_z, aa64_sve, do_movz_zpz, a->rd, a->rn, a->pg, a->esz, false)
/*
* SVE2 Integer Multiply - Unpredicated