diff options
author | Siarhei Siamashka <siarhei.siamashka@nokia.com> | 2010-10-04 04:49:08 +0300 |
---|---|---|
committer | Siarhei Siamashka <siarhei.siamashka@nokia.com> | 2010-10-11 01:07:07 +0300 |
commit | 8d76c1b3391e1165aaf9e0f331749aee1394f62c (patch) | |
tree | dbae5d020dde83a7ddd5ff0fb3c9d289717a901c | |
parent | c748650d700c2f18f1587f06ada3b58d6ddc18d3 (diff) |
ARM: restore fallback to ARMv6 implementation from NEON in the delegate chain
After fast path cache introduction, the overhead of having this fallback is
insignificant. On the other hand, some of the ARM assembly optimizations (for
example nearest neighbor scaling) do not need NEON.
-rw-r--r-- | pixman/pixman-arm-neon.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c index 54b5540b..be5d403e 100644 --- a/pixman/pixman-arm-neon.c +++ b/pixman/pixman-arm-neon.c @@ -355,9 +355,13 @@ BIND_COMBINE_U (out_reverse) pixman_implementation_t * _pixman_implementation_create_arm_neon (void) { - pixman_implementation_t *general = _pixman_implementation_create_fast_path (); +#ifdef USE_ARM_SIMD + pixman_implementation_t *fallback = _pixman_implementation_create_arm_simd (); +#else + pixman_implementation_t *fallback = _pixman_implementation_create_fast_path (); +#endif pixman_implementation_t *imp = - _pixman_implementation_create (general, arm_neon_fast_paths); + _pixman_implementation_create (fallback, arm_neon_fast_paths); imp->combine_32[PIXMAN_OP_OVER] = neon_combine_over_u; imp->combine_32[PIXMAN_OP_ADD] = neon_combine_add_u; |