glsl: Make is_fixed_function_array actually check for varyings.
We can't check VARYING_SLOT_* locations until we've determined that the variable is actually a varying. Fixes assert failures in drivers which actually use this path, such as radeonsi and i915. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99314 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
5a165b4086
commit
42699e1271
|
@ -337,6 +337,10 @@ is_multiple_vertices(gl_shader_stage stage, ir_variable *var)
|
|||
static bool
|
||||
is_fixed_function_array(ir_variable *var)
|
||||
{
|
||||
if (var->data.mode != ir_var_shader_in &&
|
||||
var->data.mode != ir_var_shader_out)
|
||||
return false;
|
||||
|
||||
switch (var->data.location) {
|
||||
case VARYING_SLOT_TESS_LEVEL_OUTER:
|
||||
case VARYING_SLOT_TESS_LEVEL_INNER:
|
||||
|
|
Loading…
Reference in New Issue