glsl/loops: Get rid of lower_bounded_loops and ir_loop::normative_bound.

Now that loop_controls no longer creates normatively bound loops,
there is no need for ir_loop::normative_bound or the
lower_bounded_loops pass.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Paul Berry
2013-11-29 00:52:11 -08:00
parent 7ea3baa64d
commit 088494aa03
45 changed files with 35 additions and 221 deletions
+1 -8
View File
@@ -193,13 +193,6 @@ loop_control_visitor::visit_leave(ir_loop *ir)
this->progress = true;
return visit_continue;
}
/* If the limiting terminator has a lower iteration count than the
* normative loop bound (if any), then the loop doesn't need a normative
* bound anymore.
*/
if (ir->normative_bound >= 0 && iterations < ir->normative_bound)
ir->normative_bound = -1;
}
/* Remove the conditional break statements associated with all terminators
@@ -215,7 +208,7 @@ loop_control_visitor::visit_leave(ir_loop *ir)
if (t->iterations < 0)
continue;
if (ir->normative_bound >= 0 || t != ls->limiting_terminator) {
if (t != ls->limiting_terminator) {
t->ir->remove();
assert(ls->num_loop_jumps > 0);