mesa: Fix linker-assigned varying component counting since 8fb1e4a462
The goal of that change was to skip counting things that aren't actually outputs from the VS to the FS. However, explicit_location isn't set in the case of linker-assigned locations (the common case), so basically varying component counting got disabled. At this stage of the linker, we've already ensured that var->location is set, so we can just look at it without worrying. Fixes i965 assertion failure with the new piglit glsl-max-varyings --exceed-limits. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51545 Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
parent
5c99697f74
commit
94e82b2e6c
|
@ -2010,8 +2010,7 @@ is_varying_var(GLenum shaderType, const ir_variable *var)
|
|||
{
|
||||
/* Only fragment shaders will take a varying variable as an input */
|
||||
if (shaderType == GL_FRAGMENT_SHADER &&
|
||||
var->mode == ir_var_in &&
|
||||
var->explicit_location) {
|
||||
var->mode == ir_var_in) {
|
||||
switch (var->location) {
|
||||
case FRAG_ATTRIB_WPOS:
|
||||
case FRAG_ATTRIB_FACE:
|
||||
|
|
Loading…
Reference in New Issue