[Mesa-dev] [PATCH] glsl: add packed varyings for outputs with single stage program

Tapani Pälli tapani.palli at intel.com
Tue Jan 12 01:03:14 PST 2016


Commit 8926dc8 added a check where we add packed varyings of output
stage only when we have multiple stages,  however duplicates are already
handled by changes in commit 0508d950 and we want to add outputs also in
case where we have only one stage.

Fixes regression caused by 8926dc8 for following test:
   ES31-CTS.program_interface_query.separate-programs-vertex

Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
---
 src/glsl/linker.cpp | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index eb1bdc0..e8c0b98 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -3753,13 +3753,8 @@ build_program_resource_list(struct gl_shader_program *shProg)
       if (!add_packed_varyings(shProg, input_stage, GL_PROGRAM_INPUT))
          return;
 
-      /* Only when dealing with multiple stages, otherwise we would have
-       * duplicate gl_shader_variable entries.
-       */
-      if (input_stage != output_stage) {
-         if (!add_packed_varyings(shProg, output_stage, GL_PROGRAM_OUTPUT))
-            return;
-      }
+      if (!add_packed_varyings(shProg, output_stage, GL_PROGRAM_OUTPUT))
+         return;
    }
 
    if (!add_fragdata_arrays(shProg))
-- 
2.5.0



More information about the mesa-dev mailing list