summaryrefslogtreecommitdiffstats
path: root/src/glsl/ast_to_hir.cpp
diff options
context:
space:
mode:
authorPaul Berry <[email protected]>2013-09-09 16:39:47 -0700
committerPaul Berry <[email protected]>2013-10-08 12:44:01 -0700
commit378ff1dbac8c01f2524282b5caa81e4296ee296e (patch)
treedfb16cd131c78e73c611875890ad97790a0691f9 /src/glsl/ast_to_hir.cpp
parente166a58c43e92f10f03b32747bff44708096f898 (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/ast_to_hir.cpp')
-rw-r--r--src/glsl/ast_to_hir.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index 0859d9e00a3..275d7803648 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -4491,6 +4491,7 @@ ast_process_structure_or_interface_block(exec_list *instructions,
}
fields[i].type = field_type;
fields[i].name = decl->identifier;
+ fields[i].location = -1;
if (qual->flags.q.row_major || qual->flags.q.column_major) {
if (!qual->flags.q.uniform) {