]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
target/hppa: 64-bit CPUs start with space register hashing enabled
authorHelge Deller <deller@gmx.de>
Tue, 28 Jan 2025 19:08:17 +0000 (20:08 +0100)
committerHelge Deller <deller@gmx.de>
Thu, 30 Jan 2025 12:37:20 +0000 (13:37 +0100)
Turn on space register hashing for 64-bit CPUs when reset.

Signed-off-by: Helge Deller <deller@gmx.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
target/hppa/cpu.c

index b0bc9d35e4c03930381f784b50e5fbc04b727d44..c86f9190d2647853fe75d527bc34836b0c6325e7 100644 (file)
@@ -28,6 +28,7 @@
 #include "exec/translation-block.h"
 #include "fpu/softfloat.h"
 #include "tcg/tcg.h"
+#include "hw/hppa/hppa_hardware.h"
 
 static void hppa_cpu_set_pc(CPUState *cs, vaddr value)
 {
@@ -217,6 +218,10 @@ static void hppa_cpu_reset_hold(Object *obj, ResetType type)
     memset(env, 0, offsetof(CPUHPPAState, end_reset_fields));
 
     cpu_hppa_loaded_fr0(env);
+
+    /* 64-bit machines start with space-register hashing enabled in %dr2 */
+    env->dr[2] = hppa_is_pa20(env) ? HPPA64_DIAG_SPHASH_ENABLE : 0;
+
     cpu_hppa_put_psw(env, PSW_M);
 }