diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-09-25 20:11:41 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-09-25 20:11:41 -0700 |
commit | 2dd65dc2546216ef132e30f5c590e11e35b4ff37 (patch) | |
tree | d64578bd2dbbc5ba41f40279c9bd762ed765677d /src/arch/x86/interrupts.hh | |
parent | 25a9b6ea5e232590240a7ffc6ff769ffdfdc1e04 (diff) | |
parent | b3c6f32543f7c7e3a2ef5d70681424fb77e64731 (diff) | |
download | gem5-2dd65dc2546216ef132e30f5c590e11e35b4ff37.tar.xz |
Merge with head.
--HG--
extra : convert_revision : f331b9cbd82086d63d4f35e18f9e08466c016225
Diffstat (limited to 'src/arch/x86/interrupts.hh')
-rw-r--r-- | src/arch/x86/interrupts.hh | 67 |
1 files changed, 66 insertions, 1 deletions
diff --git a/src/arch/x86/interrupts.hh b/src/arch/x86/interrupts.hh index 3f33b8d85..614909f73 100644 --- a/src/arch/x86/interrupts.hh +++ b/src/arch/x86/interrupts.hh @@ -58,10 +58,75 @@ #ifndef __ARCH_X86_INTERRUPTS_HH__ #define __ARCH_X86_INTERRUPTS_HH__ -#error X86 is not yet supported! +#include "arch/x86/faults.hh" +#include "cpu/thread_context.hh" namespace X86ISA { + +class Interrupts +{ + public: + Interrupts() + { + clear_all(); + } + + int InterruptLevel(uint64_t softint) + { + panic("Interrupts don't work on x86!\n"); + return 0; + } + + void post(int int_num, int index) + { + panic("Interrupts don't work on x86!\n"); + } + + void clear(int int_num, int index) + { + panic("Interrupts don't work on x86!\n"); + } + + void clear_all() + { + panic("Interrupts don't work on x86!\n"); + } + + bool check_interrupts(ThreadContext * tc) const + { + panic("Interrupts don't work on x86!\n"); + return false; + } + + Fault getInterrupt(ThreadContext * tc) + { + panic("Interrupts don't work on x86!\n"); + return NoFault; + } + + void updateIntrInfo(ThreadContext * tc) + { + panic("Interrupts don't work on x86!\n"); + } + + uint64_t get_vec(int int_num) + { + panic("Interrupts don't work on x86!\n"); + return 0; + } + + void serialize(std::ostream & os) + { + panic("Interrupts don't work on x86!\n"); + } + + void unserialize(Checkpoint * cp, const std::string & section) + { + panic("Interrupts don't work on x86!\n"); + } +}; + }; #endif // __ARCH_X86_INTERRUPTS_HH__ |