vbo: do not call _mesa_max_buffer_index in debug builds
authorMarek Olšák <maraeo@gmail.com>
Thu, 4 Aug 2011 05:38:13 +0000 (07:38 +0200)
committerMarek Olšák <maraeo@gmail.com>
Fri, 5 Aug 2011 05:05:24 +0000 (07:05 +0200)
That code drops performance in Unigine Heaven and Tropics
by a factor of 10. That's too crazy even for a debug build.

NOTE: This is a candidate for the 7.11 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
src/mesa/vbo/vbo_exec_array.c

index b908d5aea7e7f1c2233280b25d04811f235ab332..32ce0e4a8ff929488536032d4ecc965968bb0aec 100644 (file)
@@ -909,11 +909,10 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode,
       if (0)
          _mesa_print_arrays(ctx);
 
-#ifdef DEBUG
       /* 'end' was out of bounds, but now let's check the actual array
        * indexes to see if any of them are out of bounds.
        */
-      {
+      if (0) {
          GLuint max = _mesa_max_buffer_index(ctx, count, type, indices,
                                              ctx->Array.ElementArrayBufferObj);
          if (max >= ctx->Array.ArrayObj->_MaxElement) {
@@ -934,7 +933,6 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode,
           * upper bound wrong.
           */
       }
-#endif
 
       /* Set 'end' to the max possible legal value */
       assert(ctx->Array.ArrayObj->_MaxElement >= 1);