Mesa (master): mesa: Consider gl_VertexID and gl_InstanceID active attribs

Chris Forbes chrisf at kemper.freedesktop.org
Sun Apr 13 07:25:01 UTC 2014


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

Author: Chris Forbes <chrisf at ijw.co.nz>
Date:   Sat Apr 12 21:20:43 2014 +1200

mesa: Consider gl_VertexID and gl_InstanceID active attribs

Fixes piglit's spec/gl-3.2/get-active-attrib-returns-all-inputs.

Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/main/shader_query.cpp |    9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/mesa/main/shader_query.cpp b/src/mesa/main/shader_query.cpp
index 1c3c8e9..f66c117 100644
--- a/src/mesa/main/shader_query.cpp
+++ b/src/mesa/main/shader_query.cpp
@@ -86,6 +86,15 @@ is_active_attrib(const ir_variable *var)
    case ir_var_shader_in:
       return var->data.location != -1;
 
+   case ir_var_system_value:
+      /* From GL 4.3 core spec, section 11.1.1 (Vertex Attributes):
+       * "For GetActiveAttrib, all active vertex shader input variables
+       * are enumerated, including the special built-in inputs gl_VertexID
+       * and gl_InstanceID."
+       */
+      return !strcmp(var->name, "gl_VertexID") ||
+             !strcmp(var->name, "gl_InstanceID");
+
    default:
       return false;
    }




More information about the mesa-commit mailing list