summaryrefslogtreecommitdiffstats
path: root/src/glsl
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2010-12-01 15:33:56 -0800
committerIan Romanick <[email protected]>2010-12-09 16:42:05 -0800
commit13c45c590b69341487acf21f339bf1e502eedee6 (patch)
treea16276002e4996646440e1754fe898257cd6477d /src/glsl
parent528fa8ce329c22d6376d075c2afa69f177423bfa (diff)
glsl: Consider the "else" branch when looking for loop breaks.
Found this bug by code inspection. Based off the comments just before this code, the intent is to find whether the break exists in the "then" branch or the "else" branch. However, the code actually looked at the last instruction in the "then" branch twice.
Diffstat (limited to 'src/glsl')
-rw-r--r--src/glsl/loop_unroll.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glsl/loop_unroll.cpp b/src/glsl/loop_unroll.cpp
index 4e6acda907e..c5001ba9530 100644
--- a/src/glsl/loop_unroll.cpp
+++ b/src/glsl/loop_unroll.cpp
@@ -104,7 +104,7 @@ loop_unroll_visitor::visit_leave(ir_loop *ir)
if (is_break(last)) {
continue_from_then_branch = false;
} else {
- last = (ir_instruction *) last_if->then_instructions.get_tail();
+ last = (ir_instruction *) last_if->else_instructions.get_tail();
if (is_break(last))
continue_from_then_branch = true;