aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-10-24 22:54:15 +1000
committerRichard Henderson <richard.henderson@linaro.org>2022-11-01 08:31:41 +1100
commit5813c5c74a755fd0c1b10be38c6fdf5c54c468e4 (patch)
tree2280f346d1eb0f48c5a7c30e270397a44cfbddac
parentf484f213c9f4ae1cd30ebdaadc7b539d745d39fb (diff)
downloadqemu-5813c5c74a755fd0c1b10be38c6fdf5c54c468e4.zip
qemu-5813c5c74a755fd0c1b10be38c6fdf5c54c468e4.tar.gz
qemu-5813c5c74a755fd0c1b10be38c6fdf5c54c468e4.tar.bz2
target/openrisc: Always exit after mtspr npc
We have called cpu_restore_state asserting will_exit. Do not go back on that promise. This affects icount. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r--target/openrisc/sys_helper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target/openrisc/sys_helper.c b/target/openrisc/sys_helper.c
index 09b3c97..a3508e4 100644
--- a/target/openrisc/sys_helper.c
+++ b/target/openrisc/sys_helper.c
@@ -51,8 +51,8 @@ void HELPER(mtspr)(CPUOpenRISCState *env, target_ulong spr, target_ulong rb)
if (env->pc != rb) {
env->pc = rb;
env->dflag = 0;
- cpu_loop_exit(cs);
}
+ cpu_loop_exit(cs);
break;
case TO_SPR(0, 17): /* SR */