diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2017-12-28 17:36:45 -0800 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2018-01-30 10:22:26 -0800 |
commit | 4f5f254808e1e317b407275724df7794a270c5c1 (patch) | |
tree | 94c42a5cfc575a8fd47d45e07447f9600d7c3c0b /target/hppa/cpu.c | |
parent | 650cdb2a2e4936fb66c13793278f4bacf0e5a6f7 (diff) | |
download | qemu-4f5f254808e1e317b407275724df7794a270c5c1.zip qemu-4f5f254808e1e317b407275724df7794a270c5c1.tar.gz qemu-4f5f254808e1e317b407275724df7794a270c5c1.tar.bz2 |
target/hppa: Implement external interrupts
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/hppa/cpu.c')
-rw-r--r-- | target/hppa/cpu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/target/hppa/cpu.c b/target/hppa/cpu.c index 2970afd..888a48f 100644 --- a/target/hppa/cpu.c +++ b/target/hppa/cpu.c @@ -57,6 +57,11 @@ static void hppa_cpu_synchronize_from_tb(CPUState *cs, TranslationBlock *tb) cpu->env.psw_n = (tb->flags & PSW_N) != 0; } +static bool hppa_cpu_has_work(CPUState *cs) +{ + return cs->interrupt_request & CPU_INTERRUPT_HARD; +} + static void hppa_cpu_disas_set_info(CPUState *cs, disassemble_info *info) { info->mach = bfd_mach_hppa20; @@ -159,6 +164,7 @@ static void hppa_cpu_class_init(ObjectClass *oc, void *data) dc->realize = hppa_cpu_realizefn; cc->class_by_name = hppa_cpu_class_by_name; + cc->has_work = hppa_cpu_has_work; cc->do_interrupt = hppa_cpu_do_interrupt; cc->cpu_exec_interrupt = hppa_cpu_exec_interrupt; cc->dump_state = hppa_cpu_dump_state; |