diff options
author | bunnei <bunneidev@gmail.com> | 2017-09-01 23:10:03 -0400 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2017-09-30 14:28:54 -0400 |
commit | f01472a5ffd03b535e8a66bb00d9a7548a0f61bf (patch) | |
tree | d11874933de837f7ce57ccb259f1f869db70bdb7 /src/core/memory.h | |
parent | 3411883fe32786c08bbdb28fd35e0b39a420be41 (diff) |
core: Various changes to support 64-bit addressing.
Diffstat (limited to 'src/core/memory.h')
-rw-r--r-- | src/core/memory.h | 16 |
1 files changed, 8 insertions, 8 deletions
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<u8*, PAGE_TABLE_NUM_ENTRIES>* GetCurrentPageTablePointers(); +//std::array<u8*, PAGE_TABLE_NUM_ENTRIES>* GetCurrentPageTablePointers(); } |