]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
target/hppa: Clear psw_n for BE on use_nullify_skip path
authorRichard Henderson <richard.henderson@linaro.org>
Tue, 26 Mar 2024 18:34:35 +0000 (08:34 -1000)
committerMichael Tokarev <mjt@tls.msk.ru>
Tue, 9 Apr 2024 17:09:20 +0000 (20:09 +0300)
Along this path we have already skipped the insn to be
nullified, so the subsequent insn should be executed.

Cc: qemu-stable@nongnu.org
Reported-by: Sven Schnelle <svens@stackframe.org>
Tested-by: Sven Schnelle <svens@stackframe.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
(cherry picked from commit 4a3aa11e1fb25c28c24a43fd2835c429b00a463d)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
target/hppa/translate.c

index 1af77473da8e38d6063faec3be30841e04387814..ee68d2f834f17117cf09b77177954b6b04b477f5 100644 (file)
@@ -3473,6 +3473,7 @@ static bool trans_be(DisasContext *ctx, arg_be *a)
         tcg_gen_addi_reg(cpu_iaoq_b, cpu_iaoq_f, 4);
         tcg_gen_mov_i64(cpu_iasq_f, new_spc);
         tcg_gen_mov_i64(cpu_iasq_b, cpu_iasq_f);
+        nullify_set(ctx, 0);
     } else {
         copy_iaoq_entry(cpu_iaoq_f, ctx->iaoq_b, cpu_iaoq_b);
         if (ctx->iaoq_b == -1) {