]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
target/arm: Set TCGCPUOps.restore_state_to_opc for v7m
authorEvgeny Ermakov <evgeny.v.ermakov@gmail.com>
Tue, 29 Nov 2022 20:41:46 +0000 (12:41 -0800)
committerStefan Hajnoczi <stefanha@redhat.com>
Tue, 29 Nov 2022 23:15:26 +0000 (18:15 -0500)
This setting got missed, breaking v7m.

Fixes: 56c6c98df85c ("target/arm: Convert to tcg_ops restore_state_to_opc")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1347
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Evgeny Ermakov <evgeny.v.ermakov@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20221129204146.550394-1-richard.henderson@linaro.org>

target/arm/cpu.c
target/arm/cpu_tcg.c
target/arm/internals.h

index a021df9e9e839fa56ebd5e5db7eec1778c7fb99f..38d066c294d8574c0cb4358327f965aad5d8b9ce 100644 (file)
@@ -91,9 +91,9 @@ void arm_cpu_synchronize_from_tb(CPUState *cs,
     }
 }
 
-static void arm_restore_state_to_opc(CPUState *cs,
-                                     const TranslationBlock *tb,
-                                     const uint64_t *data)
+void arm_restore_state_to_opc(CPUState *cs,
+                              const TranslationBlock *tb,
+                              const uint64_t *data)
 {
     CPUARMState *env = cs->env_ptr;
 
index 60ff539fa18efbdc9457aca442ec4abc62b62b2b..9a2cef7d05a1a557f7ff4f7c2429ee9435068ef4 100644 (file)
@@ -1035,6 +1035,7 @@ static const struct TCGCPUOps arm_v7m_tcg_ops = {
     .initialize = arm_translate_init,
     .synchronize_from_tb = arm_cpu_synchronize_from_tb,
     .debug_excp_handler = arm_debug_excp_handler,
+    .restore_state_to_opc = arm_restore_state_to_opc,
 
 #ifdef CONFIG_USER_ONLY
     .record_sigsegv = arm_cpu_record_sigsegv,
index d9121d9ff8433d205ec7e3c429f5839f42286bf3..161e42d50f4d261ed885b443f941ff640415a0e4 100644 (file)
@@ -185,6 +185,10 @@ static inline int r14_bank_number(int mode)
 void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu);
 void arm_translate_init(void);
 
+void arm_restore_state_to_opc(CPUState *cs,
+                              const TranslationBlock *tb,
+                              const uint64_t *data);
+
 #ifdef CONFIG_TCG
 void arm_cpu_synchronize_from_tb(CPUState *cs, const TranslationBlock *tb);
 #endif /* CONFIG_TCG */