diff options
Diffstat (limited to 'src/core/device_memory.h')
-rw-r--r-- | src/core/device_memory.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/device_memory.h b/src/core/device_memory.h index cc7bda070..ff66e202d 100644 --- a/src/core/device_memory.h +++ b/src/core/device_memory.h @@ -28,12 +28,16 @@ public: ~DeviceMemory(); template <typename T> - constexpr PAddr GetPhysicalAddr(T* ptr) { + PAddr GetPhysicalAddr(const T* ptr) const { return (reinterpret_cast<uintptr_t>(ptr) - reinterpret_cast<uintptr_t>(buffer.data())) + DramMemoryMap::Base; } - constexpr u8* GetPointer(PAddr addr) { + u8* GetPointer(PAddr addr) { + return buffer.data() + (addr - DramMemoryMap::Base); + } + + const u8* GetPointer(PAddr addr) const { return buffer.data() + (addr - DramMemoryMap::Base); } |