Home | History | Annotate | Download | only in nir

Lines Matching refs:state

65 print_annotation(print_state *state, void *obj)
67 if (!state->annotations)
70 struct hash_entry *entry = _mesa_hash_table_search(state->annotations, obj);
75 _mesa_hash_table_remove(state->annotations, entry);
81 print_register(nir_register *reg, print_state *state)
83 FILE *fp = state->fp;
95 print_register_decl(nir_register *reg, print_state *state)
97 FILE *fp = state->fp;
101 print_register(reg, state);
108 print_ssa_def(nir_ssa_def *def, print_state *state)
110 FILE *fp = state->fp;
118 print_ssa_use(nir_ssa_def *def, print_state *state)
120 FILE *fp = state->fp;
126 static void print_src(nir_src *src, print_state *state);
129 print_reg_src(nir_reg_src *src, print_state *state)
131 FILE *fp = state->fp;
132 print_register(src->reg, state);
137 print_src(src->indirect, state);
144 print_reg_dest(nir_reg_dest *dest, print_state *state)
146 FILE *fp = state->fp;
147 print_register(dest->reg, state);
152 print_src(dest->indirect, state);
159 print_src(nir_src *src, print_state *state)
162 print_ssa_use(src->ssa, state);
164 print_reg_src(&src->reg, state);
168 print_dest(nir_dest *dest, print_state *state)
171 print_ssa_def(&dest->ssa, state);
173 print_reg_dest(&dest->reg, state);
177 print_alu_src(nir_alu_instr *instr, unsigned src, print_state *state)
179 FILE *fp = state->fp;
186 print_src(&instr->src[src].src, state);
222 print_alu_dest(nir_alu_dest *dest, print_state *state)
224 FILE *fp = state->fp;
227 print_dest(&dest->dest, state);
239 print_alu_instr(nir_alu_instr *instr, print_state *state)
241 FILE *fp = state->fp;
243 print_alu_dest(&instr->dest, state);
256 print_alu_src(instr, i, state);
261 get_var_name(nir_variable *var, print_state *state)
263 if (state->ht == NULL)
266 assert(state->syms);
268 struct hash_entry *entry = _mesa_hash_table_search(state->ht, var);
274 name = ralloc_asprintf(state->syms, "@%u", state->index++);
276 struct set_entry *set_entry = _mesa_set_search(state->syms, var->name);
280 name = ralloc_asprintf(state->syms, "%s@%u", var->name,
281 state->index++);
284 _mesa_set_add(state->syms, var->name);
289 _mesa_hash_table_insert(state->ht, var, name);
295 print_constant(nir_constant *c, const struct glsl_type *type, print_state *state)
297 FILE *fp = state->fp;
337 print_constant(c->elements[i], glsl_get_struct_field(type, i), state);
346 print_constant(c->elements[i], glsl_get_array_element(type), state);
381 print_var_decl(nir_variable *var, print_state *state)
383 FILE *fp = state->fp;
403 get_var_name(var, state));
412 switch (state->shader->stage) {
449 print_constant(var->constant_initializer, var->type, state);
454 print_annotation(state, var);
458 print_var(nir_variable *var, print_state *state)
460 FILE *fp = state->fp;
461 fprintf(fp, "%s", get_var_name(var, state));
465 print_arg(nir_variable *var, print_state *state)
467 FILE *fp = state->fp;
469 get_var_name(var, state));
473 print_deref_var(nir_deref_var *deref, print_state *state)
475 print_var(deref->var, state);
479 print_deref_array(nir_deref_array *deref, print_state *state)
481 FILE *fp = state->fp;
490 print_src(&deref->indirect, state);
501 print_state *state)
503 FILE *fp = state->fp;
508 print_deref(nir_deref_var *deref, print_state *state)
517 print_deref_var(deref, state);
522 print_deref_array(nir_deref_as_array(tail), state);
528 pretail->type, state);
541 print_intrinsic_instr(nir_intrinsic_instr *instr, print_state *state)
545 FILE *fp = state->fp;
548 print_dest(&instr->dest, state);
558 print_src(&instr->src[i], state);
567 print_deref(instr->variables[i], state);
611 if (!state->shader)
618 var_list = &state->shader->uniforms;
622 var_list = &state->shader->inputs;
627 var_list = &state->shader->outputs;
645 print_tex_instr(nir_tex_instr *instr, print_state *state)
647 FILE *fp = state->fp;
649 print_dest(&instr->dest, state);
699 print_src(&instr->src[i].src, state);
757 print_deref(instr->texture, state);
760 print_deref(instr->sampler, state);
771 print_call_instr(nir_call_instr *instr, print_state *state)
773 FILE *fp = state->fp;
781 print_deref(instr->params[i], state);
788 print_deref(instr->return_deref, state);
793 print_load_const_instr(nir_load_const_instr *instr, print_state *state)
795 FILE *fp = state->fp;
797 print_ssa_def(&instr->def, state);
822 print_jump_instr(nir_jump_instr *instr, print_state *state)
824 FILE *fp = state->fp;
842 print_ssa_undef_instr(nir_ssa_undef_instr* instr, print_state *state)
844 FILE *fp = state->fp;
845 print_ssa_def(&instr->def, state);
850 print_phi_instr(nir_phi_instr *instr, print_state *state)
852 FILE *fp = state->fp;
853 print_dest(&instr->dest, state);
860 print_src(&src->src, state);
865 print_parallel_copy_instr(nir_parallel_copy_instr *instr, print_state *state)
867 FILE *fp = state->fp;
872 print_dest(&entry->dest, state);
874 print_src(&entry->src, state);
879 print_instr(const nir_instr *instr, print_state *state, unsigned tabs)
881 FILE *fp = state->fp;
886 print_alu_instr(nir_instr_as_alu(instr), state);
890 print_call_instr(nir_instr_as_call(instr), state);
894 print_intrinsic_instr(nir_instr_as_intrinsic(instr), state);
898 print_tex_instr(nir_instr_as_tex(instr), state);
902 print_load_const_instr(nir_instr_as_load_const(instr), state);
906 print_jump_instr(nir_instr_as_jump(instr), state);
910 print_ssa_undef_instr(nir_instr_as_ssa_undef(instr), state);
914 print_phi_instr(nir_instr_as_phi(instr), state);
918 print_parallel_copy_instr(nir_instr_as_parallel_copy(instr), state);
936 static void print_cf_node(nir_cf_node *node, print_state *state,
940 print_block(nir_block *block, print_state *state, unsigned tabs)
942 FILE *fp = state->fp;
971 print_instr(instr, state, tabs);
973 print_annotation(state, instr);
986 print_if(nir_if *if_stmt, print_state *state, unsigned tabs)
988 FILE *fp = state->fp;
992 print_src(&if_stmt->condition, state);
995 print_cf_node(node, state, tabs + 1);
1000 print_cf_node(node, state, tabs + 1);
1007 print_loop(nir_loop *loop, print_state *state, unsigned tabs)
1009 FILE *fp = state->fp;
1014 print_cf_node(node, state, tabs + 1);
1021 print_cf_node(nir_cf_node *node, print_state *state, unsigned int tabs)
1025 print_block(nir_cf_node_as_block(node), state, tabs);
1029 print_if(nir_cf_node_as_if(node), state, tabs);
1033 print_loop(nir_cf_node_as_loop(node), state, tabs);
1042 print_function_impl(nir_function_impl *impl, print_state *state)
1044 FILE *fp = state->fp;
1052 print_arg(impl->params[i], state);
1059 print_arg(impl->return_var, state);
1066 print_var_decl(var, state);
1071 print_register_decl(reg, state);
1077 print_cf_node(node, state, 1);
1084 print_function(nir_function *function, print_state *state)
1086 FILE *fp = state->fp;
1120 print_function_impl(function->impl, state);
1126 init_print_state(print_state *state, nir_shader *shader, FILE *fp)
1128 state->fp = fp;
1129 state->shader = shader;
1130 state->ht = _mesa_hash_table_create(NULL, _mesa_hash_pointer,
1132 state->syms = _mesa_set_create(NULL, _mesa_key_hash_string,
1134 state->index = 0;
1138 destroy_print_state(print_state *state)
1140 _mesa_hash_table_destroy(state->ht, NULL);
1141 _mesa_set_destroy(state->syms, NULL);
1148 print_state state;
1149 init_print_state(&state, shader, fp);
1151 state.annotations = annotations;
1167 print_var_decl(var, &state);
1171 print_var_decl(var, &state);
1175 print_var_decl(var, &state);
1179 print_var_decl(var, &state);
1183 print_var_decl(var, &state);
1187 print_var_decl(var, &state);
1191 print_register_decl(reg, &state);
1195 print_function(func, &state);
1198 destroy_print_state(&state);
1210 print_state state = {
1213 print_instr(instr, &state, 0);