diff options
author | Kenneth Graunke <kenneth@whitecape.org> | 2010-12-06 10:54:21 -0800 |
---|---|---|
committer | Kenneth Graunke <kenneth@whitecape.org> | 2010-12-06 13:43:22 -0800 |
commit | c17c7903871b031162e41d6495a1bef64844e19b (patch) | |
tree | d3a89af48859453542f8e44f2fcc8c78a19c248e /src/glsl/glsl_symbol_table.h | |
parent | a8f52647b045b5400ebcfc58ba235599a6e9ad87 (diff) | |
download | external_mesa3d-c17c7903871b031162e41d6495a1bef64844e19b.zip external_mesa3d-c17c7903871b031162e41d6495a1bef64844e19b.tar.gz external_mesa3d-c17c7903871b031162e41d6495a1bef64844e19b.tar.bz2 |
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.
Diffstat (limited to 'src/glsl/glsl_symbol_table.h')
-rw-r--r-- | src/glsl/glsl_symbol_table.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/glsl/glsl_symbol_table.h b/src/glsl/glsl_symbol_table.h index 329cd10..28a44eb 100644 --- a/src/glsl/glsl_symbol_table.h +++ b/src/glsl/glsl_symbol_table.h @@ -103,6 +103,11 @@ public: /*@}*/ /** + * Add an function at global scope without checking for scoping conflicts. + */ + void add_global_function(ir_function *f); + + /** * \name Methods to get symbols from the table */ /*@{*/ |