On 12/5/24 15:27, Peter Maydell wrote:
On Thu, 5 Dec 2024 at 21:21, Peter Maydell <peter.mayd...@linaro.org> wrote:
On Sun, 1 Dec 2024 at 15:17, Richard Henderson
<richard.hender...@linaro.org> wrote:
Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
---
target/arm/tcg/translate-a64.c | 287 +++++++++++++--------------------
target/arm/tcg/a64.decode | 8 +
2 files changed, 116 insertions(+), 179 deletions(-)
+/* FCMP, FCMPE */
+static bool trans_FCMP(DisasContext *s, arg_FCMP *a)
+{
+ int check;
+
+ if (a->z && a->rm != 0) {
+ return false;
We did not check this case before, and the pseudocode in the
Arm ARM doesn't check it either (there's a comment for the rm
field that says "ignored when opc<0> == '1'").
...this probably falls under the "RES0 UNPREDICTABLE" handling,
but "ignore the field" is permitted for that. If we really want
to change our choice of UNPREDICTABLE here I think we should do
it separately from this refactoring.
Fair. I've removed it for now.
r~