summaryrefslogtreecommitdiff
path: root/apps/codecs/lib (follow)
Commit message (Collapse)AuthorAge
* Improved bitrev12, using a larger LUT to save one lookup, speeds up vorbis ↵Nils Wallménius2009-12-13
| | | | | | about 2% on beast, about 0.5% on h300 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23973 a1c6a512-1295-4272-9138-f99709370657
* Remove some sample functions from codeclib - these were for verifying the ↵Andrew Mahone2009-12-09
| | | | | | generated asm for bs_generic and never intended for use. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23911 a1c6a512-1295-4272-9138-f99709370657
* Extend av_log2 in codeclib into a generic for scanning for set bits, which ↵Andrew Mahone2009-12-09
| | | | | | can provide either log2 or leading-zero-count output, and can force mapping 0 input to 0 output if needed (otherwise 0 input produces undefined result). Replace av_log2 in lib/codeclib.h, floor_log2 and wl_min_lzc in libfaad/common.c and common.h, and count_leading_zeros in libalac/alac.c with macros using bs_generic. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23903 a1c6a512-1295-4272-9138-f99709370657
* Fix red: av_log2 undefined for ARM_ARCH <= 4, missing codeclib.h includes.Andrew Mahone2009-12-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23869 a1c6a512-1295-4272-9138-f99709370657
* slightly faster asm av_log2 for armv6 (currently only Gigabeat S)Nils Wallménius2009-12-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23868 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow: mixed signed/unsigned in conditional.Andrew Mahone2009-12-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23867 a1c6a512-1295-4272-9138-f99709370657
* Slightly improve av_log2 in codeclib on ARMv6.Andrew Mahone2009-12-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23866 a1c6a512-1295-4272-9138-f99709370657
* Move av_log2 function and asociated table to the codec lib, remove 3 ↵Nils Wallménius2009-12-05
| | | | | | identical implementations, always have LUT in iram (gives a *tiny* speedup on coldfire), make the clz based function return the same value as the non clz based function for 0 input to be safe (slows down flac ~2% on the gigabeat S) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23858 a1c6a512-1295-4272-9138-f99709370657
* These macros have been replaced by (UN)LIKELY macros and were not used anywhere.Nils Wallménius2009-11-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23780 a1c6a512-1295-4272-9138-f99709370657
* C code is NOT faster on S3C2440 - tested by AlexP on r22529Dave Hooper2009-08-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22530 a1c6a512-1295-4272-9138-f99709370657
* Don't know why svn decided to delete tlsf/src... Maybe due to some aborted ↵Magnus Holmgren2009-08-29
| | | | | | tests I did to see where it would be best to place TLSF. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22529 a1c6a512-1295-4272-9138-f99709370657
* FS#10466: Introduce a real malloc for tremor.Magnus Holmgren2009-08-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22528 a1c6a512-1295-4272-9138-f99709370657
* Removed remaining MB usageDave Hooper2009-08-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22527 a1c6a512-1295-4272-9138-f99709370657
* Fix condition code clobbers (and one TAB) for inline arm code in lib and ↵Dave Hooper2009-08-29
| | | | | | libtremor git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22526 a1c6a512-1295-4272-9138-f99709370657
* Rerrange some registers in butterfly_generic to combine some 2-word stores ↵Dave Hooper2009-08-29
| | | | | | into 4-word stores and remove some redundant mov instructions. Shave off some additional instructions (stacking and additions) in butterfly_32 by getting butterfly_8 and butterfly_16 to do the address incrementing for us. Add a few comments. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22525 a1c6a512-1295-4272-9138-f99709370657
* Add stdint.h to the codeclib when compiled outside of rockbox so that ↵Michael Giacomelli2009-08-24
| | | | | | int32_t is typedef'ed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22502 a1c6a512-1295-4272-9138-f99709370657
* Remove svn:executable on source file and set keywords.Dominik Riebeling2009-08-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22342 a1c6a512-1295-4272-9138-f99709370657
* Move bitstream.[ch] to codecs/lib/ffmpeg_bitstream.[ch] to avoid duplicate ↵Mohamed Tarek2009-08-15
| | | | | | copies across codecs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22337 a1c6a512-1295-4272-9138-f99709370657
* remove duplicates of bswap.h from libwma, libcook and libatrac. Create ↵Mohamed Tarek2009-08-15
| | | | | | codecs/lib/ffmpeg_bswap.h and use it instead. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22328 a1c6a512-1295-4272-9138-f99709370657
* Also modify mdct_lookup.c for compiling outside rockbox.Mohamed Tarek2009-08-13
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22296 a1c6a512-1295-4272-9138-f99709370657
* Modify the mdct library to enable using it outside rockbox - No functional ↵Mohamed Tarek2009-08-13
| | | | | | changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22295 a1c6a512-1295-4272-9138-f99709370657
* Remove various ABS() definitions with a single one using typeof (if using ↵Thomas Martitz2009-08-03
| | | | | | gcc) to avoid multiple evaluations of the input expressions. Speex still uses its own as I didn't want to change this imported code too much. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22129 a1c6a512-1295-4272-9138-f99709370657
* Slight whitespace cleanup, add a const qualifier. No functional changesNils Wallménius2009-07-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22087 a1c6a512-1295-4272-9138-f99709370657
* Rearrange the MDCT library lookup tables so that codecs can access them. ↵Michael Giacomelli2009-07-17
| | | | | | Access them in cook. Remove old cook trig tables. Replace old 32x16 bit fixed point multiply code with faster ASM ARM/Coldfire versions using full 32 bit precision. Improves performance signficantly on PP5024 (~200% realtime for a 64k file) while saving a lot of memory and improving accuracy. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21939 a1c6a512-1295-4272-9138-f99709370657
* Reorder some operands to increase frequency of multiply early termination on ↵Andrew Mahone2009-07-13
| | | | | | TDMI targets, reorder some operations to try to reduce stalls. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21834 a1c6a512-1295-4272-9138-f99709370657
* * ARM asm DSP and codec/plugin functions: Use r12 scratch register properlyJens Arnold2009-07-12
| | | | | | | | | * 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
* * FS#10411 - Fixed point math code is bloated by Jeffrey GoodeMaurus Cuelenaere2009-07-07
| | | | | | | * Set svn:keywords properties git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21701 a1c6a512-1295-4272-9138-f99709370657
* Take 2 at 'Consolidate all fixed point math routines in one library' ↵Maurus Cuelenaere2009-07-05
| | | | | | (FS#10400) by Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21664 a1c6a512-1295-4272-9138-f99709370657
* Revert "Consolidate all fixed point math routines in one library (FS#10400) ↵Maurus Cuelenaere2009-07-04
| | | | | | by Jeffrey Goode" git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21635 a1c6a512-1295-4272-9138-f99709370657
* Consolidate all fixed point math routines in one library (FS#10400) by ↵Maurus Cuelenaere2009-07-04
| | | | | | Jeffrey Goode git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21633 a1c6a512-1295-4272-9138-f99709370657
* Commited too much really this time.Michael Giacomelli2009-05-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20905 a1c6a512-1295-4272-9138-f99709370657
* Actually remove the unneeded files in the last commit.Michael Giacomelli2009-05-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20903 a1c6a512-1295-4272-9138-f99709370657
* Commit FS#9882 - make better use of iram at different quality encodings, ↵Dave Hooper2009-04-25
| | | | | | remove redundant memsets, implement doublebuffer if it will fit in iram to save a mempcy each frame, and some alignment fixes for coldfire git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20783 a1c6a512-1295-4272-9138-f99709370657
* Fix redMaurus Cuelenaere2009-04-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20777 a1c6a512-1295-4272-9138-f99709370657
* Fix yellowMaurus Cuelenaere2009-04-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20776 a1c6a512-1295-4272-9138-f99709370657
* Clean code a bit (no functional changes)Maurus Cuelenaere2009-04-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20715 a1c6a512-1295-4272-9138-f99709370657
* Fix headerMaurus Cuelenaere2009-04-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20714 a1c6a512-1295-4272-9138-f99709370657
* Add setjmp implementation for MIPS targets from newlibMaurus Cuelenaere2009-04-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20713 a1c6a512-1295-4272-9138-f99709370657
* Fix endianness defines in the mdctlib code.Michael Giacomelli2009-03-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20279 a1c6a512-1295-4272-9138-f99709370657
* Add setjmp/longjmp for ARM and ColdFire to the codec lib, and use it in the ↵Magnus Holmgren2009-03-08
| | | | | | Vorbis codec to better handle out of memory conditions (to exit rather than crash; the AAC codec could use it too). setjmp/longjmp comes from newlib 1.17.0 with a few minor changes (combine parts of some files, remove support for some architectures, change some ifdef's). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20235 a1c6a512-1295-4272-9138-f99709370657
* Silence warning from 'ar' if the archive had to be created.Jens Arnold2009-03-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20151 a1c6a512-1295-4272-9138-f99709370657
* Stop hiding errors by redirecting stderr to /dev/null. If we really need to ↵Daniel Stenberg2009-02-23
| | | | | | 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
* Added missing dependencies for codeclib and pluginlib. This required ↵Björn Stenberg2009-01-12
| | | | | | renaming some files that have twins in other places. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19756 a1c6a512-1295-4272-9138-f99709370657
* Removed the sim_ prefix from the plugin api.Björn Stenberg2009-01-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19704 a1c6a512-1295-4272-9138-f99709370657
* Added 'keywords' and 'eol-style' properties.Björn Stenberg2008-11-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19218 a1c6a512-1295-4272-9138-f99709370657
* Remove .a files before running ar, to avoid problems with renamed files ↵Björn Stenberg2008-11-20
| | | | | | remaining in the library. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19160 a1c6a512-1295-4272-9138-f99709370657
* New makefile solution: A single invocation of 'make' to build the entire ↵Björn Stenberg2008-11-20
| | | | | | | | | 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
* ARMv4 unsigned integer division: Using an overflow-safe comparison method in ↵Jens Arnold2008-11-06
| | | | | | the main calculation allows to put back the 1.5 cyle (average) optimisation. Shaved off another instruction, as we don't need the remainder. * Use the very efficient ffs algorithm from ffs-arm.S for dividing by a power of 2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19032 a1c6a512-1295-4272-9138-f99709370657
* Correct a comment and police comment style, no functional changeNils Wallménius2008-11-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19030 a1c6a512-1295-4272-9138-f99709370657
* This optimisation breaks for very large divisors (MSB set), so remove it.Jens Arnold2008-11-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19012 a1c6a512-1295-4272-9138-f99709370657