llvmpipe: Delete the quad polygon stipple stage.
authorJosé Fonseca <jfonseca@vmware.com>
Fri, 21 Aug 2009 18:11:50 +0000 (19:11 +0100)
committerJosé Fonseca <jfonseca@vmware.com>
Sat, 29 Aug 2009 08:21:39 +0000 (09:21 +0100)
Not used now -- stipple done by the draw module. May code generate later.

src/gallium/drivers/llvmpipe/Makefile
src/gallium/drivers/llvmpipe/SConscript
src/gallium/drivers/llvmpipe/lp_quad_stipple.c [deleted file]

index 91a2e2ee74d6db3a8618048458bced8f00d5554a..fbd1300c856b7ec5becb6eeb20ee9b5aed6c0a63 100644 (file)
@@ -33,7 +33,6 @@ C_SOURCES = \
        lp_quad_blend.c \
        lp_quad_pipe.c \
        lp_quad_fs.c \
-       lp_quad_stipple.c \
        lp_query.c \
        lp_screen.c \
        lp_state_blend.c \
index b8b577fe5ac5bf04a843a703aa3d8ae30ec43da1..614d92b0f58778e9f7205fc3dcca7e55ead415c8 100644 (file)
@@ -37,7 +37,6 @@ llvmpipe = env.ConvenienceLibrary(
                'lp_quad_blend.c',
                'lp_quad_pipe.c',
                'lp_quad_fs.c',
-               'lp_quad_stipple.c',
                'lp_query.c',
                'lp_screen.c',
                'lp_state_blend.c',
diff --git a/src/gallium/drivers/llvmpipe/lp_quad_stipple.c b/src/gallium/drivers/llvmpipe/lp_quad_stipple.c
deleted file mode 100644 (file)
index b89978f..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-
-/**
- * quad polygon stipple stage
- */
-
-#include "lp_context.h"
-#include "lp_quad.h"
-#include "lp_quad_pipe.h"
-#include "pipe/p_defines.h"
-#include "util/u_memory.h"
-
-
-/**
- * Apply polygon stipple to quads produced by triangle rasterization
- */
-static void
-stipple_quad(struct quad_stage *qs, struct quad_header *quads[], unsigned nr)
-{
-   static const uint bit31 = 1 << 31;
-   static const uint bit30 = 1 << 30;
-   unsigned pass = nr;
-
-   struct llvmpipe_context *llvmpipe = qs->llvmpipe;
-   unsigned q;
-
-   pass = 0;
-
-   for (q = 0; q < nr; q++)  {
-      struct quad_header *quad = quads[q];
-
-      const int col0 = quad->input.x0 % 32;
-      const int y0 = quad->input.y0;
-      const int y1 = y0 + 1;
-      const uint stipple0 = llvmpipe->poly_stipple.stipple[y0 % 32];
-      const uint stipple1 = llvmpipe->poly_stipple.stipple[y1 % 32];
-
-      if (!quad->inout.mask)
-         continue;
-
-      /* turn off quad mask bits that fail the stipple test */
-      if ((stipple0 & (bit31 >> col0)) == 0)
-         quad->inout.mask &= ~MASK_TOP_LEFT;
-
-      if ((stipple0 & (bit30 >> col0)) == 0)
-         quad->inout.mask &= ~MASK_TOP_RIGHT;
-
-      if ((stipple1 & (bit31 >> col0)) == 0)
-         quad->inout.mask &= ~MASK_BOTTOM_LEFT;
-
-      if ((stipple1 & (bit30 >> col0)) == 0)
-         quad->inout.mask &= ~MASK_BOTTOM_RIGHT;
-
-      if (quad->inout.mask)
-         ++pass;
-   }
-
-   if(pass)
-      qs->next->run(qs->next, quads, nr);
-}
-
-
-static void stipple_begin(struct quad_stage *qs)
-{
-   qs->next->begin(qs->next);
-}
-
-
-static void stipple_destroy(struct quad_stage *qs)
-{
-   FREE( qs );
-}
-
-
-struct quad_stage *
-lp_quad_polygon_stipple_stage( struct llvmpipe_context *llvmpipe )
-{
-   struct quad_stage *stage = CALLOC_STRUCT(quad_stage);
-
-   stage->llvmpipe = llvmpipe;
-   stage->begin = stipple_begin;
-   stage->run = stipple_quad;
-   stage->destroy = stipple_destroy;
-
-   return stage;
-}