Mesa (master): radeonsi: generalize the SI_VS_SHADER_POINTER_MASK macro

Marek Olšák mareko at kemper.freedesktop.org
Tue Oct 17 20:03:29 UTC 2017


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Sat Oct  7 21:53:10 2017 +0200

radeonsi: generalize the SI_VS_SHADER_POINTER_MASK macro

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/gallium/drivers/radeonsi/si_blit.c       | 2 +-
 src/gallium/drivers/radeonsi/si_state.h      | 4 ++--
 src/gallium/drivers/radeonsi/si_state_draw.c | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c
index 03aa4f7737..fd8559ac98 100644
--- a/src/gallium/drivers/radeonsi/si_blit.c
+++ b/src/gallium/drivers/radeonsi/si_blit.c
@@ -95,7 +95,7 @@ static void si_blitter_end(struct pipe_context *ctx)
 
 	/* Restore shader pointers because the VS blit shader changed all
 	 * non-global VS user SGPRs. */
-	sctx->shader_pointers_dirty |= SI_VS_SHADER_POINTER_MASK;
+	sctx->shader_pointers_dirty |= SI_DESCS_SHADER_MASK(VERTEX);
 	sctx->vertex_buffer_pointer_dirty = true;
 	si_mark_atom_dirty(sctx, &sctx->shader_pointers.atom);
 }
diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h
index 8122ddb392..bc7e7b3e42 100644
--- a/src/gallium/drivers/radeonsi/si_state.h
+++ b/src/gallium/drivers/radeonsi/si_state.h
@@ -247,9 +247,9 @@ enum {
 #define SI_NUM_DESCS                   (SI_DESCS_FIRST_SHADER + \
                                         SI_NUM_SHADERS * SI_NUM_SHADER_DESCS)
 
-#define SI_VS_SHADER_POINTER_MASK \
+#define SI_DESCS_SHADER_MASK(name) \
 	u_bit_consecutive(SI_DESCS_FIRST_SHADER + \
-			  PIPE_SHADER_VERTEX * SI_NUM_SHADER_DESCS, \
+			  PIPE_SHADER_##name * SI_NUM_SHADER_DESCS, \
 			  SI_NUM_SHADER_DESCS)
 
 /* This represents descriptors in memory, such as buffer resources,
diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c b/src/gallium/drivers/radeonsi/si_state_draw.c
index 9468fde523..ed48eddf41 100644
--- a/src/gallium/drivers/radeonsi/si_state_draw.c
+++ b/src/gallium/drivers/radeonsi/si_state_draw.c
@@ -1544,7 +1544,7 @@ void si_draw_rectangle(struct blitter_context *blitter,
 	info.instance_count = num_instances;
 
 	/* Don't set per-stage shader pointers for VS. */
-	sctx->shader_pointers_dirty &= ~SI_VS_SHADER_POINTER_MASK;
+	sctx->shader_pointers_dirty &= ~SI_DESCS_SHADER_MASK(VERTEX);
 	sctx->vertex_buffer_pointer_dirty = false;
 
 	si_draw_vbo(pipe, &info);




More information about the mesa-commit mailing list