diff options
author | Peter Maydell | 2015-09-11 19:01:56 +0200 |
---|---|---|
committer | Peter Maydell | 2015-09-11 19:01:56 +0200 |
commit | 8f6e82e4ecec9bc2726725275a138bc30f3ffc81 (patch) | |
tree | b4407948b8bd54589c0b130512f39441a86952bb /cpu-exec.c | |
parent | scripts/qemu-gdb: Add brief comment describing usage (diff) | |
parent | cpu-exec: introduce loop exit with restore function (diff) | |
download | qemu-8f6e82e4ecec9bc2726725275a138bc30f3ffc81.tar.gz qemu-8f6e82e4ecec9bc2726725275a138bc30f3ffc81.tar.xz qemu-8f6e82e4ecec9bc2726725275a138bc30f3ffc81.zip |
Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20150911' into staging
queued tcg related patches
# gpg: Signature made Fri 11 Sep 2015 16:17:00 BST using RSA key ID 4DD0279B
# gpg: Good signature from "Richard Henderson <rth7680@gmail.com>"
# gpg: aka "Richard Henderson <rth@redhat.com>"
# gpg: aka "Richard Henderson <rth@twiddle.net>"
* remotes/rth/tags/pull-tcg-20150911:
cpu-exec: introduce loop exit with restore function
softmmu: remove now unused functions
softmmu: add helper function to pass through retaddr
tlb: Add "ifetch" argument to cpu_mmu_index()
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'cpu-exec.c')
-rw-r--r-- | cpu-exec.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/cpu-exec.c b/cpu-exec.c index 713540fc8f..6b6942de69 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -134,6 +134,15 @@ void cpu_loop_exit(CPUState *cpu) siglongjmp(cpu->jmp_env, 1); } +void cpu_loop_exit_restore(CPUState *cpu, uintptr_t pc) +{ + if (pc) { + cpu_restore_state(cpu, pc); + } + cpu->current_tb = NULL; + siglongjmp(cpu->jmp_env, 1); +} + /* exit the current TB from a signal handler. The host registers are restored in a state compatible with the CPU emulator */ |