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. --- src/glsl/nir/nir.h | 1 + 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 58a8efe..0912837 100644 --- a/src/glsl/nir/nir.h +++ b/src/glsl/nir/nir.h @@ -1484,6 +1484,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 2ef55ed..9c07950 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); +} -- 2.1.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev