glsl: Keep track of location for interface block fields.
authorPaul Berry <stereotype441@gmail.com>
Mon, 9 Sep 2013 23:39:47 +0000 (16:39 -0700)
committerPaul Berry <stereotype441@gmail.com>
Tue, 8 Oct 2013 19:44:01 +0000 (12:44 -0700)
commit378ff1dbac8c01f2524282b5caa81e4296ee296e
treedfb16cd131c78e73c611875890ad97790a0691f9
parente166a58c43e92f10f03b32747bff44708096f898
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 <ian.d.romanick@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
src/glsl/ast_to_hir.cpp
src/glsl/builtin_types.cpp
src/glsl/glsl_types.cpp
src/glsl/glsl_types.h
src/glsl/lower_named_interface_blocks.cpp