diff --git a/DevTools/UserspaceEmulator/SoftMMU.cpp b/DevTools/UserspaceEmulator/SoftMMU.cpp index 6f578cdc1a..328a36c90c 100644 --- a/DevTools/UserspaceEmulator/SoftMMU.cpp +++ b/DevTools/UserspaceEmulator/SoftMMU.cpp @@ -25,6 +25,7 @@ */ #include "SoftMMU.h" +#include "Emulator.h" #include "Report.h" #include "SharedBufferRegion.h" #include @@ -70,6 +71,7 @@ ValueWithShadow SoftMMU::read8(X86::LogicalAddress address) auto* region = find_region(address); if (!region) { reportln("SoftMMU::read8: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -81,6 +83,7 @@ ValueWithShadow SoftMMU::read16(X86::LogicalAddress address) auto* region = find_region(address); if (!region) { reportln("SoftMMU::read16: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -92,6 +95,7 @@ ValueWithShadow SoftMMU::read32(X86::LogicalAddress address) auto* region = find_region(address); if (!region) { reportln("SoftMMU::read32: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -103,6 +107,7 @@ ValueWithShadow SoftMMU::read64(X86::LogicalAddress address) auto* region = find_region(address); if (!region) { reportln("SoftMMU::read64: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -114,6 +119,7 @@ void SoftMMU::write8(X86::LogicalAddress address, ValueWithShadow value) auto* region = find_region(address); if (!region) { reportln("SoftMMU::write8: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -125,6 +131,7 @@ void SoftMMU::write16(X86::LogicalAddress address, ValueWithShadow value) auto* region = find_region(address); if (!region) { reportln("SoftMMU::write16: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -136,6 +143,7 @@ void SoftMMU::write32(X86::LogicalAddress address, ValueWithShadow value) auto* region = find_region(address); if (!region) { reportln("SoftMMU::write32: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); } @@ -147,6 +155,7 @@ void SoftMMU::write64(X86::LogicalAddress address, ValueWithShadow value) auto* region = find_region(address); if (!region) { reportln("SoftMMU::write64: No region for @ {:p}", address.offset()); + Emulator::the().dump_backtrace(); TODO(); }