nir: Expose nir_print_instr() for debug prints
It's nice to have this present in your default cases so you can see what instruction is triggering an abort. v2: Just pass a NULL state, now that it won't crash when you do. Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
This commit is contained in:
@@ -1485,6 +1485,7 @@ void nir_index_ssa_defs(nir_function_impl *impl);
|
||||
void nir_index_blocks(nir_function_impl *impl);
|
||||
|
||||
void nir_print_shader(nir_shader *shader, FILE *fp);
|
||||
void nir_print_instr(nir_instr *instr, FILE *fp);
|
||||
|
||||
#ifdef DEBUG
|
||||
void nir_validate_shader(nir_shader *shader);
|
||||
|
||||
@@ -621,8 +621,6 @@ print_instr(nir_instr *instr, print_var_state *state, unsigned tabs, FILE *fp)
|
||||
unreachable("Invalid instruction type");
|
||||
break;
|
||||
}
|
||||
|
||||
fprintf(fp, "\n");
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -668,6 +666,7 @@ print_block(nir_block *block, print_var_state *state, unsigned tabs, FILE *fp)
|
||||
|
||||
nir_foreach_instr(block, instr) {
|
||||
print_instr(instr, state, tabs, fp);
|
||||
fprintf(fp, "\n");
|
||||
}
|
||||
|
||||
print_tabs(tabs, fp);
|
||||
@@ -881,3 +880,9 @@ nir_print_shader(nir_shader *shader, FILE *fp)
|
||||
|
||||
destroy_print_state(&state);
|
||||
}
|
||||
|
||||
void
|
||||
nir_print_instr(nir_instr *instr, FILE *fp)
|
||||
{
|
||||
print_instr(instr, NULL, 0, fp);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user