diff --git a/src/gallium/drivers/panfrost/pan_shader.c b/src/gallium/drivers/panfrost/pan_shader.c index 389ce021cb8..48702137544 100644 --- a/src/gallium/drivers/panfrost/pan_shader.c +++ b/src/gallium/drivers/panfrost/pan_shader.c @@ -234,14 +234,17 @@ panfrost_shader_compile(struct panfrost_screen *screen, const nir_shader *ir, screen->vtbl.compile_shader(s, &inputs, &out->binary, &out->info); - if (s->info.stage == MESA_SHADER_VERTEX && out->info.vs.idvs) { - pan_stats_util_debug(dbg, "MESA_SHADER_POSITION", - &out->info.stats); - pan_stats_util_debug(dbg, "MESA_SHADER_VERTEX", - &out->info.stats_idvs_varying); - } else { - pan_stats_util_debug(dbg, mesa_shader_stage_name(s->info.stage), - &out->info.stats); + /* Report stats only if we really got the shader compiled */ + if (out->binary.size > 0) { + if (s->info.stage == MESA_SHADER_VERTEX && out->info.vs.idvs) { + pan_stats_util_debug(dbg, "MESA_SHADER_POSITION", + &out->info.stats); + pan_stats_util_debug(dbg, "MESA_SHADER_VERTEX", + &out->info.stats_idvs_varying); + } else { + pan_stats_util_debug(dbg, mesa_shader_stage_name(s->info.stage), + &out->info.stats); + } } assert(req_local_mem >= out->info.wls_size);