From 3f87d70f0edf823b47b0f73d9d99c360a6fa0a19 Mon Sep 17 00:00:00 2001
From: wwylele <wwylele@gmail.com>
Date: Tue, 27 Sep 2016 19:50:50 +0800
Subject: [PATCH] memory: fix IsValidVirtualAddress for RasterizerCachedMemory

RasterizerCachedMemory doesn't has pointer but should be considered as valid
---
 src/core/memory.cpp | 3 +++
 1 file changed, 3 insertions(+)

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;