diff options
author | Keith Mok <ek9852@gmail.com> | 2010-11-18 21:33:16 +0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2012-07-29 19:48:29 -0700 |
commit | 02c84b17fb2a47b0112cb0f10dc26dc91ab74ac9 (patch) | |
tree | 25ba535090d7966bd6d1e924ba2515a6ed3d87b9 /sbc/sbc_primitives.c | |
parent | f0352b9027fa553a6bc83592ece0d1f45b248691 (diff) | |
download | sbc-02c84b17fb2a47b0112cb0f10dc26dc91ab74ac9.tar.gz |
sbc: Add iwmmxt optimization for sbc for pxa series cpu
Add iwmmxt optimization for sbc for pxa series cpu.
Benchmarked on ARM PXA platform:
=== Before (4 bands) ====
$ time ./sbcenc_orig -s 4 long.au > /dev/null
real 0m 2.44s
user 0m 2.39s
sys 0m 0.05s
=== After (4 bands) ====
$ time ./sbcenc -s 4 long.au > /dev/null
real 0m 1.59s
user 0m 1.49s
sys 0m 0.10s
=== Before (8 bands) ====
$ time ./sbcenc_orig -s 8 long.au > /dev/null
real 0m 4.05s
user 0m 3.98s
sys 0m 0.07s
=== After (8 bands) ====
$ time ./sbcenc -s 8 long.au > /dev/null
real 0m 1.48s
user 0m 1.41s
sys 0m 0.06s
=== Before (a2dp usage) ====
$ time ./sbcenc_orig -b53 -s8 -j long.au > /dev/null
real 0m 4.51s
user 0m 4.41s
sys 0m 0.10s
=== After (a2dp usage) ====
$ time ./sbcenc -b53 -s8 -j long.au > /dev/null
real 0m 2.05s
user 0m 1.99s
sys 0m 0.06s
Diffstat (limited to 'sbc/sbc_primitives.c')
-rw-r--r-- | sbc/sbc_primitives.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c index f87fb5a..ad780d0 100644 --- a/sbc/sbc_primitives.c +++ b/sbc/sbc_primitives.c @@ -33,6 +33,7 @@ #include "sbc_primitives.h" #include "sbc_primitives_mmx.h" +#include "sbc_primitives_iwmmxt.h" #include "sbc_primitives_neon.h" #include "sbc_primitives_armv6.h" @@ -544,6 +545,9 @@ void sbc_init_primitives(struct sbc_encoder_state *state) #ifdef SBC_BUILD_WITH_ARMV6_SUPPORT sbc_init_primitives_armv6(state); #endif +#ifdef SBC_BUILD_WITH_IWMMXT_SUPPORT + sbc_init_primitives_iwmmxt(state); +#endif #ifdef SBC_BUILD_WITH_NEON_SUPPORT sbc_init_primitives_neon(state); #endif |