diff options
| author | bunnei <bunneidev@gmail.com> | 2019-03-03 23:54:16 -0500 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2019-03-20 22:36:02 -0400 |
| commit | 22d3dfbcd4c606d40e5ae36970db4661c302859f (patch) | |
| tree | 24bf6fe7420aab7a34be7782bc1830e053b64679 /src/video_core/renderer_opengl | |
| parent | 241563d15c8b831a2d2b7c360d570cc721903d14 (diff) | |
gpu: Rewrite virtual memory manager using PageTable.
Diffstat (limited to 'src/video_core/renderer_opengl')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_global_cache.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer_cache.cpp | 10 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/video_core/renderer_opengl/gl_global_cache.cpp b/src/video_core/renderer_opengl/gl_global_cache.cpp index ac030cfc9..0fbfbad55 100644 --- a/src/video_core/renderer_opengl/gl_global_cache.cpp +++ b/src/video_core/renderer_opengl/gl_global_cache.cpp @@ -76,8 +76,8 @@ GlobalRegion GlobalRegionCacheOpenGL::GetGlobalRegion( const auto cbufs{gpu.Maxwell3D().state.shader_stages[static_cast<u64>(stage)]}; const auto addr{cbufs.const_buffers[global_region.GetCbufIndex()].address + global_region.GetCbufOffset()}; - const auto actual_addr{memory_manager.Read64(addr)}; - const auto size{memory_manager.Read32(addr + 8)}; + const auto actual_addr{memory_manager.Read<u64>(addr)}; + const auto size{memory_manager.Read<u32>(addr + 8)}; // Look up global region in the cache based on address const auto& host_ptr{memory_manager.GetPointer(actual_addr)}; diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp index 1133fa1f9..b94446428 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp @@ -610,11 +610,11 @@ CachedSurface::CachedSurface(const SurfaceParams& params) // check is necessary to prevent flushing from overwriting unmapped memory. auto& memory_manager{Core::System::GetInstance().GPU().MemoryManager()}; - const u64 max_size{memory_manager.GetRegionEnd(params.gpu_addr) - params.gpu_addr}; - if (cached_size_in_bytes > max_size) { - LOG_ERROR(HW_GPU, "Surface size {} exceeds region size {}", params.size_in_bytes, max_size); - cached_size_in_bytes = max_size; - } + // const u64 max_size{memory_manager.GetRegionEnd(params.gpu_addr) - params.gpu_addr}; + // if (cached_size_in_bytes > max_size) { + // LOG_ERROR(HW_GPU, "Surface size {} exceeds region size {}", params.size_in_bytes, + // max_size); cached_size_in_bytes = max_size; + //} cpu_addr = *memory_manager.GpuToCpuAddress(params.gpu_addr); } |
