diff options
author | aliguori | 2009-04-24 20:03:20 +0200 |
---|---|---|
committer | aliguori | 2009-04-24 20:03:20 +0200 |
commit | 6a4955a813467089549f865600284e6be0d018fc (patch) | |
tree | c5fdcc2861b662217e47f9271b6bf15103e2b793 /target-sparc | |
parent | qemu: mutex/thread/cond wrappers and configure tweaks (Marcelo Tosatti) (diff) | |
download | qemu-6a4955a813467089549f865600284e6be0d018fc.tar.gz qemu-6a4955a813467089549f865600284e6be0d018fc.tar.xz qemu-6a4955a813467089549f865600284e6be0d018fc.zip |
qemu: per-arch cpu_has_work (Marcelo Tosatti)
Blue Swirl: fix Sparc32 breakage
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7238 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sparc')
-rw-r--r-- | target-sparc/exec.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/target-sparc/exec.h b/target-sparc/exec.h index 36fd1176fc..f37c8ad994 100644 --- a/target-sparc/exec.h +++ b/target-sparc/exec.h @@ -24,10 +24,17 @@ static inline void regs_to_env(void) /* op_helper.c */ void do_interrupt(CPUState *env); +static inline int cpu_has_work(CPUState *env1) +{ + return (env1->interrupt_request & CPU_INTERRUPT_HARD) && + (env1->psret != 0); +} + + static inline int cpu_halted(CPUState *env1) { if (!env1->halted) return 0; - if ((env1->interrupt_request & CPU_INTERRUPT_HARD) && (env1->psret != 0)) { + if (cpu_has_work(env1)) { env1->halted = 0; return 0; } |