Summary: | piglit and gl45 cts linker tests regressed | ||
---|---|---|---|
Product: | Mesa | Reporter: | Mark Janes <mark.a.janes> |
Component: | Mesa core | Assignee: | Nicolai Haehnle <prefect_> |
Status: | RESOLVED FIXED | QA Contact: | mesa-dev |
Severity: | normal | ||
Priority: | medium | ||
Version: | git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Mark Janes
2017-09-20 16:25:53 UTC
bisected to mesa 15cae12804ef288c7fb4cb9a38f7e32e6d8c4dc1 In fs-out-overlap.shader_test, we have this: layout(location = 0) out vec2 a; // consumes Z/W components layout(location = 0, component = 1) out vec2 b; Before the patch, we would do: assigned[assigned_attr] = var; assigned_attr++; on the first variable. But with the patch, we stop doing this, and fail to record the first variable - because there's no used location. So, on the second variable, we look through the existing assigned attributes, and see nothing, and fail to raise the error. I think we just need to move the code back. Ah, my bad. Moving the code back is incorrect though because it can overflow the array (that's the bug that the commit fixed). This should do it: https://patchwork.freedesktop.org/patch/178036/ Patch was applied to master and propagated to the respective stable branches. commit df8767a14e3eae4dcb8241b731b34e9379706795 Author: Nicolai Hähnle <nicolai.haehnle@amd.com> Date: Wed Sep 20 21:56:26 2017 +0200 glsl/linker: properly fix output variable overlap check |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.