summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohamed Tarek <mt@rockbox.org>2009-08-13 21:18:30 +0000
committerMohamed Tarek <mt@rockbox.org>2009-08-13 21:18:30 +0000
commita0092593c968bc8878f26f0be7797c3c12321468 (patch)
tree87f50193fd8d2cda8f8cb20ca0841a5ed4ad9da8
parentb736f26fdcf7d09ffec598182c2c8a1f47c7c6c9 (diff)
downloadrockbox-a0092593c968bc8878f26f0be7797c3c12321468.zip
rockbox-a0092593c968bc8878f26f0be7797c3c12321468.tar.gz
rockbox-a0092593c968bc8878f26f0be7797c3c12321468.tar.bz2
rockbox-a0092593c968bc8878f26f0be7797c3c12321468.tar.xz
Call the asm definitions of fixmul functions when possible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22303 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/codecs/libatrac/fixp_math.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/apps/codecs/libatrac/fixp_math.h b/apps/codecs/libatrac/fixp_math.h
index 5bfc2c5..ed72cf6 100644
--- a/apps/codecs/libatrac/fixp_math.h
+++ b/apps/codecs/libatrac/fixp_math.h
@@ -1,4 +1,9 @@
#include <stdlib.h>
+#ifdef ROCKBOX
+#include "asm_arm.h"
+#include "asm_mcf5249.h"
+#include "codeclib_misc.h"
+#endif
/* Macros for converting between various fixed-point representations and floating point. */
#define ONE_16 (1L << 16)
@@ -8,7 +13,12 @@
#define fix31tof64(x) (float)((float)(x) / (float)(1 << 31))
/* Fixed point math routines for use in atrac3.c */
-inline int32_t fixdiv16(int32_t x, int32_t y);
+#ifdef ROCKBOX
+#define fixmul31(x,y) (MULT31(x,y))
+#define fixmul16(x,y) (MULT32(x,y))
+#else
inline int32_t fixmul16(int32_t x, int32_t y);
inline int32_t fixmul31(int32_t x, int32_t y);
+#endif /* ROCKBOX */
+inline int32_t fixdiv16(int32_t x, int32_t y);
inline int32_t fastSqrt(int32_t n);