diff options
Diffstat (limited to 'mesalib/src/glsl/lower_named_interface_blocks.cpp')
-rw-r--r-- | mesalib/src/glsl/lower_named_interface_blocks.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/mesalib/src/glsl/lower_named_interface_blocks.cpp b/mesalib/src/glsl/lower_named_interface_blocks.cpp index f415252ba..d59d11150 100644 --- a/mesalib/src/glsl/lower_named_interface_blocks.cpp +++ b/mesalib/src/glsl/lower_named_interface_blocks.cpp @@ -140,6 +140,7 @@ flatten_named_interface_blocks_declarations::run(exec_list *instructions) new(mem_ctx) ir_variable(iface_t->fields.structure[i].type, var_name, (ir_variable_mode) var->mode); + new_var->from_named_ifc_block_nonarray = 1; } else { const glsl_type *new_array_type = glsl_type::get_array_instance( @@ -149,8 +150,13 @@ flatten_named_interface_blocks_declarations::run(exec_list *instructions) new(mem_ctx) ir_variable(new_array_type, var_name, (ir_variable_mode) var->mode); + new_var->from_named_ifc_block_array = 1; } new_var->location = iface_t->fields.structure[i].location; + new_var->explicit_location = (new_var->location >= 0); + new_var->interpolation = + iface_t->fields.structure[i].interpolation; + new_var->centroid = iface_t->fields.structure[i].centroid; new_var->init_interface_type(iface_t); hash_table_insert(interface_namespace, new_var, |