[Mesa-dev] [PATCH] glsl: look up for transform feedback varyings after linking

Juan A. Suarez Romero jasuarez at igalia.com
Thu Jul 6 09:12:39 UTC 2017


Check if shaders have transform feedback varyings also after the
post-link step.

This fixes:
KHR-GL45.enhanced_layouts.xfb_vertex_streams
piglit/spec/arb_enhanced_layouts/gs-stream-location-aliasing
---
 src/compiler/glsl/glsl_to_nir.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp
index 2153004..fad08ec 100644
--- a/src/compiler/glsl/glsl_to_nir.cpp
+++ b/src/compiler/glsl/glsl_to_nir.cpp
@@ -171,6 +171,9 @@ glsl_to_nir(const struct gl_shader_program *shader_prog,
       shader->info.label = ralloc_strdup(shader, shader_prog->Label);
    shader->info.has_transform_feedback_varyings =
       shader_prog->TransformFeedback.NumVarying > 0;
+   if (shader_prog->last_vert_prog)
+      shader->info.has_transform_feedback_varyings |=
+         shader_prog->last_vert_prog->sh.LinkedTransformFeedback->NumVarying > 0;
 
    return shader;
 }
-- 
2.9.4



More information about the mesa-dev mailing list