diff options
author | Paul Berry <[email protected]> | 2013-09-09 16:39:47 -0700 |
---|---|---|
committer | Paul Berry <[email protected]> | 2013-10-08 12:44:01 -0700 |
commit | 378ff1dbac8c01f2524282b5caa81e4296ee296e (patch) | |
tree | dfb16cd131c78e73c611875890ad97790a0691f9 /src/glsl/lower_named_interface_blocks.cpp | |
parent | e166a58c43e92f10f03b32747bff44708096f898 (diff) |
glsl: Keep track of location for interface block fields.
This patch adds a "location" element to struct glsl_struct_field, so
that we can keep track of the gl_varying_slot associated with each
built-in geometry shader input.
In lower_named_interface_blocks, we use this value to populate the
"location" field in the ir_variable that stores each geometry shader
input.
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Jordan Justen <[email protected]>
Diffstat (limited to 'src/glsl/lower_named_interface_blocks.cpp')
-rw-r--r-- | src/glsl/lower_named_interface_blocks.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/glsl/lower_named_interface_blocks.cpp b/src/glsl/lower_named_interface_blocks.cpp index 7019185a2f3..5ad5683f63d 100644 --- a/src/glsl/lower_named_interface_blocks.cpp +++ b/src/glsl/lower_named_interface_blocks.cpp @@ -150,6 +150,7 @@ flatten_named_interface_blocks_declarations::run(exec_list *instructions) var_name, (ir_variable_mode) var->mode); } + new_var->location = iface_t->fields.structure[i].location; new_var->interface_type = iface_t; hash_table_insert(interface_namespace, new_var, |