summaryrefslogtreecommitdiff
path: root/apps/codecs/libspeex/sb_celp.c
diff options
context:
space:
mode:
authorDan Everton <dan@iocaine.org>2007-07-09 11:18:10 +0000
committerDan Everton <dan@iocaine.org>2007-07-09 11:18:10 +0000
commit07fabd1cd1f2173d93cb1b3962da7d11ca80c569 (patch)
tree2a24deacde8e70f1da71aa1a53b8f0832fa3d6f3 /apps/codecs/libspeex/sb_celp.c
parent85aa3a8d381ac980b49699d49234e4df051813e5 (diff)
downloadrockbox-07fabd1cd1f2173d93cb1b3962da7d11ca80c569.tar.gz
rockbox-07fabd1cd1f2173d93cb1b3962da7d11ca80c569.zip
ICONST_ATTR most constant tables in Speex. Results in a 10% improvement on Coldfire (200% to 220% realtime). Almost certainly not the best use of IRAM, but it works now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13831 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libspeex/sb_celp.c')
-rw-r--r--apps/codecs/libspeex/sb_celp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/codecs/libspeex/sb_celp.c b/apps/codecs/libspeex/sb_celp.c
index faabe24766..6066c8c51b 100644
--- a/apps/codecs/libspeex/sb_celp.c
+++ b/apps/codecs/libspeex/sb_celp.c
@@ -109,8 +109,8 @@ int sb_decoder_ctl(void *state, int request, void *ptr)
109#define SUBMODE(x) st->submodes[st->submodeID]->x 109#define SUBMODE(x) st->submodes[st->submodeID]->x
110 110
111#ifdef FIXED_POINT 111#ifdef FIXED_POINT
112static const spx_word16_t gc_quant_bound[16] = {125, 164, 215, 282, 370, 484, 635, 832, 1090, 1428, 1871, 2452, 3213, 4210, 5516, 7228}; 112static const spx_word16_t gc_quant_bound[16] ICONST_ATTR = {125, 164, 215, 282, 370, 484, 635, 832, 1090, 1428, 1871, 2452, 3213, 4210, 5516, 7228};
113static const spx_word16_t fold_quant_bound[32] = { 113static const spx_word16_t fold_quant_bound[32] ICONST_ATTR = {
114 39, 44, 50, 57, 64, 73, 83, 94, 114 39, 44, 50, 57, 64, 73, 83, 94,
115 106, 120, 136, 154, 175, 198, 225, 255, 115 106, 120, 136, 154, 175, 198, 225, 255,
116 288, 327, 370, 420, 476, 539, 611, 692, 116 288, 327, 370, 420, 476, 539, 611, 692,
@@ -139,7 +139,7 @@ static const spx_word16_t fold_quant_bound[32] = {
139#define QMF_ORDER 64 139#define QMF_ORDER 64
140 140
141#ifdef FIXED_POINT 141#ifdef FIXED_POINT
142static const spx_word16_t h0[64] = {2, -7, -7, 18, 15, -39, -25, 75, 35, -130, -41, 212, 38, -327, -17, 483, -32, -689, 124, 956, -283, -1307, 543, 1780, -973, -2467, 1733, 3633, -3339, -6409, 9059, 30153, 30153, 9059, -6409, -3339, 3633, 1733, -2467, -973, 1780, 543, -1307, -283, 956, 124, -689, -32, 483, -17, -327, 38, 212, -41, -130, 35, 75, -25, -39, 15, 18, -7, -7, 2}; 142static const spx_word16_t h0[64] ICONST_ATTR = {2, -7, -7, 18, 15, -39, -25, 75, 35, -130, -41, 212, 38, -327, -17, 483, -32, -689, 124, 956, -283, -1307, 543, 1780, -973, -2467, 1733, 3633, -3339, -6409, 9059, 30153, 30153, 9059, -6409, -3339, 3633, 1733, -2467, -973, 1780, 543, -1307, -283, 956, 124, -689, -32, 483, -17, -327, 38, 212, -41, -130, 35, 75, -25, -39, 15, 18, -7, -7, 2};
143 143
144#else 144#else
145static const float h0[64] = { 145static const float h0[64] = {