aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/state_tracker/st_program.c
diff options
context:
space:
mode:
Diffstat (limited to 'mesalib/src/mesa/state_tracker/st_program.c')
-rw-r--r--mesalib/src/mesa/state_tracker/st_program.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_program.c b/mesalib/src/mesa/state_tracker/st_program.c
index deee722cf..e6664fb7c 100644
--- a/mesalib/src/mesa/state_tracker/st_program.c
+++ b/mesalib/src/mesa/state_tracker/st_program.c
@@ -1285,3 +1285,26 @@ st_destroy_program_variants(struct st_context *st)
_mesa_HashWalk(st->ctx->Shared->ShaderObjects,
destroy_shader_program_variants_cb, st);
}
+
+
+/**
+ * For debugging, print/dump the current vertex program.
+ */
+void
+st_print_current_vertex_program(void)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ if (ctx->VertexProgram._Current) {
+ struct st_vertex_program *stvp =
+ (struct st_vertex_program *) ctx->VertexProgram._Current;
+ struct st_vp_variant *stv;
+
+ debug_printf("Vertex program %u\n", stvp->Base.Base.Id);
+
+ for (stv = stvp->variants; stv; stv = stv->next) {
+ debug_printf("variant %p\n", stv);
+ tgsi_dump(stv->tgsi.tokens, 0);
+ }
+ }
+}