提交 6c78f29a 编写于 作者: J Juergen Lock 提交者: Andreas Färber

cpu-exec: Also reload CPUClass *cc after longjmp return in cpu_exec()

Local variable CPUClass *cc needs to be reloaded after return from longjmp,
too.  (This fixes a mips-softmmu crash observed on FreeBSD when QEMU is
built with clang.)
Reported-by: NDimitry Andric <dim@FreeBSD.org>
Signed-off-by: NJuergen Lock <nox@jelal.kn-bremen.de>
Signed-off-by: NAndreas Färber <afaerber@suse.de>
上级 f8e6a11a
......@@ -681,6 +681,10 @@ int cpu_exec(CPUArchState *env)
* local variables as longjmp is marked 'noreturn'. */
cpu = current_cpu;
env = cpu->env_ptr;
#if !(defined(CONFIG_USER_ONLY) && \
(defined(TARGET_M68K) || defined(TARGET_PPC) || defined(TARGET_S390X)))
cc = CPU_GET_CLASS(cpu);
#endif
}
} /* for(;;) */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册