summaryrefslogtreecommitdiff
path: root/ir_dead_code.cpp
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2010-05-10 17:44:57 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-05-17 12:03:13 -0700
commit86790dd43f6b8253d99f5473c593031adc847230 (patch)
tree3c6e2dc0d90d6eb3595877beb052962759333139 /ir_dead_code.cpp
parent5d82e239f98060c6de37f31f3900d84ee43aa4e5 (diff)
Replace find_dead_code with visit_exec_list
find_dead_code appears to be an open-coded version of visit_exec_list that was implemented first.
Diffstat (limited to 'ir_dead_code.cpp')
-rw-r--r--ir_dead_code.cpp19
1 files changed, 5 insertions, 14 deletions
diff --git a/ir_dead_code.cpp b/ir_dead_code.cpp
index a73e9ed9bb..0cc8a2650f 100644
--- a/ir_dead_code.cpp
+++ b/ir_dead_code.cpp
@@ -100,15 +100,6 @@ ir_dead_code_visitor::get_variable_entry(ir_variable *var)
return entry;
}
-void
-find_dead_code(exec_list *instructions, ir_dead_code_visitor *v)
-{
- foreach_iter(exec_list_iterator, iter, *instructions) {
- ir_instruction *ir = (ir_instruction *)iter.get();
-
- ir->accept(v);
- }
-}
void
ir_dead_code_visitor::visit(ir_variable *ir)
@@ -123,7 +114,7 @@ ir_dead_code_visitor::visit(ir_variable *ir)
void
ir_dead_code_visitor::visit(ir_loop *ir)
{
- find_dead_code(&ir->body_instructions, this);
+ visit_exec_list(&ir->body_instructions, this);
if (ir->from)
ir->from->accept(this);
if (ir->to)
@@ -142,7 +133,7 @@ ir_dead_code_visitor::visit(ir_loop_jump *ir)
void
ir_dead_code_visitor::visit(ir_function_signature *ir)
{
- find_dead_code(&ir->body, this);
+ visit_exec_list(&ir->body, this);
}
void
@@ -263,8 +254,8 @@ ir_dead_code_visitor::visit(ir_if *ir)
{
ir->condition->accept(this);
- find_dead_code(&ir->then_instructions, this);
- find_dead_code(&ir->else_instructions, this);
+ visit_exec_list(&ir->then_instructions, this);
+ visit_exec_list(&ir->else_instructions, this);
}
/**
@@ -280,7 +271,7 @@ do_dead_code(exec_list *instructions)
ir_dead_code_visitor v;
bool progress = false;
- find_dead_code(instructions, &v);
+ visit_exec_list(instructions, &v);
foreach_iter(exec_list_iterator, iter, v.variable_list) {
variable_entry *entry = (variable_entry *)iter.get();