From: Nicolai Hähnle Date: Wed, 6 Sep 2017 09:43:06 +0000 (+0200) Subject: st/glsl_to_tgsi: be precise about merging scopes X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=55ca12be9d3f6948bb6ce05da626c5ad32c1ef22;p=mesa.git st/glsl_to_tgsi: be precise about merging scopes enclosing_scope already contains enclosing_scope_first_read. What we really want to check here -- not for correctness, but for speed -- is whether last_read_scope already contains enclosing_scope. Reviewed-By: Gert Wollny Tested-by: Dieter Nützel --- diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi_temprename.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi_temprename.cpp index 00ec7e749bd..c0c0aaa02f3 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi_temprename.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi_temprename.cpp @@ -540,8 +540,8 @@ lifetime temp_comp_access::get_required_lifetime() if (enclosing_scope_first_write->contains_range_of(*enclosing_scope)) enclosing_scope = enclosing_scope_first_write; - if (enclosing_scope_first_read->contains_range_of(*enclosing_scope)) - enclosing_scope = enclosing_scope_first_read; + if (last_read_scope->contains_range_of(*enclosing_scope)) + enclosing_scope = last_read_scope; while (!enclosing_scope->contains_range_of(*enclosing_scope_first_write) || !enclosing_scope->contains_range_of(*last_read_scope)) {