Module: Mesa
Branch: main
Commit: 57abc7d0379199a75e8721845c8dbc689bf0db3f
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=57abc7d0379199a75e8721845c8dbc689bf0db3f

Author: Erik Faye-Lund <[email protected]>
Date:   Fri Jun 23 14:17:28 2023 +0200

draw: use enum for tgsi-semantic

Reviewed-by: Eric Engestrom <[email protected]>
Reviewed-by: Yonggang Luo <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23833>

---

 src/gallium/auxiliary/draw/draw_context.c        | 6 ++++--
 src/gallium/auxiliary/draw/draw_context.h        | 4 +++-
 src/gallium/auxiliary/draw/draw_pipe_clip.c      | 2 +-
 src/gallium/auxiliary/draw/draw_pipe_flatshade.c | 2 +-
 src/gallium/auxiliary/draw/draw_private.h        | 6 ++++--
 5 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_context.c 
b/src/gallium/auxiliary/draw/draw_context.c
index bc1ee0497e8..fa3589b2e5f 100644
--- a/src/gallium/auxiliary/draw/draw_context.c
+++ b/src/gallium/auxiliary/draw/draw_context.c
@@ -552,7 +552,8 @@ draw_enable_point_sprites(struct draw_context *draw, 
boolean enable)
  */
 int
 draw_alloc_extra_vertex_attrib(struct draw_context *draw,
-                               uint semantic_name, uint semantic_index)
+                               enum tgsi_semantic semantic_name,
+                               uint semantic_index)
 {
    int slot = draw_find_shader_output(draw, semantic_name, semantic_index);
    if (slot >= 0) {
@@ -645,7 +646,8 @@ draw_prepare_shader_outputs(struct draw_context *draw)
  */
 int
 draw_find_shader_output(const struct draw_context *draw,
-                        uint semantic_name, uint semantic_index)
+                        enum tgsi_semantic semantic_name,
+                        uint semantic_index)
 {
    const struct tgsi_shader_info *info = draw_get_shader_info(draw);
 
diff --git a/src/gallium/auxiliary/draw/draw_context.h 
b/src/gallium/auxiliary/draw/draw_context.h
index 8d4be87d499..cb8ec91f8d0 100644
--- a/src/gallium/auxiliary/draw/draw_context.h
+++ b/src/gallium/auxiliary/draw/draw_context.h
@@ -39,6 +39,7 @@
 
 
 #include "pipe/p_state.h"
+#include "pipe/p_shader_tokens.h"
 #include "nir.h"
 
 struct pipe_context;
@@ -167,7 +168,8 @@ draw_prepare_shader_outputs(struct draw_context *draw);
 
 int
 draw_find_shader_output(const struct draw_context *draw,
-                        uint semantic_name, uint semantic_index);
+                        enum tgsi_semantic semantic_name,
+                        uint semantic_index);
 
 boolean
 draw_will_inject_frontface(const struct draw_context *draw);
diff --git a/src/gallium/auxiliary/draw/draw_pipe_clip.c 
b/src/gallium/auxiliary/draw/draw_pipe_clip.c
index b7f7caf182c..c02b80e455e 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_clip.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_clip.c
@@ -767,7 +767,7 @@ clip_tri(struct draw_stage *stage, struct prim_header 
*header)
 static enum tgsi_interpolate_mode
 find_interp(const struct draw_fragment_shader *fs,
             enum tgsi_interpolate_mode *indexed_interp,
-            uint semantic_name, uint semantic_index)
+            enum tgsi_semantic semantic_name, uint semantic_index)
 {
    enum tgsi_interpolate_mode interp;
 
diff --git a/src/gallium/auxiliary/draw/draw_pipe_flatshade.c 
b/src/gallium/auxiliary/draw/draw_pipe_flatshade.c
index 7ad7c79b761..03bd8f243c9 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_flatshade.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_flatshade.c
@@ -168,7 +168,7 @@ flatshade_line_1(struct draw_stage *stage,
 
 static int
 find_interp(const struct draw_fragment_shader *fs, int *indexed_interp,
-            uint semantic_name, uint semantic_index)
+            enum tgsi_semantic semantic_name, uint semantic_index)
 {
    int interp;
    /* If it's gl_{Front,Back}{,Secondary}Color, pick up the mode
diff --git a/src/gallium/auxiliary/draw/draw_private.h 
b/src/gallium/auxiliary/draw/draw_private.h
index 2bd3e1ddc2a..39a523b0154 100644
--- a/src/gallium/auxiliary/draw/draw_private.h
+++ b/src/gallium/auxiliary/draw/draw_private.h
@@ -43,6 +43,7 @@
 
 #include "pipe/p_state.h"
 #include "pipe/p_defines.h"
+#include "pipe/p_shader_tokens.h"
 
 #include "draw_vertex_header.h"
 
@@ -357,7 +358,7 @@ struct draw_context
     */
    struct {
       uint num;
-      uint semantic_name[DRAW_MAX_EXTRA_SHADER_OUTPUTS];
+      enum tgsi_semantic semantic_name[DRAW_MAX_EXTRA_SHADER_OUTPUTS];
       uint semantic_index[DRAW_MAX_EXTRA_SHADER_OUTPUTS];
       uint slot[DRAW_MAX_EXTRA_SHADER_OUTPUTS];
    } extra_shader_outputs;
@@ -446,7 +447,8 @@ uint draw_current_shader_ccdistance_output(const struct 
draw_context *draw, int
 uint draw_current_shader_num_written_clipdistances(const struct draw_context 
*draw);
 uint draw_current_shader_num_written_culldistances(const struct draw_context 
*draw);
 int draw_alloc_extra_vertex_attrib(struct draw_context *draw,
-                                   uint semantic_name, uint semantic_index);
+                                   enum tgsi_semantic semantic_name,
+                                   uint semantic_index);
 void draw_remove_extra_vertex_attribs(struct draw_context *draw);
 boolean draw_current_shader_uses_viewport_index(
    const struct draw_context *draw);

Reply via email to