radeonsi: dump compute descriptor lists
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Mon, 8 May 2017 11:10:02 +0000 (13:10 +0200)
committerNicolai Hähnle <nicolai.haehnle@amd.com>
Wed, 10 May 2017 06:58:53 +0000 (08:58 +0200)
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/gallium/drivers/radeonsi/si_debug.c

index d39b3039346abc90d16f5cb537bd92ae8ba5bae9..d08a8fcf0eccb735a9c8d9924e8f3605fd56e8d3 100644 (file)
@@ -497,6 +497,15 @@ static void si_dump_gfx_descriptors(struct si_context *sctx,
        si_dump_descriptors(sctx, state->cso->type, &state->cso->info, f);
 }
 
+static void si_dump_compute_descriptors(struct si_context *sctx, FILE *f)
+{
+       if (!sctx->cs_shader_state.program ||
+           sctx->cs_shader_state.program != sctx->cs_shader_state.emitted_program)
+               return;
+
+       si_dump_descriptors(sctx, PIPE_SHADER_COMPUTE, NULL, f);
+}
+
 struct si_shader_inst {
        char text[160];  /* one disasm line */
        unsigned offset; /* instruction offset */
@@ -800,6 +809,7 @@ static void si_dump_debug_state(struct pipe_context *ctx, FILE *f,
                si_dump_gfx_descriptors(sctx, &sctx->tes_shader, f);
                si_dump_gfx_descriptors(sctx, &sctx->gs_shader, f);
                si_dump_gfx_descriptors(sctx, &sctx->ps_shader, f);
+               si_dump_compute_descriptors(sctx, f);
        }
 
        if (flags & PIPE_DUMP_LAST_COMMAND_BUFFER) {