From 21b20814ed882114a0d5b658cfdb1fc60c761816 Mon Sep 17 00:00:00 2001
From: edgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Date: Thu, 15 May 2008 19:54:00 +0000
Subject: [PATCH] Always process real timers regardless of singlestep mode (Jason Wessel).

---
 cpu-exec.c | 2 +-
 vl.c       | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/cpu-exec.c b/cpu-exec.c
index 435fdf8..5fd9cad 100644
--- a/cpu-exec.c
+++ b/cpu-exec.c
@@ -420,7 +420,7 @@ int cpu_exec(CPUState *env1)
 #if defined(TARGET_I386)
 			&& env->hflags & HF_GIF_MASK
 #endif
-            && !(env->singlestep_enabled & SSTEP_NOIRQ)) {
+            && likely(!(env->singlestep_enabled & SSTEP_NOIRQ))) {
                     if (interrupt_request & CPU_INTERRUPT_DEBUG) {
                         env->interrupt_request &= ~CPU_INTERRUPT_DEBUG;
                         env->exception_index = EXCP_DEBUG;
diff --git a/vl.c b/vl.c
index 67712f0..5430ae6 100644
--- a/vl.c
+++ b/vl.c
@@ -7032,7 +7032,7 @@ void main_loop_wait(int timeout)
     qemu_aio_poll();
 
     if (vm_running) {
-        if (!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER))
+        if (likely(!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER)))
         qemu_run_timers(&active_timers[QEMU_TIMER_VIRTUAL],
                         qemu_get_clock(vm_clock));
         /* run dma transfers, if any */
@@ -7040,7 +7040,6 @@ void main_loop_wait(int timeout)
     }
 
     /* real time timers */
-    if (!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER))
     qemu_run_timers(&active_timers[QEMU_TIMER_REALTIME],
                     qemu_get_clock(rt_clock));
 
--
libgit2 0.23.3