Home | History | Annotate | Download | only in glsl

Lines Matching refs:ir

36 #include "ir.h"
46 assignment_entry(ir_variable *lhs, ir_instruction *ir)
49 assert(ir);
51 this->ir = ir;
55 ir_instruction *ir;
65 virtual ir_visitor_status visit(ir_dereference_variable *ir)
67 ir_variable *const var = ir->variable_referenced();
93 virtual ir_visitor_status visit_enter(class ir_dereference_array *ir)
95 ir->array_index->accept(visitor);
99 static void run(ir_instruction *ir, ir_hierarchical_visitor *v)
102 ir->accept(& top_visit);
114 process_assignment(void *ctx, ir_assignment *ir, exec_list *assignments)
121 ir->rhs->accept(&v);
122 if (ir->condition) {
123 ir->condition->accept(&v);
128 array_index_visit::run(ir->lhs, &v);
129 var = ir->lhs->variable_referenced();
133 if (ir->condition) {
134 ir_constant *condition = ir->condition->as_constant();
140 if (always_assign && (ir->whole_variable_written() != NULL)) {
152 entry->ir->remove();
162 if (ir_has_call(ir))
165 assignment_entry *entry = new(ctx) assignment_entry(var, ir);
187 ir_instruction *ir, *ir_next;
195 for (ir = first, ir_next = (ir_instruction *)first->next;;
196 ir = ir_next, ir_next = (ir_instruction *)ir->next) {
197 ir_assignment *ir_assign = ir->as_assignment();
200 ir->print();
208 ir->accept(&kill);
211 if (ir == last)