radv/debug: Try to find unbound shaders

Use radv_find_shader to correlate shaders to PCs.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28759>
This commit is contained in:
Konstantin
2024-04-15 12:44:50 +02:00
committed by Marge Bot
parent 23c167f826
commit e27deed2ab
+8
View File
@@ -542,6 +542,14 @@ radv_dump_queue_state(struct radv_queue *queue, const char *dump_dir, FILE *f)
fprintf(f, COLOR_CYAN "Waves not executing currently-bound shaders:" COLOR_RESET "\n");
found = true;
}
struct radv_shader *shader = radv_find_shader(device, waves[0].pc);
if (shader) {
radv_dump_annotated_shader(shader, shader->info.stage, waves, num_waves, f);
if (waves[i].matched)
continue;
}
fprintf(f, " SE%u SH%u CU%u SIMD%u WAVE%u EXEC=%016" PRIx64 " INST=%08X %08X PC=%" PRIx64 "\n",
waves[i].se, waves[i].sh, waves[i].cu, waves[i].simd, waves[i].wave, waves[i].exec,
waves[i].inst_dw0, waves[i].inst_dw1, waves[i].pc);