]> 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>
Mon, 1 Apr 2024 16:23:57 +0000 (19:23 +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 19c4df8960e5b0d55bbb6cde8f45e49cf993ffed..d82d3c8748177a3b48685700be952c4c9fcf258b 100644 (file)
@@ -3819,6 +3819,7 @@ static bool trans_be(DisasContext *ctx, arg_be *a)
         copy_iaoq_entry(ctx, cpu_iaoq_b, -1, tmp);
         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(ctx, cpu_iaoq_f, ctx->iaoq_b, cpu_iaoq_b);
         if (ctx->iaoq_b == -1) {