diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2003-06-30 13:12:32 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2003-06-30 13:12:32 +0000 |
commit | 68a7931591fca65ac5dc2e1b23688e08d1c328a6 (patch) | |
tree | d7b9f908c23ad553d88eef3ab594ec9c700d31a1 /exec.c | |
parent | c9159e5321628a29bcc26216f0166e9cdd7e4b26 (diff) |
reduced irq latency
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@296 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'exec.c')
-rw-r--r-- | exec.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -617,11 +617,12 @@ static void tb_reset_jump_recursive(TranslationBlock *tb) tb_reset_jump_recursive2(tb, 1); } -void cpu_interrupt(CPUState *env) +/* mask must never be zero */ +void cpu_interrupt(CPUState *env, int mask) { TranslationBlock *tb; - - env->interrupt_request = 1; + + env->interrupt_request |= mask; /* if the cpu is currently executing code, we must unlink it and all the potentially executing TB */ tb = env->current_tb; |