freedreno: Clear gs/tcs/tes state for clear blits

Otherwise we could emit a clear blit that is trying to use some random
GS stage, which doesn't go well.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6649>
This commit is contained in:
Rob Clark 2020-09-09 14:03:43 -07:00 committed by Marge Bot
parent 18f5d36282
commit 6e4d0a48e3
1 changed files with 7 additions and 0 deletions

View File

@ -225,6 +225,13 @@ fd_blitter_clear(struct pipe_context *pctx, unsigned buffers,
pctx->bind_vs_state(pctx, ctx->solid_prog.vs);
pctx->bind_fs_state(pctx, ctx->solid_prog.fs);
/* Clear geom/tess shaders, lest the draw emit code think we are
* trying to use use them:
*/
pctx->bind_gs_state(pctx, NULL);
pctx->bind_tcs_state(pctx, NULL);
pctx->bind_tes_state(pctx, NULL);
struct pipe_draw_info info = {
.mode = PIPE_PRIM_MAX, /* maps to DI_PT_RECTLIST */
.count = 2,