Make the fast_path implementation run the c_fast_paths
authorSøren Sandmann Pedersen <sandmann@redhat.com>
Wed, 13 May 2009 15:27:01 +0000 (11:27 -0400)
committerSøren Sandmann Pedersen <sandmann@redhat.com>
Sat, 23 May 2009 16:05:02 +0000 (12:05 -0400)
pixman/pixman-fast-path.c
pixman/pixman-general.c
pixman/pixman-private.h

index c24258e..5f78bc3 100644 (file)
@@ -1021,7 +1021,7 @@ fbCompositeSrc_8888xx888 (pixman_implementation_t *imp,
     }
 }
 
-static const FastPathInfo c_fast_path_array[] =
+static const FastPathInfo c_fast_paths[] =
 {
     { PIXMAN_OP_OVER, PIXMAN_solid,    PIXMAN_a8,       PIXMAN_r5g6b5,   fbCompositeSolidMask_nx8x0565, 0 },
     { PIXMAN_OP_OVER, PIXMAN_solid,    PIXMAN_a8,       PIXMAN_b5g6r5,   fbCompositeSolidMask_nx8x0565, 0 },
@@ -1070,8 +1070,6 @@ static const FastPathInfo c_fast_path_array[] =
     { PIXMAN_OP_NONE },
 };
 
-const FastPathInfo *const c_fast_paths = c_fast_path_array;
-
 static void
 fbCompositeSrcScaleNearest (pixman_implementation_t *imp,
                            pixman_op_t     op,
@@ -1215,6 +1213,16 @@ fast_path_composite (pixman_implementation_t *imp,
        }
     }
 
+    if (_pixman_run_fast_path (c_fast_paths, imp,
+                              op, src, mask, dest,
+                              src_x, src_y,
+                              mask_x, mask_y,
+                              dest_x, dest_y,
+                              width, height))
+    {
+       return;
+    }
+
     _pixman_implementation_composite (imp->delegate, op,
                                      src, mask, dest,
                                      src_x, src_y,
index 4693823..7d0f1fb 100644 (file)
@@ -404,14 +404,6 @@ general_composite (pixman_implementation_t *       imp,
        return;
 #endif
 
-    if (pixman_have_arm_simd() && _pixman_run_fast_path (c_fast_paths, imp,
-                                                        op, src, mask, dest,
-                                                        src_x, src_y,
-                                                        mask_x, mask_y,
-                                                        dest_x, dest_y,
-                                                        width, height))
-       return;
-    
     /* CompositeGeneral optimizes 1x1 repeating images itself */
     if (src->type == BITS &&
        src->bits.width == 1 && src->bits.height == 1)
index adee672..2367261 100644 (file)
@@ -956,8 +956,6 @@ typedef struct
     uint32_t                   flags;
 } FastPathInfo;
 
-extern const FastPathInfo *const c_fast_paths;
-
 struct pixman_implementation_t
 {
     pixman_implementation_t *  toplevel;