summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_core/renderer_opengl/gl_buffer_cache.cpp3
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp1
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp2
3 files changed, 2 insertions, 4 deletions
diff --git a/src/video_core/renderer_opengl/gl_buffer_cache.cpp b/src/video_core/renderer_opengl/gl_buffer_cache.cpp
index cb5792407..4efce0de7 100644
--- a/src/video_core/renderer_opengl/gl_buffer_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_buffer_cache.cpp
@@ -52,7 +52,7 @@ Buffer OGLBufferCache::CreateBlock(VAddr cpu_addr, std::size_t size) {
52} 52}
53 53
54void OGLBufferCache::WriteBarrier() { 54void OGLBufferCache::WriteBarrier() {
55 glMemoryBarrier(GL_ALL_BARRIER_BITS); 55 glMemoryBarrier(GL_SHADER_STORAGE_BARRIER_BIT);
56} 56}
57 57
58GLuint OGLBufferCache::ToHandle(const Buffer& buffer) { 58GLuint OGLBufferCache::ToHandle(const Buffer& buffer) {
@@ -72,6 +72,7 @@ void OGLBufferCache::UploadBlockData(const Buffer& buffer, std::size_t offset, s
72void OGLBufferCache::DownloadBlockData(const Buffer& buffer, std::size_t offset, std::size_t size, 72void OGLBufferCache::DownloadBlockData(const Buffer& buffer, std::size_t offset, std::size_t size,
73 u8* data) { 73 u8* data) {
74 MICROPROFILE_SCOPE(OpenGL_Buffer_Download); 74 MICROPROFILE_SCOPE(OpenGL_Buffer_Download);
75 glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT);
75 glGetNamedBufferSubData(buffer->GetHandle(), static_cast<GLintptr>(offset), 76 glGetNamedBufferSubData(buffer->GetHandle(), static_cast<GLintptr>(offset),
76 static_cast<GLsizeiptr>(size), data); 77 static_cast<GLsizeiptr>(size), data);
77} 78}
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index fbd81b895..bc57d396e 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -630,7 +630,6 @@ void RasterizerOpenGL::DispatchCompute(GPUVAddr code_addr) {
630 const auto& launch_desc = system.GPU().KeplerCompute().launch_description; 630 const auto& launch_desc = system.GPU().KeplerCompute().launch_description;
631 glDispatchCompute(launch_desc.grid_dim_x, launch_desc.grid_dim_y, launch_desc.grid_dim_z); 631 glDispatchCompute(launch_desc.grid_dim_x, launch_desc.grid_dim_y, launch_desc.grid_dim_z);
632 ++num_queued_commands; 632 ++num_queued_commands;
633 system.GPU().TickWork();
634} 633}
635 634
636void RasterizerOpenGL::ResetCounter(VideoCore::QueryType type) { 635void RasterizerOpenGL::ResetCounter(VideoCore::QueryType type) {
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index 926ecf38e..f8b5a5a92 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -494,8 +494,6 @@ void RasterizerVulkan::DispatchCompute(GPUVAddr code_addr) {
494 descriptor_set, {}); 494 descriptor_set, {});
495 cmdbuf.Dispatch(grid_x, grid_y, grid_z); 495 cmdbuf.Dispatch(grid_x, grid_y, grid_z);
496 }); 496 });
497
498 system.GPU().TickWork();
499} 497}
500 498
501void RasterizerVulkan::ResetCounter(VideoCore::QueryType type) { 499void RasterizerVulkan::ResetCounter(VideoCore::QueryType type) {