diff options
-rw-r--r-- | qtmips_machine/qtmipsexception.cpp | 5 | ||||
-rw-r--r-- | qtmips_machine/qtmipsexception.h | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/qtmips_machine/qtmipsexception.cpp b/qtmips_machine/qtmipsexception.cpp index 02193cb..bb852a8 100644 --- a/qtmips_machine/qtmipsexception.cpp +++ b/qtmips_machine/qtmipsexception.cpp @@ -59,6 +59,11 @@ QtMipsExceptionUnalignedJump::QtMipsExceptionUnalignedJump(QTMIPS_ARGS_COMMON) return; } +QtMipsExceptionUnknownMemoryControl::QtMipsExceptionUnknownMemoryControl(QTMIPS_ARGS_COMMON) + : QtMipsExceptionRuntime(reason, ext, file, line) { + return; +} + QtMipsExceptionOutOfMemoryAccess::QtMipsExceptionOutOfMemoryAccess(QTMIPS_ARGS_COMMON) : QtMipsExceptionRuntime(reason, ext, file, line) { return; diff --git a/qtmips_machine/qtmipsexception.h b/qtmips_machine/qtmipsexception.h index b81f748..cfab81a 100644 --- a/qtmips_machine/qtmipsexception.h +++ b/qtmips_machine/qtmipsexception.h @@ -59,6 +59,14 @@ public: QtMipsExceptionUnalignedJump(QTMIPS_ARGS_COMMON); }; +// Used unknown MemoryAccess control value (write_ctl or read_ctl) +// This can be raised by invalid instruction but in such case we shoul raise UnknownInstruction instead +// So this should signal jsut some QtMips bug. +class QtMipsExceptionUnknownMemoryControl : public QtMipsExceptionRuntime { +public: + QtMipsExceptionUnknownMemoryControl(QTMIPS_ARGS_COMMON); +}; + // Trying to access address outside of the memory // As we are simulating whole 32bit memory address space then this is most probably QtMips bug if raised not program. class QtMipsExceptionOutOfMemoryAccess : public QtMipsExceptionRuntime { |