aboutsummaryrefslogtreecommitdiff
path: root/src/core/device_memory_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/device_memory_manager.h')
-rw-r--r--src/core/device_memory_manager.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/device_memory_manager.h b/src/core/device_memory_manager.h
index 46cda14e78..27ff342213 100644
--- a/src/core/device_memory_manager.h
+++ b/src/core/device_memory_manager.h
@@ -126,6 +126,9 @@ public:
// New batch API to update multiple ranges with a single lock acquisition.
void UpdatePagesCachedBatch(std::span<const std::pair<DAddr, size_t>> ranges, s32 delta);
+ /// Traps the next guest CPU read of these pages, to learn which GPU writes the CPU reads.
+ void ArmReadTraps(DAddr addr, size_t size);
+
private:
struct TranslationEntry {
DAddr guest_page{};
@@ -187,6 +190,8 @@ private:
void WalkBlock(const DAddr addr, const std::size_t size, auto on_unmapped, auto on_memory,
auto increment);
+ void CutContinuityAt(size_t page);
+
void InnerGatherDeviceAddresses(Common::ScratchBuffer<u32>& buffer, PAddr address);
std::unique_ptr<DeviceMemoryManagerAllocator<Traits>> impl;