With the landing of update f75a5cccd800bb011b44c799415efdfe547d6076 at OpenGL CTS 4.6.0 KHR-GL46.tessellation_shader.single.xfb_captures_data_from_correct_stage starts failing.
Author: Piers Daniell <email@example.com>
Date: Tue Oct 2 11:51:25 2018 -0600
Use non-arrayed varying name for TCS blocks
This is a partial revert of CL 2625 to restore naming the
value member of the BLOCK_INOUT interface block as
"BLOCK_INOUT.value" rather than "BLOCK_INOUT.value".
VK-GL-CTS issue: 1388
Mesa populates the transform feedback candidates with the following names because TCS interface block is arrayed:
As now the tests has been changed to use as XFB name BLOCK_INOUT.value the variable isn't found and a linking error is raised.
More details about the motivations of the test modification are available at Khronos Gitlab.
I've just send a fix for review:
Fix landed in Mesa master.
Author: Ilia Mirkin <firstname.lastname@example.org>
Date: Fri Feb 22 01:13:39 2019 -0500
glsl: fix recording of variables for XFB in TCS shaders
This is purely for conformance, since it's not actually possible to do
XFB on TCS output varyings. However we do have to make sure we record
the names correctly, and this removes an extra level of array-ness from
the names in question.
v2: Add comment to the new program_resource_visitor::process function.
Signed-off-by: Ilia Mirkin <email@example.com>
Cc: 19.0 <firstname.lastname@example.org>
Reviewed-by: Timothy Arceri <email@example.com>