summaryrefslogtreecommitdiff
path: root/apps/codecs/libfaad
diff options
context:
space:
mode:
authorMagnus Holmgren <magnushol@gmail.com>2006-09-24 13:15:24 +0000
committerMagnus Holmgren <magnushol@gmail.com>2006-09-24 13:15:24 +0000
commit0e5bd54cbb26768a2059ed5aadd7b2c15974fe6f (patch)
tree9c6a0543b2e53af93ae6042947133c2b91087114 /apps/codecs/libfaad
parent5a79b4e015366fa2ee7c06cf29b3237275db369a (diff)
downloadrockbox-0e5bd54cbb26768a2059ed5aadd7b2c15974fe6f.zip
rockbox-0e5bd54cbb26768a2059ed5aadd7b2c15974fe6f.tar.gz
rockbox-0e5bd54cbb26768a2059ed5aadd7b2c15974fe6f.tar.bz2
rockbox-0e5bd54cbb26768a2059ed5aadd7b2c15974fe6f.tar.xz
Add profiling support for libfaad, and enable a small optimization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11037 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libfaad')
-rw-r--r--apps/codecs/libfaad/Makefile2
-rw-r--r--apps/codecs/libfaad/fixed.h9
2 files changed, 2 insertions, 9 deletions
diff --git a/apps/codecs/libfaad/Makefile b/apps/codecs/libfaad/Makefile
index 57c871f..1cb6c92 100644
--- a/apps/codecs/libfaad/Makefile
+++ b/apps/codecs/libfaad/Makefile
@@ -16,7 +16,7 @@ endif
FAADOPTS = -O2 -Wno-char-subscripts
CFLAGS = $(INCLUDES) $(GCCOPTS) $(TARGET_INC) $(FAADOPTS) $(TARGET) \
- $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE}
+ $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE} $(PROFILE_OPTS)
# This sets up 'SRC' based on the files mentioned in SOURCES
include $(TOOLSDIR)/makesrc.inc
diff --git a/apps/codecs/libfaad/fixed.h b/apps/codecs/libfaad/fixed.h
index 9bd7717..7478d2e 100644
--- a/apps/codecs/libfaad/fixed.h
+++ b/apps/codecs/libfaad/fixed.h
@@ -71,22 +71,15 @@ static INLINE real_t MUL_F(real_t A, real_t B)
return A;
}
-#if 0
-/* this currently provokes an ICE in gcc 3.4.x */
static INLINE real_t MUL_C(real_t A, real_t B)
{
asm volatile (
"mac.l %[A], %[B], %%acc0\n\t"
"movclr.l %%acc0, %[A]\n\t"
- "asl.l #3, %[A]"
: [A] "+&d" (A) : [B] "r" (B)
);
- return A;
+ return A << 3;
}
-#else
-/* keep this one around until the ICE is solved */
-#define MUL_C(A,B) (real_t)(((int64_t)(A)*(int64_t)(B)+(1 << (COEF_BITS-1))) >> COEF_BITS)
-#endif
/* MUL_R needs too many shifts for us to just operate on the top 32 bits the
emac unit gives as usual, so we do a full 64 bit mul here. */