gl_rasterizer: Flush L2 caches before glFlush on GLASM
This commit is contained in:
parent
2c81ad8311
commit
dc02cb92e4
|
@ -473,6 +473,14 @@ void RasterizerOpenGL::FlushCommands() {
|
|||
return;
|
||||
}
|
||||
num_queued_commands = 0;
|
||||
|
||||
// Make sure memory stored from the previous GL command stream is visible
|
||||
// This is only needed on assembly shaders where we write to GPU memory with raw pointers
|
||||
// TODO: Call this only when NV_shader_buffer_load or NV_shader_buffer_store have been used
|
||||
// and prefer using NV_shader_storage_buffer_object when possible
|
||||
if (Settings::values.use_assembly_shaders.GetValue()) {
|
||||
glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT);
|
||||
}
|
||||
glFlush();
|
||||
}
|
||||
|
||||
|
|
Reference in New Issue