diff options
author | Eric Anholt <[email protected]> | 2014-11-05 15:10:37 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2015-01-23 17:30:11 -0800 |
commit | 0680d170d161f2a370e16e2506cb0bf982a8909d (patch) | |
tree | d9b28533912ef5cd68b602e6421b998dfab424ba /src/glsl/nir | |
parent | 6445a405201420698a3f6e292a3b2363fe7ff7f6 (diff) |
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 <[email protected]>
Diffstat (limited to 'src/glsl/nir')
-rw-r--r-- | src/glsl/nir/nir.h | 1 | ||||
-rw-r--r-- | src/glsl/nir/nir_print.c | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/glsl/nir/nir.h b/src/glsl/nir/nir.h index 41f7ae7550d..119ca01f991 100644 --- a/src/glsl/nir/nir.h +++ b/src/glsl/nir/nir.h @@ -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); diff --git a/src/glsl/nir/nir_print.c b/src/glsl/nir/nir_print.c index 2ef55ed36f3..9c07950a67d 100644 --- a/src/glsl/nir/nir_print.c +++ b/src/glsl/nir/nir_print.c @@ -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); +} |