From: bellard Date: Mon, 5 Dec 2005 19:56:07 +0000 (+0000) Subject: correct MIPS state restoring (Daniel Jacobowitz) X-Git-Tag: TizenStudio_2.0_p2.3~14532 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=30d6cb8479163676bf27bf73464a899db985f1f9;p=sdk%2Femulator%2Fqemu.git correct MIPS state restoring (Daniel Jacobowitz) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1686 c046a42c-6fe2-441c-8c8c-71466251a162 --- diff --git a/exec-all.h b/exec-all.h index 0835135..58debaa 100644 --- a/exec-all.h +++ b/exec-all.h @@ -62,6 +62,7 @@ extern target_ulong gen_opc_npc[OPC_BUF_SIZE]; extern uint8_t gen_opc_cc_op[OPC_BUF_SIZE]; extern uint8_t gen_opc_instr_start[OPC_BUF_SIZE]; extern target_ulong gen_opc_jump_pc[2]; +extern uint32_t gen_opc_hflags[OPC_BUF_SIZE]; typedef void (GenOpFunc)(void); typedef void (GenOpFunc1)(long); diff --git a/translate-all.c b/translate-all.c index cac91c5..0de429f 100644 --- a/translate-all.c +++ b/translate-all.c @@ -53,6 +53,8 @@ uint8_t gen_opc_cc_op[OPC_BUF_SIZE]; #elif defined(TARGET_SPARC) target_ulong gen_opc_npc[OPC_BUF_SIZE]; target_ulong gen_opc_jump_pc[2]; +#elif defined(TARGET_MIPS) +uint32_t gen_opc_hflags[OPC_BUF_SIZE]; #endif int code_copy_enabled = 1; @@ -302,6 +304,8 @@ int cpu_restore_state(TranslationBlock *tb, } #elif defined(TARGET_MIPS) env->PC = gen_opc_pc[j]; + env->hflags &= ~MIPS_HFLAG_BMASK; + env->hflags |= gen_opc_hflags[j]; #endif return 0; }