summaryrefslogtreecommitdiffstats
path: root/qom
diff options
context:
space:
mode:
authorRichard Henderson2017-10-13 19:50:02 +0200
committerRichard Henderson2017-10-24 22:53:41 +0200
commit9b990ee5a3cc6aa38f81266fb0c6ef37a36c45b9 (patch)
treeed59ca42a7bfa9d7bac6785f2ad2852d2ef919f9 /qom
parenttcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK (diff)
downloadqemu-9b990ee5a3cc6aa38f81266fb0c6ef37a36c45b9.tar.gz
qemu-9b990ee5a3cc6aa38f81266fb0c6ef37a36c45b9.tar.xz
qemu-9b990ee5a3cc6aa38f81266fb0c6ef37a36c45b9.zip
tcg: Add CPUState cflags_next_tb
We were generating code during tb_invalidate_phys_page_range, check_watchpoint, cpu_io_recompile, and (seemingly) discarding the TB, assuming that it would magically be picked up during the next iteration through the cpu_exec loop. Instead, record the desired cflags in CPUState so that we request the proper TB so that there is no more magic. Reviewed-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'qom')
-rw-r--r--qom/cpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/qom/cpu.c b/qom/cpu.c
index 54c9452b1c..e42d9a7f9e 100644
--- a/qom/cpu.c
+++ b/qom/cpu.c
@@ -301,6 +301,7 @@ static void cpu_common_reset(CPUState *cpu)
cpu->can_do_io = 1;
cpu->exception_index = -1;
cpu->crash_occurred = false;
+ cpu->cflags_next_tb = -1;
if (tcg_enabled()) {
cpu_tb_jmp_cache_clear(cpu);