i965: Don't try to print the GLSL IR if it has been freed

Since commit 104c8fc2c2 the GLSL IR will be freed if NIR is
being used. This was causing it to segfault if INTEL_DEBUG=wm is set.
This patch just makes it avoid dumping the GLSL IR in that case.

Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
This commit is contained in:
Neil Roberts 2015-06-26 17:54:15 +01:00
parent dd9ceb0219
commit c0ca6c30ea
1 changed files with 7 additions and 4 deletions

View File

@ -574,10 +574,13 @@ brw_dump_ir(const char *stage, struct gl_shader_program *shader_prog,
struct gl_shader *shader, struct gl_program *prog)
{
if (shader_prog) {
fprintf(stderr,
"GLSL IR for native %s shader %d:\n", stage, shader_prog->Name);
_mesa_print_ir(stderr, shader->ir, NULL);
fprintf(stderr, "\n\n");
if (shader->ir) {
fprintf(stderr,
"GLSL IR for native %s shader %d:\n",
stage, shader_prog->Name);
_mesa_print_ir(stderr, shader->ir, NULL);
fprintf(stderr, "\n\n");
}
} else {
fprintf(stderr, "ARB_%s_program %d ir for native %s shader\n",
stage, prog->Id, stage);