History log of /external/mesa3d/src/glsl/glsl_symbol_table.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
765221c0d5fdb0357bf6fae3220c7d57d93f938d 28-Nov-2012 Kenneth Graunke <kenneth@whitecape.org> glsl: Track UBO block names in the symbol table.

The GLSL 1.40 spec says:

"Uniform block names and variable names declared within uniform
blocks are scoped at the program level."

Track the block name in the symbol table and emit errors when conflicts
exist.

Fixes es3conform's uniform_buffer_object_block_name_conflict test, and
fixes the piglit block-name-clashes-with-{variable,function,struct}.vert
tests.

NOTE: This is a candidate for the 9.0 branch.

v2: Fix bad constructor initialization. Noticed by Topi Pohjolainen.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
(cherry picked from commit 4f29169913f99252c54e1922f6d164e2ef530a58)
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
6b3713f8b864cbe238b0e7efb28bca54b91ef0f8 16-Mar-2011 José Fonseca <jfonseca@vmware.com> glsl2: Silence unused added variable gcc warning.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
d3073f58c17d8675a2ecdd5dfa83e5520c78e1a8 21-Jan-2011 Kenneth Graunke <kenneth@whitecape.org> Convert everything from the talloc API to the ralloc API.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
21031b4e887a4bd5563130d54a11972b69cb2645 16-Jan-2011 Kenneth Graunke <kenneth@whitecape.org> glsl: Don't bother unsetting a destructor that was never set.

This was totally copied and pasted from glsl_symbol_table.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
c17c7903871b031162e41d6495a1bef64844e19b 06-Dec-2010 Kenneth Graunke <kenneth@whitecape.org> glsl: Properly add functions during lazy built-in prototype importing.

The original lazy built-in importing patch did not add the newly created
function to the symbol table, nor actually emit it into the IR stream.

Adding it to the symbol table is non-trivial since importing occurs when
generating some ir_call in a nested scope. A new add_global_function
method, backed by new symbol_table code in the previous patch, handles
this.

Fixes bug #32030.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
001eee52d461233b1e1d6ed3577965e9bcb209e8 05-Nov-2010 Eric Anholt <eric@anholt.net> glsl: Make the symbol table's add_variable just use the variable's name.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
e8f5ebf313da3ce33ccbbcf9b72946853035fbdd 05-Nov-2010 Eric Anholt <eric@anholt.net> glsl: Make the symbol table's add_function just use the function's name.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
e466b182bbf21f62fe6542091f4af3275555db80 01-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> glsl2: Remove unnecessary glsl_symbol_table::get_function parameter return_constructors

Now that constructors are not generated as functions or stored in the
symbol table, there is no need to flag whether or not constructors
should be returned.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
16d9ebb35771af2bc27024bb4b788ef6427a4f23 01-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> glsl2: Remove unused 'constructor' parameter from glsl_symbol_table::add_type
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
a789ca649cb143c0c5bf3209ff1bde398fbd777e 01-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> glsl2: Don't generate constructor functions for structures
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
ccd8b935e484d267ea864b5e8c65f826d015f708 30-Aug-2010 José Fonseca <jfonseca@vmware.com> glsl: Silence unused variable warning.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
ac2376e6f51677ab321930b0200a79d1683cfbba 26-Aug-2010 Kenneth Graunke <kenneth@whitecape.org> glsl: Don't add overloads to existing structure constructors.

Instead, make a new ir_function and try to add it to the symbol table.

Fixes piglit test redeclaration-08.vert.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp
e9c7ceed27f6811ad1cae46c93ce9bc3fb3668d8 22-Aug-2010 Kenneth Graunke <kenneth@whitecape.org> glsl: Use a single shared namespace in the symbol table.

As of 1.20, variable names, function names, and structure type names all
share a single namespace, and should conflict with one another in the
same scope, or hide each other in nested scopes.

However, in 1.10, variables and functions can share the same name in the
same scope. Structure types, however, conflict with/hide both.

Fixes piglit tests redeclaration-06.vert, redeclaration-11.vert,
redeclaration-19.vert, and struct-05.vert.
/external/mesa3d/src/glsl/glsl_symbol_table.cpp