Mesa (glsl2): linker: Don't automatically allocate VERT_ATTRIB_GENERIC0

Eric Anholt anholt at kemper.freedesktop.org
Wed Jun 30 12:14:45 PDT 2010


Module: Mesa
Branch: glsl2
Commit: 982e3798d8b9bfec7ff3f37c52687036b36bc153
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=982e3798d8b9bfec7ff3f37c52687036b36bc153

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Jun 29 18:58:20 2010 -0700

linker: Don't automatically allocate VERT_ATTRIB_GENERIC0

---

 src/glsl/linker.cpp |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 719cae2..a53e91d 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -669,6 +669,12 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index
 
    qsort(to_assign, num_attr, sizeof(to_assign[0]), temp_attr::compare);
 
+   /* VERT_ATTRIB_GENERIC0 is a psdueo-alias for VERT_ATTRIB_POS.  It can only
+    * be explicitly assigned by via glBindAttribLocation.  Mark it as reserved
+    * to prevent it from being automatically allocated below.
+    */
+   used_locations |= VERT_BIT_GENERIC0;
+
    for (unsigned i = 0; i < num_attr; i++) {
       /* Mask representing the contiguous slots that will be used by this
        * attribute.



More information about the mesa-commit mailing list