summaryrefslogtreecommitdiffstats
path: root/apps/codecs/libmad
AgeCommit message (Collapse)AuthorFilesLines
2012-04-25Add codecs to librbcodec.Sean Bartell37-22630/+0
Change-Id: Id7f4717d51ed02d67cb9f9cb3c0ada4a81843f97 Reviewed-on: http://gerrit.rockbox.org/137 Reviewed-by: Nils Wallménius <nils@rockbox.org> Tested-by: Nils Wallménius <nils@rockbox.org>
2012-03-28build system: completely autodetect target cpu architecture.Thomas Martitz1-1/+1
The existing ARCH Makefile variable is exported to the C code as well. Additionally the version (arm-only for now) is detected as well. This allows to for complete autodetection, i.e. that optimized ASM is picked up if determined by preprocessor (CPU_ARM, etc). Building a sim/raaa on a arm host will now automatically generate a arm optmized build like we have for native targets. Change-Id: I0b35393f8fb3ebd20beaa9e7371fa57bf3782107
2012-01-21libmad: Get rid of some bad trickery with the stack pointer.Thomas Martitz1-147/+141
Using the stack pointer for anything else than pointing to the current stack can have in very bad effects, especially on hosted platforms (e.g. when mixed with signals). Remove this at very slight performance cost.
2012-01-21libmad: Fix section attrs for hosted platforms.Thomas Martitz1-0/+8
2011-06-24Submit FS#12142 by Sean Bartell with minor chnages by myself. Removes unused ↵Andree Buschmann17-1945/+16
code and irrelevant files from libmad. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30065 a1c6a512-1295-4272-9138-f99709370657
2010-12-27Redo r28026 so that all .S files get the __ASSEMBLER__ define.Thomas Martitz1-2/+2
Patch by Thomas Jarosch. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28913 a1c6a512-1295-4272-9138-f99709370657
2010-12-01Remove tabsAndree Buschmann1-9/+9
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28719 a1c6a512-1295-4272-9138-f99709370657
2010-11-29ARM9 optimized synth_full for libmad. Speeds up mp3 decoding by an even 2 ↵Michael Giacomelli1-88/+94
MHz on all ARM9 and later devices. Note this is only optimized for arm9 (non-E), although it is faster on later devices. An arm9E/11 version will be needed for optimal performance on newer devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28710 a1c6a512-1295-4272-9138-f99709370657
2010-11-22Force alignment of various data structures in libmad. Speeds up Gigabeat S ↵Michael Giacomelli5-14/+14
decoding by about 1MHz. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28639 a1c6a512-1295-4272-9138-f99709370657
2010-11-20Commit first part of FS#11235 by Buschel and I. Improves scheduling on arm9 ↵Michael Giacomelli1-45/+43
for two filter macros in libmad that are almost never called. A larger speed up will be possible when the remaining ASM code is improved. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28624 a1c6a512-1295-4272-9138-f99709370657
2010-11-09Correct comment.Andree Buschmann1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28540 a1c6a512-1295-4272-9138-f99709370657
2010-11-07Clean up libmad, remove unused compile options and source paths.Andree Buschmann5-343/+14
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28532 a1c6a512-1295-4272-9138-f99709370657
2010-11-07Tiny refactoring of libmad's synthesis filter. This allows minor speed up ↵Andree Buschmann2-81/+49
and higher precision on ARM, plus a simplification in dct32 configuration. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28531 a1c6a512-1295-4272-9138-f99709370657
2010-07-23libmad: small tweak to coldfire inline asm, gives a slight speedup and now ↵Nils Wallménius1-36/+40
builds fine with gcc 4.4.4 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27529 a1c6a512-1295-4272-9138-f99709370657
2010-07-22Submit FS#11491. Refactor coldfire inline asm within libmad's synth_full() ↵Andree Buschmann1-167/+141
to gain better readability. Thanks to Nils Wallménius for supporting. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27524 a1c6a512-1295-4272-9138-f99709370657
2010-06-28Remove unneeded libmad files from build.Andree Buschmann1-2/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27163 a1c6a512-1295-4272-9138-f99709370657
2010-06-27Comment further unused code in libmad.Andree Buschmann5-5/+15
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27160 a1c6a512-1295-4272-9138-f99709370657
2010-06-27Comment unused code in libmad. Clean up initialization and memset'ing of ↵Andree Buschmann6-36/+34
decoder arrays. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27159 a1c6a512-1295-4272-9138-f99709370657
2010-06-27Refacture libmad's synthesis filter via macro usage. Comment unused special ↵Andree Buschmann2-112/+59
synthesis filter for half bandwidth. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27153 a1c6a512-1295-4272-9138-f99709370657
2010-06-18libmad: Optimize away 2 instructions from coldfire III_imdct, no measurable ↵Nils Wallménius1-7/+5
speed difference. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26918 a1c6a512-1295-4272-9138-f99709370657
2010-06-14Clean up libmad/mad.h to avoid double or inconsistent definitions of types, ↵Andree Buschmann1-931/+10
functions and structs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26838 a1c6a512-1295-4272-9138-f99709370657
2010-06-11FS#11335 by me: make ARM assembly functions thumb-friendlyRafaël Carré3-7/+9
We can't pop into pc on ARMv4t when using thumb: the T bit won't be modified if we are returning to a thumb function Code running on ARMv4t should use the new ldrpc / ldmpc macros instead of ldr pc, [sp], #4 and ldm(cond) sp!, {regs, pc} No modification on pure ARM builds and ARMv5+ Note: USE_THUMB is currently never defined, no targets can currently be built with -mthumb, see FS#6734 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26756 a1c6a512-1295-4272-9138-f99709370657
2010-06-10Submit FS#11365. Speed up mp3 decoding on ARM processors. It is faster to ↵Andree Buschmann3-3/+14
use the C-implementation of dct32 compiled with -O1 as the asm implementation of dct32 compiled with -O2. Configuration for Coldfire processors is untouched. In the new configuration the stack of the COP decoding thread needs to be increased on dualcore targets. Speed is increasing by up to 0.9 MHz (-O2 against -O1 using eabi). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26746 a1c6a512-1295-4272-9138-f99709370657
2010-05-29Correction to clobber lists of several codec's inline assembly.Andree Buschmann1-43/+45
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26376 a1c6a512-1295-4272-9138-f99709370657
2010-05-06Move c/h files implementing/defining standard library stuff into a new libc ↵Thomas Martitz1-1/+1
directory, also standard'ify some parts of the code base (almost entirely #include fixes). This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-02Remove residual tabs in codec directory.Andree Buschmann2-47/+47
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25785 a1c6a512-1295-4272-9138-f99709370657
2010-05-02Change naming of arm asm routines in libmad's synthesis to match their ↵Andree Buschmann2-16/+16
functionality. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25784 a1c6a512-1295-4272-9138-f99709370657
2010-05-02Fix a bug introduced with r25777.Andree Buschmann1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25779 a1c6a512-1295-4272-9138-f99709370657
2010-05-02Refacturate arm version of libmad's synthesis filter. Only two asm macros ↵Andree Buschmann2-242/+30
left, renamed asm-implementation for better clarity. No change in speed or precision. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25777 a1c6a512-1295-4272-9138-f99709370657
2010-02-22Change liba52 and libmad to the original 8-spaced tabbing.Andree Buschmann20-1660/+1660
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24863 a1c6a512-1295-4272-9138-f99709370657
2010-02-22Remove all tabs within codec path.Andree Buschmann21-1866/+1866
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24862 a1c6a512-1295-4272-9138-f99709370657
2009-07-13Fix another file for r12 being a scratch register. Overlooked earlier ↵Jens Arnold1-17/+17
because this file used literal 'r13' instead of 'sp'. Changed 'r13' to 'sp' for consistency. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21838 a1c6a512-1295-4272-9138-f99709370657
2009-07-12* ARM asm DSP and codec/plugin functions: Use r12 scratch register properlyJens Arnold1-18/+18
* Fix saving another unused reg in dsp code * Use less regs in the generic ARM mpegplayer adding idct pure DC case * Fix ARMv6 mpegplayer adding idct using an unsaved register in pure DC case git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21803 a1c6a512-1295-4272-9138-f99709370657
2009-03-10Enable libmad ASM optimized fixed point routines for MIPS.Michael Giacomelli1-0/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20280 a1c6a512-1295-4272-9138-f99709370657
2009-03-04Overlooked one place where the 'archive created' warning needs to be suppressed.Jens Arnold1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20197 a1c6a512-1295-4272-9138-f99709370657
2009-03-01Silence warning from 'ar' if the archive had to be created.Jens Arnold1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20151 a1c6a512-1295-4272-9138-f99709370657
2009-02-23Stop hiding errors by redirecting stderr to /dev/null. If we really need to ↵Daniel Stenberg1-2/+2
do re-introduce somewhere we should rather make it dependent on the V variable so that make V=1 would still show the error and only "normal" builds would hide it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20090 a1c6a512-1295-4272-9138-f99709370657
2008-12-15Better file suffix replacement. Bug fix by Nils Wallménius. Closes FS #9644.Björn Stenberg1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19443 a1c6a512-1295-4272-9138-f99709370657
2008-11-30Restore compiler optimization level for libmad, was lost in the buildsystem ↵Nils Wallménius1-1/+1
rework git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19272 a1c6a512-1295-4272-9138-f99709370657
2008-11-25Added 'keywords' and 'eol-style' properties.Björn Stenberg1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19218 a1c6a512-1295-4272-9138-f99709370657
2008-11-20Remove .a files before running ar, to avoid problems with renamed files ↵Björn Stenberg1-0/+1
remaining in the library. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19160 a1c6a512-1295-4272-9138-f99709370657
2008-11-20New makefile solution: A single invocation of 'make' to build the entire ↵Björn Stenberg4-52/+56
tree. Fully controlled dependencies give faster and more correct recompiles. Many #include lines adjusted to conform to the new standards. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657
2008-09-22Fix careless typo on my part that broke MP3 playback on Coldfire.Michael Giacomelli1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18564 a1c6a512-1295-4272-9138-f99709370657
2008-09-20Opps, fix mp3 decoding in the sim.Michael Giacomelli1-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18559 a1c6a512-1295-4272-9138-f99709370657
2008-09-20Commit FS#9318 - MP3 synthesis filter on COP. Loads the MP3 synth filer on ↵Michael Giacomelli6-27/+36
to the CoProcessor on all PortalPlayer devices, resulting in an ~90% speedup according to test_codec on the Sansa. Real world improvement is somewhat less, but still considerable. Allows MP3 decoding at 30MHz without boosting, or use of more DSP/EQ with less boosting/skipping, thus improving battery life. Minor changes to mpegplayer to retain compatibility with libmad changes. Should be no significant changes for other targets or codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18557 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg4-8/+16
later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-01libmad: PP5002 does in fact profit more from -O2 than PP502x, so use it for ↵Jens Arnold1-8/+1
all targets. The previous check was half-baked (excluded iPod 3rd Gen only, but 1st/2nd Gen are also PP5002). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17675 a1c6a512-1295-4272-9138-f99709370657
2008-06-01Compile libmad with -O2 for the Ipods instead of just newer PP targets. ↵Michael Giacomelli1-2/+2
Gives a 2% speedup on Ipods, but no change elsewhere. I've left the 3G alone, but its probably worth checking. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17674 a1c6a512-1295-4272-9138-f99709370657
2008-05-10Real fake IRAM by placing .i.... section in the analagous DRAM sections in ↵Michael Sevakis1-6/+1
the linker scripts that hasn't done this yet. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17449 a1c6a512-1295-4272-9138-f99709370657
2008-05-02Build the remaining plugins for Gigabeat S and straigten out the fake IRAM ↵Michael Sevakis1-2/+2
in the codecs and plugins. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17303 a1c6a512-1295-4272-9138-f99709370657