From 1d5d67f8adac9f94715de9804adb536d9a7ec5ee Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 21 Oct 2011 11:17:39 -0700 Subject: glsl: Add uniform_locations_assigned parameter to do_dead_code opt pass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Setting this flag prevents declarations of uniforms from being removed from the IR. Since the IR is directly used by several API functions that query uniforms in shaders, uniform declarations cannot be removed after the locations have been set. However, it should still be safe to reorder the declarations (this is not tested). Signed-off-by: Ian Romanick Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41980 Tested-by: Brian Paul Reviewed-by: Bryan Cain Cc: Vinson Lee Cc: José Fonseca Reviewed-by: Kenneth Graunke Reviewed-by: Yuanhan Liu --- src/mesa/drivers/dri/i965/brw_shader.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/mesa/drivers/dri/i965/brw_shader.cpp') diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp index 0858c4032bb..d9d9414543d 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.cpp +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp @@ -138,7 +138,8 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *prog) false /* loops */ ) || progress; - progress = do_common_optimization(shader->ir, true, 32) || progress; + progress = do_common_optimization(shader->ir, true, true, 32) + || progress; } while (progress); validate_ir_tree(shader->ir); -- cgit v1.2.3