summaryrefslogtreecommitdiff
path: root/arch/mips/faults.hh
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2006-04-06 18:04:49 -0400
committerAli Saidi <saidi@eecs.umich.edu>2006-04-06 18:04:49 -0400
commit61b2bd9d28fa288628d8ef3eb3fd4ab3cef9902f (patch)
treefca3484ae5eca56d5363290db28a84e98082b972 /arch/mips/faults.hh
parent6240f8c4bcf12e3367905adfba066bb14f79262a (diff)
downloadgem5-61b2bd9d28fa288628d8ef3eb3fd4ab3cef9902f.tar.xz
added unimp faults
update for newmem arch/mips/faults.cc: arch/mips/faults.hh: arch/sparc/faults.cc: arch/sparc/faults.hh: added unimp faults for mips arch/mips/isa/base.isa: arch/mips/isa/includes.isa: thou shalt not put includes inside a namespace dev/alpha_console.cc: fix formatting dev/io_device.hh: add comments dev/tsunami_cchip.cc: dev/tsunami_cchip.hh: update for newmem sim/process.cc: fix seemingly wronge code. --HG-- extra : convert_revision : 9dcfe188d00d525b935d8ef4fa323280bbfa9a0e
Diffstat (limited to 'arch/mips/faults.hh')
-rw-r--r--arch/mips/faults.hh20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/mips/faults.hh b/arch/mips/faults.hh
index 0bdabe29e..b0d228090 100644
--- a/arch/mips/faults.hh
+++ b/arch/mips/faults.hh
@@ -264,6 +264,26 @@ class IntegerOverflowFault : public MipsFault
FaultStat & countStat() {return _count;}
};
+class UnimpFault : public MipsFault
+{
+ private:
+ std::string panicStr;
+ static FaultName _name;
+ static FaultVect _vect;
+ static FaultStat _count;
+ public:
+ UnimpFault(std::string _str)
+ : panicStr(_str)
+ { }
+
+ FaultName name() {return _name;}
+ FaultVect vect() {return _vect;}
+ FaultStat & countStat() {return _count;}
+#if FULL_SYSTEM
+ void invoke(ExecContext * xc);
+#endif
+};
+
} // MipsISA namespace
#endif // __FAULTS_HH__