diff options
author | Siarhei Siamashka <siarhei.siamashka@nokia.com> | 2010-02-24 01:44:00 +0200 |
---|---|---|
committer | Siarhei Siamashka <siarhei.siamashka@nokia.com> | 2010-03-03 19:42:29 +0200 |
commit | 2ed7c13922f83404bd9976c00d00738d0314693f (patch) | |
tree | 1a4fa8805e04272325378cd149d6fd8c0f5a44e6 /pixman/pixman-arm-neon.c | |
parent | 7bc4cd42c3549f3f2354f50a7cf21ce9ccc8de7b (diff) | |
download | pixman-2ed7c13922f83404bd9976c00d00738d0314693f.tar.gz |
ARM: added 'neon_composite_over_n_8888_8888_ca' fast path
This fast path function improves performance of 'firefox-talos-gfx'
cairo-perf trace.
Benchmark from ARM Cortex-A8 @720MHz
before:
[ # ] backend test min(s) median(s) stddev. count
[ 0] image firefox-talos-gfx 139.969 141.176 0.35% 6/6
after:
[ # ] backend test min(s) median(s) stddev. count
[ 0] image firefox-talos-gfx 111.810 112.196 0.23% 6/6
Diffstat (limited to 'pixman/pixman-arm-neon.c')
-rw-r--r-- | pixman/pixman-arm-neon.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c index 557301e..3f0e18e 100644 --- a/pixman/pixman-arm-neon.c +++ b/pixman/pixman-arm-neon.c @@ -269,6 +269,7 @@ BIND_SRC_NULL_DST(over_8888_8888, uint32_t, 1, uint32_t, 1) BIND_N_MASK_DST(over_n_8_0565, uint8_t, 1, uint16_t, 1) BIND_N_MASK_DST(over_n_8_8888, uint8_t, 1, uint32_t, 1) +BIND_N_MASK_DST(over_n_8888_8888_ca, uint32_t, 1, uint32_t, 1) BIND_N_MASK_DST(add_n_8_8, uint8_t, 1, uint8_t, 1) BIND_SRC_N_DST(over_8888_n_8888, uint32_t, 1, uint32_t, 1) @@ -412,6 +413,10 @@ static const pixman_fast_path_t arm_neon_fast_paths[] = PIXMAN_STD_FAST_PATH (OVER, solid, null, r5g6b5, neon_composite_over_n_0565), PIXMAN_STD_FAST_PATH (OVER, solid, null, a8r8g8b8, neon_composite_over_n_8888), PIXMAN_STD_FAST_PATH (OVER, solid, null, x8r8g8b8, neon_composite_over_n_8888), + PIXMAN_STD_FAST_PATH_CA (OVER, solid, a8r8g8b8, a8r8g8b8, neon_composite_over_n_8888_8888_ca), + PIXMAN_STD_FAST_PATH_CA (OVER, solid, a8r8g8b8, x8r8g8b8, neon_composite_over_n_8888_8888_ca), + PIXMAN_STD_FAST_PATH_CA (OVER, solid, a8b8g8r8, a8b8g8r8, neon_composite_over_n_8888_8888_ca), + PIXMAN_STD_FAST_PATH_CA (OVER, solid, a8b8g8r8, x8b8g8r8, neon_composite_over_n_8888_8888_ca), PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, solid, a8r8g8b8, neon_composite_over_8888_n_8888), PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, solid, x8r8g8b8, neon_composite_over_8888_n_8888), PIXMAN_STD_FAST_PATH (OVER, a8r8g8b8, a8, a8r8g8b8, neon_composite_over_8888_8_8888), |