glsl: Add infrastructure for "hidden" uniforms.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 27 Oct 2014 23:34:06 +0000 (16:34 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Fri, 7 Nov 2014 00:20:01 +0000 (16:20 -0800)
commit0c0bfb2ead03789164cee364fbf405994d876ca3
tree104685c6b0e7f46ef130440a95a171216e43b407
parent13786172181bf5a753c706a7f5c3eb5d448e244e
glsl: Add infrastructure for "hidden" uniforms.

In the compiler, we'd like to generate implicit uniforms for internal
use.  These should not be visible via the GL uniform introspection API.

To support that, we add a new ir_variable::how_declared value of
ir_var_hidden, and plumb that through to gl_uniform_storage.

v2 (idr): Fix some memory management issues in
move_hidden_uniforms_to_end.  The comment block on the function has more
details.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
src/glsl/ir.h
src/glsl/ir_uniform.h
src/glsl/link_uniforms.cpp
src/mesa/main/mtypes.h
src/mesa/main/shaderapi.c