From 956f049fd24eb5239361e68a1f27e1bebb3315a0 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 7 Sep 2010 13:33:48 -0700 Subject: glsl2: Early return with visit_continue in loop_analysis::visit(ir_dereference_variable *) Returning early with visit_continue_with_parent prevented the then-statements and else-statements of if-statements such as the following from being processed: if (some_var) { ... } else { ... } Fixes piglit test case glsl-fs-loop-nested-if and bugzilla #30030. --- src/glsl/loop_analysis.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/glsl/loop_analysis.cpp b/src/glsl/loop_analysis.cpp index 32e8b8c85b..91e34da0ee 100644 --- a/src/glsl/loop_analysis.cpp +++ b/src/glsl/loop_analysis.cpp @@ -154,7 +154,7 @@ loop_analysis::visit(ir_dereference_variable *ir) /* If we're not somewhere inside a loop, there's nothing to do. */ if (this->state.is_empty()) - return visit_continue_with_parent; + return visit_continue; loop_variable_state *const ls = (loop_variable_state *) this->state.get_head(); -- cgit v1.2.3