r600: Don't use SB with R600 style scratch reads

SB fails when handling indirect READ_SCRATCH commands.

Fixes: 1d871aa626
   r600g: Implement spilling of temp arrays (v2)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18130>
This commit is contained in:
Gert Wollny 2022-08-16 10:33:36 +02:00 committed by Marge Bot
parent d6bb8a40a6
commit ebcd8c51dc

View file

@ -260,6 +260,9 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
use_sb &= !shader->shader.uses_images;
use_sb &= !shader->shader.uses_helper_invocation;
/* SB can't handle READ_SCRATCH properly */
use_sb &= !(shader->shader.needs_scratch_space && rscreen->b.gfx_level < R700);
/* sb has bugs in array reg allocation
* (dEQP-GLES2.functional.shaders.struct.local.struct_array_dynamic_index_fragment
* with NTT)