Lines Matching defs:ir
48 #include "ir.h"
64 ir_visitor_status visit(ir_loop_jump *ir);
65 ir_visitor_status visit_enter(ir_discard *ir);
66 ir_visitor_status visit_enter(ir_loop *ir);
67 ir_visitor_status visit_enter(ir_function_signature *ir);
78 lower_discard_flow_visitor::visit(ir_loop_jump *ir)
80 if (ir->mode != ir_loop_jump::jump_continue)
83 ir->insert_before(generate_discard_break());
89 lower_discard_flow_visitor::visit_enter(ir_discard *ir)
93 if (ir->condition) {
95 rhs = ir->condition;
96 ir->condition = new(mem_ctx) ir_dereference_variable(discarded);
101 ir->insert_before(assign);
107 lower_discard_flow_visitor::visit_enter(ir_loop *ir)
109 ir->body_instructions.push_tail(generate_discard_break());
115 lower_discard_flow_visitor::visit_enter(ir_function_signature *ir)
117 if (strcmp(ir->function_name(), "main") != 0)
123 ir->body.push_head(assign);
141 lower_discard_flow(exec_list *ir)
143 void *mem_ctx = ir;
149 ir->push_head(var);
153 visit_list_elements(&v, ir);