Mesa (master): mesa: additional program limit assertions

Brian Paul brianp at kemper.freedesktop.org
Tue Aug 10 14:38:59 UTC 2010


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

Author: Brian Paul <brianp at vmware.com>
Date:   Tue Aug 10 08:38:12 2010 -0600

mesa: additional program limit assertions

---

 src/mesa/program/program.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c
index d99584d..3b6d682 100644
--- a/src/mesa/program/program.c
+++ b/src/mesa/program/program.c
@@ -55,13 +55,21 @@ _mesa_init_program(GLcontext *ctx)
 
    /*
     * If this assertion fails, we need to increase the field
-    * size for register indexes.
+    * size for register indexes (see INST_INDEX_BITS).
     */
    ASSERT(ctx->Const.VertexProgram.MaxUniformComponents / 4
           <= (1 << INST_INDEX_BITS));
    ASSERT(ctx->Const.FragmentProgram.MaxUniformComponents / 4
           <= (1 << INST_INDEX_BITS));
 
+   ASSERT(ctx->Const.VertexProgram.MaxTemps <= (1 << INST_INDEX_BITS));
+   ASSERT(ctx->Const.VertexProgram.MaxLocalParams <= (1 << INST_INDEX_BITS));
+   ASSERT(ctx->Const.FragmentProgram.MaxTemps <= (1 << INST_INDEX_BITS));
+   ASSERT(ctx->Const.FragmentProgram.MaxLocalParams <= (1 << INST_INDEX_BITS));
+
+   ASSERT(ctx->Const.VertexProgram.MaxUniformComponents <= 4 * MAX_UNIFORMS);
+   ASSERT(ctx->Const.FragmentProgram.MaxUniformComponents <= 4 * MAX_UNIFORMS);
+
    /* If this fails, increase prog_instruction::TexSrcUnit size */
    ASSERT(MAX_TEXTURE_UNITS < (1 << 5));
 




More information about the mesa-commit mailing list