diff options
author | Andrew Mahone <andrew.mahone@gmail.com> | 2010-02-04 05:49:37 +0000 |
---|---|---|
committer | Andrew Mahone <andrew.mahone@gmail.com> | 2010-02-04 05:49:37 +0000 |
commit | 8ed7bda64cb98d491431fd130eb754c6320441a0 (patch) | |
tree | be9b6340aaaba3820e87a57c7c3db545c9c2cf15 | |
parent | 7ed87517f734d7d70ab6f294735a77a65bd22e42 (diff) | |
download | rockbox-8ed7bda64cb98d491431fd130eb754c6320441a0.tar.gz rockbox-8ed7bda64cb98d491431fd130eb754c6320441a0.zip |
Move udiv32_arm.S into libdemac, as this divider is specialized for the APE codec and an optimized divider is already provided for general use in codeclib.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24506 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/codecs/demac/libdemac/SOURCES | 1 | ||||
-rw-r--r-- | apps/codecs/demac/libdemac/demac_config.h | 14 | ||||
-rw-r--r-- | apps/codecs/demac/libdemac/udiv32_arm.S (renamed from apps/codecs/lib/udiv32_arm.S) | 0 | ||||
-rw-r--r-- | apps/codecs/lib/SOURCES | 1 | ||||
-rw-r--r-- | apps/codecs/lib/codeclib.h | 9 |
5 files changed, 11 insertions, 14 deletions
diff --git a/apps/codecs/demac/libdemac/SOURCES b/apps/codecs/demac/libdemac/SOURCES index 5a4482376c..f9f8f217c7 100644 --- a/apps/codecs/demac/libdemac/SOURCES +++ b/apps/codecs/demac/libdemac/SOURCES | |||
@@ -2,6 +2,7 @@ crc.c | |||
2 | predictor.c | 2 | predictor.c |
3 | #ifdef CPU_ARM | 3 | #ifdef CPU_ARM |
4 | predictor-arm.S | 4 | predictor-arm.S |
5 | udiv32_arm.S | ||
5 | #elif defined CPU_COLDFIRE | 6 | #elif defined CPU_COLDFIRE |
6 | predictor-cf.S | 7 | predictor-cf.S |
7 | #endif | 8 | #endif |
diff --git a/apps/codecs/demac/libdemac/demac_config.h b/apps/codecs/demac/libdemac/demac_config.h index 13166f69ae..7388aa1059 100644 --- a/apps/codecs/demac/libdemac/demac_config.h +++ b/apps/codecs/demac/libdemac/demac_config.h | |||
@@ -91,10 +91,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA | |||
91 | 91 | ||
92 | /* Defaults */ | 92 | /* Defaults */ |
93 | 93 | ||
94 | #ifndef UDIV32 | ||
95 | #define UDIV32(a, b) (a / b) | ||
96 | #endif | ||
97 | |||
98 | #ifndef FILTER_HISTORY_SIZE | 94 | #ifndef FILTER_HISTORY_SIZE |
99 | #define FILTER_HISTORY_SIZE 512 | 95 | #define FILTER_HISTORY_SIZE 512 |
100 | #endif | 96 | #endif |
@@ -109,6 +105,16 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA | |||
109 | 105 | ||
110 | 106 | ||
111 | #ifndef __ASSEMBLER__ | 107 | #ifndef __ASSEMBLER__ |
108 | |||
109 | #if defined(CPU_ARM) && (ARM_ARCH < 5 || defined(USE_IRAM)) | ||
110 | /* optimised unsigned integer division for ARMv4, in IRAM */ | ||
111 | unsigned udiv32_arm(unsigned a, unsigned b); | ||
112 | #define UDIV32(a, b) udiv32_arm(a, b) | ||
113 | #else | ||
114 | /* default */ | ||
115 | #define UDIV32(a, b) (a / b) | ||
116 | #endif | ||
117 | |||
112 | #include <inttypes.h> | 118 | #include <inttypes.h> |
113 | #if FILTER_BITS == 32 | 119 | #if FILTER_BITS == 32 |
114 | typedef int32_t filter_int; | 120 | typedef int32_t filter_int; |
diff --git a/apps/codecs/lib/udiv32_arm.S b/apps/codecs/demac/libdemac/udiv32_arm.S index 4492492d30..4492492d30 100644 --- a/apps/codecs/lib/udiv32_arm.S +++ b/apps/codecs/demac/libdemac/udiv32_arm.S | |||
diff --git a/apps/codecs/lib/SOURCES b/apps/codecs/lib/SOURCES index a8c3feb1aa..42bb1138d1 100644 --- a/apps/codecs/lib/SOURCES +++ b/apps/codecs/lib/SOURCES | |||
@@ -7,7 +7,6 @@ mdct_lookup.c | |||
7 | #ifdef CPU_ARM | 7 | #ifdef CPU_ARM |
8 | mdct_arm.S | 8 | mdct_arm.S |
9 | setjmp_arm.S | 9 | setjmp_arm.S |
10 | udiv32_arm.S | ||
11 | ../../../firmware/target/arm/support-arm.S | 10 | ../../../firmware/target/arm/support-arm.S |
12 | #endif | 11 | #endif |
13 | 12 | ||
diff --git a/apps/codecs/lib/codeclib.h b/apps/codecs/lib/codeclib.h index 2d34523de5..6dda3e794c 100644 --- a/apps/codecs/lib/codeclib.h +++ b/apps/codecs/lib/codeclib.h | |||
@@ -65,15 +65,6 @@ void qsort(void *base, size_t nmemb, size_t size, int(*compar)(const void *, con | |||
65 | 65 | ||
66 | extern void mdct_backward(int n, int32_t *in, int32_t *out); | 66 | extern void mdct_backward(int n, int32_t *in, int32_t *out); |
67 | 67 | ||
68 | #if defined(CPU_ARM) && (ARM_ARCH < 5 || defined(USE_IRAM)) | ||
69 | /* optimised unsigned integer division for ARMv4, in IRAM */ | ||
70 | unsigned udiv32_arm(unsigned a, unsigned b); | ||
71 | #define UDIV32(a, b) udiv32_arm(a, b) | ||
72 | #else | ||
73 | /* default */ | ||
74 | #define UDIV32(a, b) (a / b) | ||
75 | #endif | ||
76 | |||
77 | #if !defined(CPU_ARM) || ARM_ARCH < 5 | 68 | #if !defined(CPU_ARM) || ARM_ARCH < 5 |
78 | /* From libavutil/common.h */ | 69 | /* From libavutil/common.h */ |
79 | extern const uint8_t bs_log2_tab[256] ICONST_ATTR; | 70 | extern const uint8_t bs_log2_tab[256] ICONST_ATTR; |