summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_program.c
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2012-05-17 15:48:50 -0600
committerBrian Paul <[email protected]>2012-05-19 08:28:56 -0600
commit6792969cbc0d233942b15285e0fa84e6602733c2 (patch)
treea97c156629ee4c5d07cfaad6d68f4d2323e86417 /src/mesa/state_tracker/st_program.c
parent2786343896030ed4abcf6674a3e66f3a0d246e0d (diff)
st/mesa: added st_print_current_vertex_program(), for debugging
Diffstat (limited to 'src/mesa/state_tracker/st_program.c')
-rw-r--r--src/mesa/state_tracker/st_program.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
index deee722cfa6..e6664fb7cc2 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/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);
+ }
+ }
+}