Lines Matching refs:ir
49 #include "ir.h"
93 check_control_flow(ir_instruction *ir, void *data)
96 switch (ir->ir_type) {
116 ir_instruction *ir = (ir_instruction *) node;
118 if (ir->ir_type == ir_type_assignment) {
119 ir_assignment *assign = (ir_assignment *)ir;
152 ir->remove();
153 if_ir->insert_before(ir);
158 ir_if_to_cond_assign_visitor::visit_enter(ir_if *ir)
160 (void) ir;
167 ir_if_to_cond_assign_visitor::visit_leave(ir_if *ir)
177 foreach_iter(exec_list_iterator, then_iter, ir->then_instructions) {
181 foreach_iter(exec_list_iterator, else_iter, ir->else_instructions) {
188 void *mem_ctx = ralloc_parent(ir);
198 ir->insert_before(then_var);
203 assign = new(mem_ctx) ir_assignment(then_cond, ir->condition);
204 ir->insert_before(assign);
206 move_block_to_cond_assign(mem_ctx, ir, then_cond,
207 &ir->then_instructions,
220 if (!ir->else_instructions.is_empty()) {
225 ir->insert_before(else_var);
235 ir->insert_before(assign);
237 move_block_to_cond_assign(mem_ctx, ir, else_cond,
238 &ir->else_instructions,
247 ir->remove();