Module: Mesa Branch: master Commit: 7de4d8fe11c53e59265b8a4252ab9940ffcc9929 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7de4d8fe11c53e59265b8a4252ab9940ffcc9929
Author: Eric Anholt <[email protected]> Date: Tue Aug 24 15:30:42 2010 -0700 glsl: Don't dead-code eliminate a uniform initializer. Partial fix for glsl-uniform-initializer-5. --- src/glsl/ir_dead_code.cpp | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/src/glsl/ir_dead_code.cpp b/src/glsl/ir_dead_code.cpp index 7ff580d..5cf5e99 100644 --- a/src/glsl/ir_dead_code.cpp +++ b/src/glsl/ir_dead_code.cpp @@ -92,6 +92,14 @@ do_dead_code(exec_list *instructions) /* If there are no assignments or references to the variable left, * then we can remove its declaration. */ + + /* uniform initializers are precious, and could get used by another + * stage. + */ + if (entry->var->mode == ir_var_uniform && + entry->var->constant_value) + continue; + entry->var->remove(); progress = true; _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
