UserspaceEmulator: Add virtual data()/shadow_data() accessors to Region

This commit is contained in:
Andreas Kling 2020-11-15 17:53:36 +01:00
parent 59b4874443
commit 92e152f11d
Notes: sideshowbarker 2024-07-19 01:22:48 +09:00
4 changed files with 9 additions and 5 deletions

View file

@ -47,8 +47,8 @@ public:
virtual void write32(u32 offset, ValueWithShadow<u32>) override;
virtual void write64(u32 offset, ValueWithShadow<u64>) override;
u8* data() { return m_data; }
u8* shadow_data() { return m_shadow_data; }
virtual u8* data() override { return m_data; }
virtual u8* shadow_data() override { return m_shadow_data; }
virtual bool is_readable() const override { return m_prot & PROT_READ; }
virtual bool is_writable() const override { return m_prot & PROT_WRITE; }

View file

@ -46,7 +46,8 @@ public:
virtual void write32(u32 offset, ValueWithShadow<u32>) override;
virtual void write64(u32 offset, ValueWithShadow<u64>) override;
u8* data() { return m_data; }
virtual u8* data() override { return m_data; }
virtual u8* shadow_data() override { return m_shadow_data; }
bool is_shared_buffer() const override { return true; }

View file

@ -45,8 +45,8 @@ public:
virtual void write32(u32 offset, ValueWithShadow<u32>) override;
virtual void write64(u32 offset, ValueWithShadow<u64>) override;
u8* data() { return m_data; }
u8* shadow_data() { return m_shadow_data; }
virtual u8* data() override { return m_data; }
virtual u8* shadow_data() override { return m_shadow_data; }
virtual u8* cacheable_ptr(u32 offset) override;

View file

@ -73,6 +73,9 @@ public:
virtual bool is_writable() const { return true; }
virtual bool is_executable() const { return true; }
virtual u8* data() = 0;
virtual u8* shadow_data() = 0;
protected:
Region(u32 base, u32 size)
: m_base(base)