Mesa (master): mesa: added PROG_PARAM_ bits for invariant, flat/ linear interpolation

Brian Paul brianp at kemper.freedesktop.org
Mon Nov 24 08:53:53 PST 2008


Module: Mesa
Branch: master
Commit: 777a5c4f2e7c6c6ec0227a239b1af6c6b86dfab2
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=777a5c4f2e7c6c6ec0227a239b1af6c6b86dfab2

Author: Brian Paul <brian.paul at tungstengraphics.com>
Date:   Mon Nov 24 08:43:38 2008 -0700

mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolation

Plus, update the print/debug code.

---

 src/mesa/shader/prog_parameter.h |    5 ++++-
 src/mesa/shader/prog_print.c     |   11 ++++++++++-
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/mesa/shader/prog_parameter.h b/src/mesa/shader/prog_parameter.h
index 829fd25..a8ef056 100644
--- a/src/mesa/shader/prog_parameter.h
+++ b/src/mesa/shader/prog_parameter.h
@@ -39,7 +39,10 @@
  * Program parameter flags
  */
 /*@{*/
-#define PROG_PARAM_CENTROID_BIT  0x1
+#define PROG_PARAM_CENTROID_BIT   0x1  /**< for varying vars (GLSL 1.20) */
+#define PROG_PARAM_INVARIANT_BIT  0x2  /**< for varying vars (GLSL 1.20) */
+#define PROG_PARAM_FLAT_BIT       0x4  /**< for varying vars (GLSL 1.30) */
+#define PROG_PARAM_LINEAR_BIT     0x8  /**< for varying vars (GLSL 1.30) */
 /*@}*/
 
 
diff --git a/src/mesa/shader/prog_print.c b/src/mesa/shader/prog_print.c
index baa4ef8..ded79b4 100644
--- a/src/mesa/shader/prog_print.c
+++ b/src/mesa/shader/prog_print.c
@@ -799,9 +799,18 @@ _mesa_print_parameter_list(const struct gl_program_parameter_list *list)
    for (i = 0; i < list->NumParameters; i++){
       struct gl_program_parameter *param = list->Parameters + i;
       const GLfloat *v = list->ParameterValues[i];
-      _mesa_printf("param[%d] sz=%d %s %s = {%.3g, %.3g, %.3g, %.3g};\n",
+      _mesa_printf("param[%d] sz=%d %s %s = {%.3g, %.3g, %.3g, %.3g}",
                    i, param->Size,
                    file_string(list->Parameters[i].Type, mode),
                    param->Name, v[0], v[1], v[2], v[3]);
+      if (param->Flags & PROG_PARAM_CENTROID_BIT)
+         _mesa_printf(" Centroid");
+      if (param->Flags & PROG_PARAM_INVARIANT_BIT)
+         _mesa_printf(" Invariant");
+      if (param->Flags & PROG_PARAM_FLAT_BIT)
+         _mesa_printf(" Flat");
+      if (param->Flags & PROG_PARAM_LINEAR_BIT)
+         _mesa_printf(" Linear");
+      _mesa_printf("\n");
    }
 }



More information about the mesa-commit mailing list