OSDN Git Service

i965: Drop remaining strict conformance fallback for GL_POINT_SMOOTH.
authorEric Anholt <eric@anholt.net>
Wed, 25 May 2011 19:59:25 +0000 (12:59 -0700)
committerEric Anholt <eric@anholt.net>
Fri, 3 Jun 2011 23:03:18 +0000 (16:03 -0700)
We actually could do this in hardware in the fragment shader using
gl_PointCoord and the point's size.

src/mesa/drivers/dri/i965/brw_draw.c

index 103c774..6144f0a 100644 (file)
@@ -266,33 +266,6 @@ static void brw_merge_inputs( struct brw_context *brw,
       brw->state.dirty.brw |= BRW_NEW_INPUT_DIMENSIONS;
 }
 
-/* XXX: could split the primitive list to fallback only on the
- * non-conformant primitives.
- */
-static GLboolean check_fallbacks( struct brw_context *brw,
-                                 const struct _mesa_prim *prim,
-                                 GLuint nr_prims )
-{
-   struct gl_context *ctx = &brw->intel.ctx;
-   GLuint i;
-
-   /* If we don't require strict OpenGL conformance, never 
-    * use fallbacks.  If we're forcing fallbacks, always
-    * use fallfacks.
-    */
-   if (brw->intel.conformance_mode == 0)
-      return GL_FALSE;
-
-   if (ctx->Point.SmoothFlag) {
-      for (i = 0; i < nr_prims; i++)
-        if (prim[i].mode == GL_POINTS) 
-           return GL_TRUE;
-   }
-
-   /* Nothing stopping us from the fast path now */
-   return GL_FALSE;
-}
-
 /* May fail if out of video memory for texture or vbo upload, or on
  * fallback conditions.
  */
@@ -322,9 +295,6 @@ static GLboolean brw_try_draw_prims( struct gl_context *ctx,
     */
    brw_validate_textures( brw );
 
-   if (check_fallbacks(brw, prim, nr_prims))
-      return GL_FALSE;
-
    /* Bind all inputs, derive varying and size information:
     */
    brw_merge_inputs( brw, arrays );