diff options
author | Siarhei Siamashka <siarhei.siamashka@nokia.com> | 2011-03-14 15:37:42 -0300 |
---|---|---|
committer | Luiz Augusto von Dentz <luiz.dentz-von@nokia.com> | 2011-03-14 15:45:39 -0300 |
commit | ee93eff6b7a04193e7afa3c5aa4fe71558634b21 (patch) | |
tree | 8b73c712c6fc7904f2a8da37e3106812ad21a885 /src/modules/bluetooth/sbc/sbc_primitives.c | |
parent | 82ef8346d8b962fedff58b6cd579b1bb25227c49 (diff) |
sbc: 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 'src/modules/bluetooth/sbc/sbc_primitives.c')
-rw-r--r-- | src/modules/bluetooth/sbc/sbc_primitives.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/modules/bluetooth/sbc/sbc_primitives.c b/src/modules/bluetooth/sbc/sbc_primitives.c index 66e20a0a..3a76a7a0 100644 --- a/src/modules/bluetooth/sbc/sbc_primitives.c +++ b/src/modules/bluetooth/sbc/sbc_primitives.c @@ -32,6 +32,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" @@ -543,6 +544,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 |