Lines Matching refs:ir
25 #include "ir.h"
91 output_read_remover::visit(ir_dereference_variable *ir)
93 if (ir->var->data.mode != ir_var_shader_out || ir->var->data.fb_fetch_output)
96 hash_entry *entry = _mesa_hash_table_search(replacements, ir->var);
101 void *var_ctx = ralloc_parent(ir->var);
102 temp = new(var_ctx) ir_variable(ir->var->type, ir->var->name,
105 temp->data.invariant = ir->var->data.invariant;
106 temp->data.precise = ir->var->data.precise;
107 temp->data.precision = ir->var->data.precision;
108 _mesa_hash_table_insert(replacements, ir->var, temp);
109 ir->var->insert_after(temp);
113 ir->var = temp;
135 ir_return *ir = (ir_return *) closure;
136 ir->insert_before(copy(ir, (ir_variable *) key, (ir_variable *) data));
148 output_read_remover::visit_leave(ir_return *ir)
150 hash_table_call_foreach(replacements, emit_return_copy, ir);
155 output_read_remover::visit_leave(ir_emit_vertex *ir)
157 hash_table_call_foreach(replacements, emit_return_copy, ir);