From f1c0f661f44b54894aee0efb5c76f32af33430d6 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Wed, 23 Sep 2020 14:45:43 -0400 Subject: UserspaceEmulator+LibX86: Add support for 64-bit memory reads and writes (#3584) This is useful for reading and writing doubles for #3329. It is also useful for emulating 64-bit binaries. MemoryOrRegisterReference assumes that 64-bit values are always memory references since that's enough for fpu support. If we ever want to emulate 64-bit binaries, that part will need minor updating. --- DevTools/UserspaceEmulator/SimpleRegion.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'DevTools/UserspaceEmulator/SimpleRegion.h') diff --git a/DevTools/UserspaceEmulator/SimpleRegion.h b/DevTools/UserspaceEmulator/SimpleRegion.h index 85055cbe73..4a65593041 100644 --- a/DevTools/UserspaceEmulator/SimpleRegion.h +++ b/DevTools/UserspaceEmulator/SimpleRegion.h @@ -38,10 +38,12 @@ public: virtual ValueWithShadow read8(u32 offset) override; virtual ValueWithShadow read16(u32 offset) override; virtual ValueWithShadow read32(u32 offset) override; + virtual ValueWithShadow read64(u32 offset) override; virtual void write8(u32 offset, ValueWithShadow) override; virtual void write16(u32 offset, ValueWithShadow) override; virtual void write32(u32 offset, ValueWithShadow) override; + virtual void write64(u32 offset, ValueWithShadow) override; u8* data() { return m_data; } u8* shadow_data() { return m_shadow_data; } -- cgit v1.2.3