diff options
author | wwylele <wwylele@gmail.com> | 2016-09-27 19:50:50 +0800 |
---|---|---|
committer | wwylele <wwylele@gmail.com> | 2016-09-29 10:01:34 +0800 |
commit | 3f87d70f0edf823b47b0f73d9d99c360a6fa0a19 (patch) | |
tree | 0e0c183b4bc96d703aa09fac68b49408df9b5884 /src/core/memory.cpp | |
parent | c88cdc9a2b25a8247a8e087156c51f9a79fdc940 (diff) |
memory: fix IsValidVirtualAddress for RasterizerCachedMemory
RasterizerCachedMemory doesn't has pointer but should be considered as valid
Diffstat (limited to 'src/core/memory.cpp')
-rw-r--r-- | src/core/memory.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp index df029d6550..64c388374c 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp @@ -251,6 +251,9 @@ bool IsValidVirtualAddress(const VAddr vaddr) { if (page_pointer) return true; + if (current_page_table->attributes[vaddr >> PAGE_BITS] == PageType::RasterizerCachedMemory) + return true; + if (current_page_table->attributes[vaddr >> PAGE_BITS] != PageType::Special) return false; |