target/arm: Use TRANS_FEAT for do_EXT

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220527181907.189259-55-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Richard Henderson 2022-05-27 11:18:07 -07:00 committed by Peter Maydell
parent d95040e3df
commit c799c115db

View File

@ -2081,18 +2081,8 @@ static bool do_EXT(DisasContext *s, int rd, int rn, int rm, int imm)
return true; return true;
} }
static bool trans_EXT(DisasContext *s, arg_EXT *a) TRANS_FEAT(EXT, aa64_sve, do_EXT, a->rd, a->rn, a->rm, a->imm)
{ TRANS_FEAT(EXT_sve2, aa64_sve2, do_EXT, a->rd, a->rn, (a->rn + 1) % 32, a->imm)
return do_EXT(s, a->rd, a->rn, a->rm, a->imm);
}
static bool trans_EXT_sve2(DisasContext *s, arg_rri *a)
{
if (!dc_isar_feature(aa64_sve2, s)) {
return false;
}
return do_EXT(s, a->rd, a->rn, (a->rn + 1) % 32, a->imm);
}
/* /*
*** SVE Permute - Unpredicated Group *** SVE Permute - Unpredicated Group