Mesa (master): radeonsi: allow unbinding vertex shaders

Marek Olšák mareko at kemper.freedesktop.org
Fri Oct 23 22:03:23 UTC 2015


Module: Mesa
Branch: master
Commit: 3a157e6e68b3f01fe5814f6313ec0811115b0694
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3a157e6e68b3f01fe5814f6313ec0811115b0694

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Oct 22 21:32:23 2015 +0200

radeonsi: allow unbinding vertex shaders

Draw calls without a vertex shader are skipped.

Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>

---

 src/gallium/drivers/radeonsi/si_state_shaders.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
index 25cba84..4a3a04c 100644
--- a/src/gallium/drivers/radeonsi/si_state_shaders.c
+++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
@@ -799,11 +799,11 @@ static void si_bind_vs_shader(struct pipe_context *ctx, void *state)
 	struct si_context *sctx = (struct si_context *)ctx;
 	struct si_shader_selector *sel = state;
 
-	if (sctx->vs_shader.cso == sel || !sel)
+	if (sctx->vs_shader.cso == sel)
 		return;
 
 	sctx->vs_shader.cso = sel;
-	sctx->vs_shader.current = sel->first_variant;
+	sctx->vs_shader.current = sel ? sel->first_variant : NULL;
 	si_mark_atom_dirty(sctx, &sctx->clip_regs);
 	si_update_viewports_and_scissors(sctx);
 }




More information about the mesa-commit mailing list