[Pixman] [PATCH 2/4] pixman-fast-path: enable over_n_8888

Pekka Paalanen ppaalanen at gmail.com
Thu Aug 20 06:58:46 PDT 2015


From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>

Enable the fast path added in the previous patch by moving the lookup
table entries to their proper locations.

Lowlevel-blt-bench benchmark statistics with 30 iterations, showing the
effect of adding this one patch on top of
"pixman-fast-path: Add over_n_8888 fast path (disabled)".

       Before          After
      Mean StdDev     Mean StdDev   Confidence   Change
L1    12.5   0.03     21.2   0.05    100.00%     +69.5%
L2    11.1   0.02     17.4   0.01    100.00%     +57.3%
M      9.4   0.00     13.6   0.00    100.00%     +45.1%
HT     8.5   0.02     12.2   0.02    100.00%     +43.0%
VT     8.4   0.02     11.9   0.02    100.00%     +41.7%
R      8.2   0.01     11.5   0.02    100.00%     +40.5%
RT     5.5   0.05      7.6   0.08    100.00%     +39.1%

Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
---
 pixman/pixman-fast-path.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/pixman/pixman-fast-path.c b/pixman/pixman-fast-path.c
index 6803037..1f96f56 100644
--- a/pixman/pixman-fast-path.c
+++ b/pixman/pixman-fast-path.c
@@ -1869,9 +1869,13 @@ static const pixman_fast_path_t c_fast_paths[] =
     PIXMAN_STD_FAST_PATH (OVER, x8r8g8b8, a8, a8r8g8b8, fast_composite_over_x888_8_8888),
     PIXMAN_STD_FAST_PATH (OVER, x8b8g8r8, a8, x8b8g8r8, fast_composite_over_x888_8_8888),
     PIXMAN_STD_FAST_PATH (OVER, x8b8g8r8, a8, a8b8g8r8, fast_composite_over_x888_8_8888),
+    PIXMAN_STD_FAST_PATH (OVER, solid, null, a8r8g8b8, fast_composite_over_n_8888),
+    PIXMAN_STD_FAST_PATH (OVER, solid, null, x8r8g8b8, fast_composite_over_n_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, null, a8r8g8b8, fast_composite_over_8888_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, null, x8r8g8b8, fast_composite_over_8888_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, null, r5g6b5, fast_composite_over_8888_0565),
+    PIXMAN_STD_FAST_PATH (OVER, solid, null, a8b8g8r8, fast_composite_over_n_8888),
+    PIXMAN_STD_FAST_PATH (OVER, solid, null, x8b8g8r8, fast_composite_over_n_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8b8g8r8, null, a8b8g8r8, fast_composite_over_8888_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8b8g8r8, null, x8b8g8r8, fast_composite_over_8888_8888),
     PIXMAN_STD_FAST_PATH (OVER, a8b8g8r8, null, b5g6r5, fast_composite_over_8888_0565),
@@ -2003,11 +2007,6 @@ static const pixman_fast_path_t c_fast_paths[] =
     },
 
     {   PIXMAN_OP_NONE	},
-
-    PIXMAN_STD_FAST_PATH (OVER, solid, null, a8r8g8b8, fast_composite_over_n_8888),
-    PIXMAN_STD_FAST_PATH (OVER, solid, null, x8r8g8b8, fast_composite_over_n_8888),
-    PIXMAN_STD_FAST_PATH (OVER, solid, null, a8b8g8r8, fast_composite_over_n_8888),
-    PIXMAN_STD_FAST_PATH (OVER, solid, null, x8b8g8r8, fast_composite_over_n_8888),
 };
 
 #ifdef WORDS_BIGENDIAN
-- 
2.4.6



More information about the Pixman mailing list