Get rid of pixman_composeFunctions_accessors.
authorAaron Plattner <aplattner@nvidia.com>
Fri, 28 Mar 2008 19:26:18 +0000 (12:26 -0700)
committerAaron Plattner <aplattner@nvidia.com>
Fri, 28 Mar 2008 19:26:18 +0000 (12:26 -0700)
The combining functions operate on scratch memory, so they don't need the access
wrappers.  There's also no reason not to use the MMX combining functions in the
accessor path.

pixman/pixman-combine.c
pixman/pixman-compose.c
pixman/pixman-private.h

index 0d9c066..be08af4 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Combine src and mask
  */
-FASTCALL void
+FASTCALL static void
 pixman_fbCombineMaskU (uint32_t *src, const uint32_t *mask, int width)
 {
     int i;
@@ -1165,7 +1165,7 @@ fbCombineConjointXorC (uint32_t *dest, uint32_t *src, uint32_t *mask, int width)
     fbCombineConjointGeneralC (dest, src, mask, width, CombineXor);
 }
 
-CombineFuncU pixman_fbCombineFuncU[] = {
+static CombineFuncU pixman_fbCombineFuncU[] = {
     fbCombineClear,
     fbCombineSrcU,
     NULL, /* CombineDst */
@@ -1212,7 +1212,7 @@ CombineFuncU pixman_fbCombineFuncU[] = {
     fbCombineConjointXorU,
 };
 
-CombineFuncC pixman_fbCombineFuncC[] = {
+static CombineFuncC pixman_fbCombineFuncC[] = {
     fbCombineClearC,
     fbCombineSrcC,
     NULL, /* Dest */
@@ -1258,3 +1258,9 @@ CombineFuncC pixman_fbCombineFuncC[] = {
     fbCombineConjointAtopReverseC,
     fbCombineConjointXorC,
 };
+
+FbComposeFunctions pixman_composeFunctions = {
+    pixman_fbCombineFuncU,
+    pixman_fbCombineFuncC,
+    pixman_fbCombineMaskU
+};
index 6f524d6..4cb304d 100644 (file)
@@ -37,7 +37,6 @@
 
 #ifdef PIXMAN_FB_ACCESSORS
 #define PIXMAN_COMPOSITE_RECT_GENERAL pixman_composite_rect_general_accessors
-#define PIXMAN_COMPOSE_FUNCTIONS pixman_composeFunctions_accessors
 
 #define FETCH_PROC_FOR_PICTURE pixman_fetchProcForPicture_accessors
 #define FETCH_PIXEL_PROC_FOR_PICTURE pixman_fetchPixelProcForPicture_accessors
@@ -50,7 +49,6 @@
 #else
 
 #define PIXMAN_COMPOSITE_RECT_GENERAL pixman_composite_rect_general_no_accessors
-#define PIXMAN_COMPOSE_FUNCTIONS pixman_composeFunctions
 
 #define FETCH_PROC_FOR_PICTURE pixman_fetchProcForPicture
 #define FETCH_PIXEL_PROC_FOR_PICTURE pixman_fetchPixelProcForPicture
@@ -142,15 +140,6 @@ static void fbFetch(bits_image_t * pict, int x, int y, int width, uint32_t *buff
     fetch(pict, x, y, width, buffer);
 }
 
-#ifdef PIXMAN_FB_ACCESSORS     /* The accessor version can't be parameterized from outside */
-static const
-#endif
-FbComposeFunctions PIXMAN_COMPOSE_FUNCTIONS = {
-    pixman_fbCombineFuncU,
-    pixman_fbCombineFuncC,
-    pixman_fbCombineMaskU
-};
-
 static void
 fbStore(bits_image_t * pict, int x, int y, int width, uint32_t *buffer)
 {
@@ -313,7 +302,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
        PIXMAN_FORMAT_RGB (data->mask->bits.format))
     {
        uint32_t *mask_buffer = dest_buffer + data->width;
-       CombineFuncC compose = PIXMAN_COMPOSE_FUNCTIONS.combineC[data->op];
+       CombineFuncC compose = pixman_composeFunctions.combineC[data->op];
        if (!compose)
            return;
 
@@ -377,7 +366,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
     else
     {
        uint32_t *src_mask_buffer = 0, *mask_buffer = 0;
-       CombineFuncU compose = PIXMAN_COMPOSE_FUNCTIONS.combineU[data->op];
+       CombineFuncU compose = pixman_composeFunctions.combineU[data->op];
        if (!compose)
            return;
 
@@ -406,7 +395,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
 
                    if (mask_buffer)
                    {
-                       PIXMAN_COMPOSE_FUNCTIONS.combineU[PIXMAN_OP_IN] (mask_buffer, src_buffer, data->width);
+                       pixman_composeFunctions.combineU[PIXMAN_OP_IN] (mask_buffer, src_buffer, data->width);
                        src_mask_buffer = mask_buffer;
                    }
                    else
@@ -421,9 +410,9 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
                              0xff000000);
 
                    if (mask_buffer)
-                       PIXMAN_COMPOSE_FUNCTIONS.combineMaskU (src_buffer,
-                                                              mask_buffer,
-                                                              data->width);
+                       pixman_composeFunctions.combineMaskU (src_buffer,
+                                                             mask_buffer,
+                                                             data->width);
 
                    src_mask_buffer = src_buffer;
                }
@@ -433,7 +422,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
                fetchMask (data->mask, data->xMask, data->yMask + i,
                           data->width, mask_buffer, 0, 0);
 
-               PIXMAN_COMPOSE_FUNCTIONS.combineU[PIXMAN_OP_IN] (mask_buffer, src_buffer, data->width);
+               pixman_composeFunctions.combineU[PIXMAN_OP_IN] (mask_buffer, src_buffer, data->width);
 
                src_mask_buffer = mask_buffer;
            }
index 5767c10..2da0b41 100644 (file)
@@ -332,10 +332,6 @@ union pixman_image
 };
 
 
-extern CombineFuncU pixman_fbCombineFuncU[];
-extern CombineFuncC pixman_fbCombineFuncC[];
-FASTCALL void pixman_fbCombineMaskU (uint32_t *src, const uint32_t *mask, int width);
-
 #define LOG2_BITMAP_PAD 5
 #define FB_STIP_SHIFT  LOG2_BITMAP_PAD
 #define FB_STIP_UNIT   (1 << FB_STIP_SHIFT)