]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
target/hppa: mask privilege bits in mfia
authorSven Schnelle <svens@stackframe.org>
Tue, 19 Mar 2024 16:19:20 +0000 (17:19 +0100)
committerMichael Tokarev <mjt@tls.msk.ru>
Thu, 21 Mar 2024 21:32:51 +0000 (00:32 +0300)
mfia should return only the iaoq bits without privilege
bits.

Fixes: 98a9cb792c8 ("target-hppa: Implement system and memory-management insns")
Signed-off-by: Sven Schnelle <svens@stackframe.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Helge Deller <deller@gmx.de>
Message-Id: <20240319161921.487080-6-svens@stackframe.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
(cherry picked from commit b5e0b3a53c983c4a9620a44a6a557b389e589218)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
target/hppa/translate.c

index ccf03b1ce73f1b822c8af45f3dc754230e3f9436..19c4df8960e5b0d55bbb6cde8f45e49cf993ffed 100644 (file)
@@ -2011,7 +2011,7 @@ static bool trans_mfia(DisasContext *ctx, arg_mfia *a)
 {
     unsigned rt = a->t;
     TCGv_i64 tmp = dest_gpr(ctx, rt);
-    tcg_gen_movi_i64(tmp, ctx->iaoq_f);
+    tcg_gen_movi_i64(tmp, ctx->iaoq_f & ~3ULL);
     save_gpr(ctx, rt, tmp);
 
     cond_free(&ctx->null_cond);