diff --git a/src/gallium/drivers/radeonsi/si_gfx_cs.c b/src/gallium/drivers/radeonsi/si_gfx_cs.c index 082b449e71d..9aaa8f1bbf6 100644 --- a/src/gallium/drivers/radeonsi/si_gfx_cs.c +++ b/src/gallium/drivers/radeonsi/si_gfx_cs.c @@ -524,6 +524,7 @@ void si_begin_new_gfx_cs(struct si_context *ctx, bool first_cs) si_add_all_descriptors_to_bo_list(ctx); si_shader_pointers_mark_dirty(ctx); ctx->cs_shader_state.emitted_program = NULL; + ctx->ts_shader_state.emitted_program = NULL; /* The CS initialization should be emitted before everything else. */ if (ctx->cs_preamble_state) { diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 35d455e86f3..ff2d62b8b70 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -1094,6 +1094,8 @@ struct si_context { struct si_shader_ctx_state shaders[SI_NUM_GRAPHICS_SHADERS]; }; struct si_cs_shader_state cs_shader_state; + struct si_cs_shader_state ts_shader_state; + struct si_shader_ctx_state ms_shader_state; bool compute_ping_pong_launch; /* if current tcs set by user */ bool is_user_tcs;