summaryrefslogtreecommitdiff
path: root/src/video_core
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2020-04-08 13:34:59 -0400
committerGravatar Fernando Sahmkow2020-04-08 13:40:46 -0400
commit913f42a3a70d716fa65d639dc4a6dfc9687eec61 (patch)
tree9f95aba901fa11f748f54bcaa39e6c87ff08c802 /src/video_core
parentGPUMemoryManager: Improve safety of memory reads. (diff)
downloadyuzu-913f42a3a70d716fa65d639dc4a6dfc9687eec61.tar.gz
yuzu-913f42a3a70d716fa65d639dc4a6dfc9687eec61.tar.xz
yuzu-913f42a3a70d716fa65d639dc4a6dfc9687eec61.zip
Memory: Address Feedback.
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/memory_manager.h3
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp4
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp4
3 files changed, 7 insertions, 4 deletions
diff --git a/src/video_core/memory_manager.h b/src/video_core/memory_manager.h
index 987400fdd..0d9468535 100644
--- a/src/video_core/memory_manager.h
+++ b/src/video_core/memory_manager.h
@@ -97,6 +97,9 @@ public:
97 void WriteBlockUnsafe(GPUVAddr dest_addr, const void* src_buffer, std::size_t size); 97 void WriteBlockUnsafe(GPUVAddr dest_addr, const void* src_buffer, std::size_t size);
98 void CopyBlockUnsafe(GPUVAddr dest_addr, GPUVAddr src_addr, std::size_t size); 98 void CopyBlockUnsafe(GPUVAddr dest_addr, GPUVAddr src_addr, std::size_t size);
99 99
100 /**
101 * IsGranularRange checks if a gpu region can be simply read with a pointer
102 */
100 bool IsGranularRange(GPUVAddr gpu_addr, std::size_t size); 103 bool IsGranularRange(GPUVAddr gpu_addr, std::size_t size);
101 104
102private: 105private:
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index 93a6c72f8..368f399df 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -658,7 +658,7 @@ void RasterizerOpenGL::FlushAll() {}
658 658
659void RasterizerOpenGL::FlushRegion(VAddr addr, u64 size) { 659void RasterizerOpenGL::FlushRegion(VAddr addr, u64 size) {
660 MICROPROFILE_SCOPE(OpenGL_CacheManagement); 660 MICROPROFILE_SCOPE(OpenGL_CacheManagement);
661 if (!addr || !size) { 661 if (addr == 0 || size == 0) {
662 return; 662 return;
663 } 663 }
664 texture_cache.FlushRegion(addr, size); 664 texture_cache.FlushRegion(addr, size);
@@ -668,7 +668,7 @@ void RasterizerOpenGL::FlushRegion(VAddr addr, u64 size) {
668 668
669void RasterizerOpenGL::InvalidateRegion(VAddr addr, u64 size) { 669void RasterizerOpenGL::InvalidateRegion(VAddr addr, u64 size) {
670 MICROPROFILE_SCOPE(OpenGL_CacheManagement); 670 MICROPROFILE_SCOPE(OpenGL_CacheManagement);
671 if (!addr || !size) { 671 if (addr == 0 || size == 0) {
672 return; 672 return;
673 } 673 }
674 texture_cache.InvalidateRegion(addr, size); 674 texture_cache.InvalidateRegion(addr, size);
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index 1466018fa..30eaeba6c 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -496,7 +496,7 @@ void RasterizerVulkan::Query(GPUVAddr gpu_addr, VideoCore::QueryType type,
496void RasterizerVulkan::FlushAll() {} 496void RasterizerVulkan::FlushAll() {}
497 497
498void RasterizerVulkan::FlushRegion(VAddr addr, u64 size) { 498void RasterizerVulkan::FlushRegion(VAddr addr, u64 size) {
499 if (!addr || !size) { 499 if (addr == 0 || size == 0) {
500 return; 500 return;
501 } 501 }
502 CacheAddr cache_addr = ToCacheAddr(system.Memory().GetPointer(addr)); 502 CacheAddr cache_addr = ToCacheAddr(system.Memory().GetPointer(addr));
@@ -506,7 +506,7 @@ void RasterizerVulkan::FlushRegion(VAddr addr, u64 size) {
506} 506}
507 507
508void RasterizerVulkan::InvalidateRegion(VAddr addr, u64 size) { 508void RasterizerVulkan::InvalidateRegion(VAddr addr, u64 size) {
509 if (!addr || !size) { 509 if (addr == 0 || size == 0) {
510 return; 510 return;
511 } 511 }
512 texture_cache.InvalidateRegion(addr, size); 512 texture_cache.InvalidateRegion(addr, size);