Mesa (master): compiler: add SYSTEM_VALUE_VARYING_COORD

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 14 22:02:00 UTC 2018


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

Author: Rob Clark <robdclark at gmail.com>
Date:   Fri Aug 10 09:13:47 2018 -0400

compiler: add SYSTEM_VALUE_VARYING_COORD

Used internally in freedreno/ir3 for the vec2 value that hw passes to
shader to use as coordinate for bary.f (varying fetch) instruction.
This is not the same as SYSTEM_VALUE_FRAG_COORD.

Signed-off-by: Rob Clark <robdclark at gmail.com>

---

 src/compiler/shader_enums.c                | 1 +
 src/compiler/shader_enums.h                | 6 ++++++
 src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 1 +
 3 files changed, 8 insertions(+)

diff --git a/src/compiler/shader_enums.c b/src/compiler/shader_enums.c
index a874083a0b..0210b503d3 100644
--- a/src/compiler/shader_enums.c
+++ b/src/compiler/shader_enums.c
@@ -244,6 +244,7 @@ gl_system_value_name(gl_system_value sysval)
      ENUM(SYSTEM_VALUE_DEVICE_INDEX),
      ENUM(SYSTEM_VALUE_VIEW_INDEX),
      ENUM(SYSTEM_VALUE_VERTEX_CNT),
+     ENUM(SYSTEM_VALUE_VARYING_COORD),
    };
    STATIC_ASSERT(ARRAY_SIZE(names) == SYSTEM_VALUE_MAX);
    return NAME(sysval);
diff --git a/src/compiler/shader_enums.h b/src/compiler/shader_enums.h
index f8e22925f3..5c36f55283 100644
--- a/src/compiler/shader_enums.h
+++ b/src/compiler/shader_enums.h
@@ -601,6 +601,12 @@ typedef enum
     */
    SYSTEM_VALUE_VERTEX_CNT,
 
+   /**
+    * Driver internal varying-coord, used for varying-fetch instructions.
+    * Not externally visible.
+    */
+   SYSTEM_VALUE_VARYING_COORD,
+
    SYSTEM_VALUE_MAX             /**< Number of values */
 } gl_system_value;
 
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 2b9183abbb..988f3ca83e 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -5792,6 +5792,7 @@ _mesa_sysval_to_semantic(unsigned sysval)
    case SYSTEM_VALUE_LOCAL_INVOCATION_INDEX:
    case SYSTEM_VALUE_GLOBAL_INVOCATION_ID:
    case SYSTEM_VALUE_VERTEX_CNT:
+   case SYSTEM_VALUE_VARYING_COORD:
    default:
       assert(!"Unexpected SYSTEM_VALUE_ enum");
       return TGSI_SEMANTIC_COUNT;




More information about the mesa-commit mailing list