diff options
Diffstat (limited to 'src/arch/x86/interrupts.cc')
-rw-r--r-- | src/arch/x86/interrupts.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/arch/x86/interrupts.cc b/src/arch/x86/interrupts.cc index afed9c132..ca765782e 100644 --- a/src/arch/x86/interrupts.cc +++ b/src/arch/x86/interrupts.cc @@ -649,6 +649,14 @@ X86ISA::Interrupts::checkInterrupts(ThreadContext *tc) const return false; } +bool +X86ISA::Interrupts::checkInterruptsRaw() const +{ + return pendingUnmaskableInt || pendingExtInt || + (IRRV > ISRV && bits(IRRV, 7, 4) > + bits(regs[APIC_TASK_PRIORITY], 7, 4)); +} + Fault X86ISA::Interrupts::getInterrupt(ThreadContext *tc) { |