summaryrefslogtreecommitdiff
path: root/src/arch/x86/interrupts.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-09-25 20:11:41 -0700
committerGabe Black <gblack@eecs.umich.edu>2007-09-25 20:11:41 -0700
commit2dd65dc2546216ef132e30f5c590e11e35b4ff37 (patch)
treed64578bd2dbbc5ba41f40279c9bd762ed765677d /src/arch/x86/interrupts.hh
parent25a9b6ea5e232590240a7ffc6ff769ffdfdc1e04 (diff)
parentb3c6f32543f7c7e3a2ef5d70681424fb77e64731 (diff)
downloadgem5-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.hh67
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__