r5xx: Dump shader constants when dumping program assembly.
[mesa.git] / src / mesa / drivers / dri / r300 / r500_fragprog.c
index cdbec35da59df19415ac07a51ac96a9084802f7d..f8321fd12366b5dfec063619977637b0b2e0d480 100644 (file)
@@ -1578,11 +1578,24 @@ static char *to_texop(int val)
 
 static void dump_program(struct r500_fragment_program *fp)
 {
+
+  fprintf(stderr, "R500 Fragment Program:\n--------\n");
+
   int n;
   uint32_t inst;
   uint32_t inst0;
   char *str = NULL;
 
+  if (fp->const_nr) {
+    fprintf(stderr, "--------\nConstants:\n");
+    for (n = 0; n < fp->const_nr; n++) {
+      fprintf(stderr, "Constant %d: %f %f\n\t %f %f\n", n,
+        fp->constant[n][0], fp->constant[n][1], fp->constant[n][2],
+        fp->constant[n][3]);
+    }
+    fprintf(stderr, "--------\n");
+  }
+
   for (n = 0; n < fp->inst_end+1; n++) {
     inst0 = inst = fp->inst[n].inst0;
     fprintf(stderr,"%d\t0:CMN_INST   0x%08x:", n, inst);