summaryrefslogtreecommitdiff
path: root/src/arch/x86/faults.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/x86/faults.hh')
-rw-r--r--src/arch/x86/faults.hh22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/arch/x86/faults.hh b/src/arch/x86/faults.hh
index 8fe90299d..b15ad15d1 100644
--- a/src/arch/x86/faults.hh
+++ b/src/arch/x86/faults.hh
@@ -215,9 +215,10 @@ namespace X86ISA
class NonMaskableInterrupt : public X86Interrupt
{
+ uint8_t vector;
public:
- NonMaskableInterrupt() :
- X86Interrupt("Non-Maskable-Interrupt", "#NMI")
+ NonMaskableInterrupt(uint8_t _vector) :
+ X86Interrupt("Non Maskable Interrupt", "#NMI"), vector(_vector)
{}
};
@@ -358,6 +359,23 @@ namespace X86ISA
{}
};
+ class SystemManagementInterrupt : public X86Interrupt
+ {
+ public:
+ SystemManagementInterrupt() :
+ X86Interrupt("System Management Interrupt", "#SMI")
+ {}
+ };
+
+ class InitInterrupt : public X86Interrupt
+ {
+ uint8_t vector;
+ public:
+ InitInterrupt(uint8_t _vector) :
+ X86Interrupt("INIT Interrupt", "#INIT"), vector(_vector)
+ {}
+ };
+
class SoftwareInterrupt : public X86Interrupt
{
public: