mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 07:28:11 +02:00
glsl: Disable structure splitting for shader ins/outs.
Previously, it didn't matter whether structure splitting tried to split shader ins/outs, because structs were prohibited from being used for shader ins/outs. However, GLSL 3.00 ES supports varying structs. In order for varying structs to work, we need to make sure that structure splitting doesn't get applied to them, because if it does, then the linker won't be able to match up varyings properly. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
42a29d89fd
commit
3680864c0b
1 changed files with 2 additions and 1 deletions
|
|
@ -104,7 +104,8 @@ ir_structure_reference_visitor::get_variable_entry(ir_variable *var)
|
|||
{
|
||||
assert(var);
|
||||
|
||||
if (!var->type->is_record() || var->mode == ir_var_uniform)
|
||||
if (!var->type->is_record() || var->mode == ir_var_uniform
|
||||
|| var->mode == ir_var_shader_in || var->mode == ir_var_shader_out)
|
||||
return NULL;
|
||||
|
||||
foreach_iter(exec_list_iterator, iter, this->variable_list) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue