Mesa (master): gallium: add TGSI_SEMANTIC_VERTEXID

Christoph Bumiller chrisbmr at kemper.freedesktop.org
Mon Nov 14 17:15:41 UTC 2011


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

Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date:   Mon Nov 14 18:12:46 2011 +0100

gallium: add TGSI_SEMANTIC_VERTEXID

---

 src/gallium/auxiliary/tgsi/tgsi_dump.c     |    1 +
 src/gallium/auxiliary/tgsi/tgsi_scan.c     |    3 +++
 src/gallium/auxiliary/tgsi/tgsi_scan.h     |    1 +
 src/gallium/auxiliary/tgsi/tgsi_text.c     |    1 +
 src/gallium/include/pipe/p_shader_tokens.h |    5 +++--
 5 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/gallium/auxiliary/tgsi/tgsi_dump.c b/src/gallium/auxiliary/tgsi/tgsi_dump.c
index 64927ed..91bc124 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_dump.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_dump.c
@@ -128,6 +128,7 @@ static const char *semantic_names[] =
    "EDGEFLAG",
    "PRIM_ID",
    "INSTANCEID",
+   "VERTEXID",
    "STENCIL"
 };
 
diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.c b/src/gallium/auxiliary/tgsi/tgsi_scan.c
index 60de80d..97d74e4 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_scan.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.c
@@ -182,6 +182,9 @@ tgsi_scan_shader(const struct tgsi_token *tokens,
                   if (fulldecl->Semantic.Name == TGSI_SEMANTIC_INSTANCEID) {
                      info->uses_instanceid = TRUE;
                   }
+                  else if (fulldecl->Semantic.Name == TGSI_SEMANTIC_VERTEXID) {
+                     info->uses_vertexid = TRUE;
+                  }
                }
                else if (file == TGSI_FILE_OUTPUT) {
                   info->output_semantic_name[reg] = (ubyte)fulldecl->Semantic.Name;
diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.h b/src/gallium/auxiliary/tgsi/tgsi_scan.h
index 30834b4..482c106 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_scan.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.h
@@ -70,6 +70,7 @@ struct tgsi_shader_info
    boolean writes_edgeflag; /**< vertex shader outputs edgeflag */
    boolean uses_kill;  /**< KIL or KILP instruction used? */
    boolean uses_instanceid;
+   boolean uses_vertexid;
    boolean origin_lower_left;
    boolean pixel_center_integer;
    boolean color0_writes_all_cbufs;
diff --git a/src/gallium/auxiliary/tgsi/tgsi_text.c b/src/gallium/auxiliary/tgsi/tgsi_text.c
index 6b97803..eb9190c 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_text.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_text.c
@@ -1023,6 +1023,7 @@ static const char *semantic_names[TGSI_SEMANTIC_COUNT] =
    "EDGEFLAG",
    "PRIM_ID",
    "INSTANCEID",
+   "VERTEXID",
    "STENCIL"
 };
 
diff --git a/src/gallium/include/pipe/p_shader_tokens.h b/src/gallium/include/pipe/p_shader_tokens.h
index 7236c92..b04e26d 100644
--- a/src/gallium/include/pipe/p_shader_tokens.h
+++ b/src/gallium/include/pipe/p_shader_tokens.h
@@ -144,8 +144,9 @@ struct tgsi_declaration_dimension
 #define TGSI_SEMANTIC_EDGEFLAG   8
 #define TGSI_SEMANTIC_PRIMID     9
 #define TGSI_SEMANTIC_INSTANCEID 10
-#define TGSI_SEMANTIC_STENCIL    11
-#define TGSI_SEMANTIC_COUNT      12 /**< number of semantic values */
+#define TGSI_SEMANTIC_VERTEXID   11
+#define TGSI_SEMANTIC_STENCIL    12
+#define TGSI_SEMANTIC_COUNT      13 /**< number of semantic values */
 
 struct tgsi_declaration_semantic
 {




More information about the mesa-commit mailing list