From f01472a5ffd03b535e8a66bb00d9a7548a0f61bf Mon Sep 17 00:00:00 2001 From: bunnei Date: Fri, 1 Sep 2017 23:10:03 -0400 Subject: core: Various changes to support 64-bit addressing. --- src/core/memory.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'src/core/memory.h') diff --git a/src/core/memory.h b/src/core/memory.h index c8c56babd..e8d796d24 100644 --- a/src/core/memory.h +++ b/src/core/memory.h @@ -16,10 +16,10 @@ namespace Memory { * Page size used by the ARM architecture. This is the smallest granularity with which memory can * be mapped. */ -const u32 PAGE_SIZE = 0x1000; -const u32 PAGE_MASK = PAGE_SIZE - 1; const int PAGE_BITS = 12; -const size_t PAGE_TABLE_NUM_ENTRIES = 1 << (32 - PAGE_BITS); +const u64 PAGE_SIZE = 1 << PAGE_BITS; +const u64 PAGE_MASK = PAGE_SIZE - 1; +const size_t PAGE_TABLE_NUM_ENTRIES = 1ULL << (64 - PAGE_BITS); /// Physical memory regions as seen from the ARM11 enum : PAddr { @@ -178,17 +178,17 @@ u8* GetPhysicalPointer(PAddr address); * Adds the supplied value to the rasterizer resource cache counter of each * page touching the region. */ -void RasterizerMarkRegionCached(PAddr start, u32 size, int count_delta); +void RasterizerMarkRegionCached(PAddr start, u64 size, int count_delta); /** * Flushes any externally cached rasterizer resources touching the given region. */ -void RasterizerFlushRegion(PAddr start, u32 size); +void RasterizerFlushRegion(PAddr start, u64 size); /** * Flushes and invalidates any externally cached rasterizer resources touching the given region. */ -void RasterizerFlushAndInvalidateRegion(PAddr start, u32 size); +void RasterizerFlushAndInvalidateRegion(PAddr start, u64 size); enum class FlushMode { /// Write back modified surfaces to RAM @@ -201,12 +201,12 @@ enum class FlushMode { * Flushes and invalidates any externally cached rasterizer resources touching the given virtual * address region. */ -void RasterizerFlushVirtualRegion(VAddr start, u32 size, FlushMode mode); +void RasterizerFlushVirtualRegion(VAddr start, u64 size, FlushMode mode); /** * Dynarmic has an optimization to memory accesses when the pointer to the page exists that * can be used by setting up the current page table as a callback. This function is used to * retrieve the current page table for that purpose. */ -std::array* GetCurrentPageTablePointers(); +//std::array* GetCurrentPageTablePointers(); } -- cgit v1.2.3