diff options
Diffstat (limited to 'target-sh4/exec.h')
-rw-r--r-- | target-sh4/exec.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/target-sh4/exec.h b/target-sh4/exec.h index ad26990..d292675 100644 --- a/target-sh4/exec.h +++ b/target-sh4/exec.h @@ -28,10 +28,15 @@ register struct CPUSH4State *env asm(AREG0); #include "cpu.h" #include "exec-all.h" +static inline int cpu_has_work(CPUState *env) +{ + return (env->interrupt_request & CPU_INTERRUPT_HARD); +} + static inline int cpu_halted(CPUState *env) { if (!env->halted) return 0; - if (env->interrupt_request & CPU_INTERRUPT_HARD) { + if (cpu_has_work(env)) { env->halted = 0; env->intr_at_halt = 1; return 0; |