diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_compute.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c index 19a9189e739..46476b68beb 100644 --- a/src/gallium/drivers/radeonsi/si_compute.c +++ b/src/gallium/drivers/radeonsi/si_compute.c @@ -746,9 +746,13 @@ static void si_launch_grid( sctx->b.flags |= SI_CONTEXT_PS_PARTIAL_FLUSH | SI_CONTEXT_CS_PARTIAL_FLUSH; - if (program->ir_type == PIPE_SHADER_IR_TGSI) + if (program->ir_type == PIPE_SHADER_IR_TGSI) { util_queue_fence_wait(&program->ready); + if (program->shader.compilation_failed) + return; + } + si_decompress_compute_textures(sctx); /* Add buffer sizes for memory checking in need_cs_space. */ |