Commit graph

81 commits

Author SHA1 Message Date
Andree Buschmann
e720724b95 Use MEM_ALIGN_ATTR and CACHEALIGN_SIZE in oggmalloc to ensure optimal alignment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29833 a1c6a512-1295-4272-9138-f99709370657
2011-05-08 16:41:23 +00:00
Nils Wallménius
a47c04f0c8 Revert tab police as it makes merging upstream changes more annoying and messed up indentation in some places.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28818 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 17:59:05 +00:00
Andree Buschmann
b655f58406 Tab police.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28817 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 17:18:19 +00:00
Nils Wallménius
2aa511f6bd libtremor: merge upstream revisions 17541, 17542, 17543, 17544, 17545, 17546, 17547, 17555, 17572, bringing in various fixes and finally bringing our libtremor up to date, for now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28773 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 17:28:17 +00:00
Nils Wallménius
f6297c1f3e libtremor: merge upstream revision 17539 and 17540 'Additional codebook validity checks.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28771 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 16:48:17 +00:00
Nils Wallménius
7484fd3b18 libtremor: merge upstream revision 17538 'Fix decoder handling of floor0 when the LSP order is 1.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28770 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 16:44:08 +00:00
Nils Wallménius
199b2a84e2 libtremor: merge upstream revision 17534 and 17536, fixing a possible 64 bit math overflow and correct types for some comparisons.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28769 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 16:34:25 +00:00
Nils Wallménius
c0e3e16285 libtremor: merge upstream revision 17528-17530, more error checking and bug fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28768 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 16:07:46 +00:00
Nils Wallménius
a5897697f9 libtremor: merge upstream revision 17527, 'Eliminate possibility of booklist overflow in res0/1/2 unpacking.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28767 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 15:47:56 +00:00
Nils Wallménius
715749a7f4 libtremor: merge upstream revision 17526 and 17531, adding some more error checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28766 a1c6a512-1295-4272-9138-f99709370657
2010-12-08 15:42:40 +00:00
Nils Wallménius
1930e9f4ba libtremor: merge upstream revision 17525 'Commit additional hardening to setup packet decode.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28762 a1c6a512-1295-4272-9138-f99709370657
2010-12-07 16:55:36 +00:00
Nils Wallménius
02f836b1b2 libtremor: merge upstream revision 17524 more sanity checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28761 a1c6a512-1295-4272-9138-f99709370657
2010-12-07 16:27:41 +00:00
Nils Wallménius
0bfa899544 libtremor: merge upstream revision 17522 and 17523 adding more sanity checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28760 a1c6a512-1295-4272-9138-f99709370657
2010-12-07 16:22:51 +00:00
Nils Wallménius
13eac3bd2f libtremor: merge upstream revision 17520 and 17521 tweaking some of the recently introduced chaecks to not reject files made with buggy beta encoders.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28759 a1c6a512-1295-4272-9138-f99709370657
2010-12-07 16:12:32 +00:00
Nils Wallménius
d44fb16feb libtremor: merge upstream revision 17519 'Correct an accidental dereference-before-check in error cleanup in comments.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28758 a1c6a512-1295-4272-9138-f99709370657
2010-12-07 16:08:26 +00:00
Nils Wallménius
23321dca5e libtremor: merge upstream revision 17518 actually returning failure code from vorbis_synthesis_init
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28750 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 17:35:36 +00:00
Nils Wallménius
2aa76d7a18 libtremor: export a libogg function that is now needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28749 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 17:16:45 +00:00
Nils Wallménius
c28778fb5a libtremor: merge part of upstream revision 17514 adding some limit checking for allocations when unpacking comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28748 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 17:15:00 +00:00
Nils Wallménius
bdf8a243fa libtremor: merge upstream revision 17513 'Add code to prevent heap attacks by exploiting dim==bignum and partition_codewords==partion_values^dim.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28747 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 16:48:57 +00:00
Nils Wallménius
0d43bf6a88 libtremor: merge upstream revision 17512 'Correctly handle the nonsensical codebook.dim==0 case.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28746 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 16:44:40 +00:00
Nils Wallménius
8a239cf4f7 libtremor: merge upstream revision 17511 'Add checks/rejection for absurdly huge codebooks.'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28745 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 16:40:05 +00:00
Nils Wallménius
4487107d25 libtremor: merge upstream revision 17510.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28744 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 16:34:21 +00:00
Nils Wallménius
67efbc1387 libtremor:
Merge in upstream revision 17375.
This removes tremor's internal ogg code and now uses libogg instead so a bunch of changes are just adjusting to the new api. Also brings in improvements to vorbisfile which fixes FS#10484.
Disabled a lot of unused code in the libogg files and moved some small functions into the ogg.h header so they can be inlined. Some small tweaks to fix warnings.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28742 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 14:36:52 +00:00
Nils Wallménius
911f2a7dac libtremor: merge upstream revision 17374 and some inline/icode tweaks to maintain speed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28732 a1c6a512-1295-4272-9138-f99709370657
2010-12-04 12:59:37 +00:00
Nils Wallménius
b397fe5ae3 libtremor: small tweak to coldfire inline asm function MULT31_SHIFT15, saving one instruction, *tiny* speedup, output unchanged
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28666 a1c6a512-1295-4272-9138-f99709370657
2010-11-26 10:45:33 +00:00
Andree Buschmann
1aac58553c Comment unused function.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28634 a1c6a512-1295-4272-9138-f99709370657
2010-11-21 18:59:24 +00:00
Andree Buschmann
3c83cea151 Remove unused define.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28633 a1c6a512-1295-4272-9138-f99709370657
2010-11-21 18:48:45 +00:00
Nils Wallménius
8a2c480af7 libtremor: Use larger cachesize for codebook decoding on targets with 1MB codec buffer.
speedups as follows:
~3%/2MHz on high bitrate files (500kbps) on Gigabeat S
~1%/0.5MHz on high bitrate files (500kbps) on Fuze v1

~3%/1MHz (128kbps) - 12%/7MHz (500kbps) on H300
~2%/0.5MHz (128kbps) - 10%/3.5MHz (500kbps) on C200 v1



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28615 a1c6a512-1295-4272-9138-f99709370657
2010-11-18 15:51:59 +00:00
Nils Wallménius
76027b5951 libtremor: correct constraint for coldfire asm, swap can only be used on data registers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28604 a1c6a512-1295-4272-9138-f99709370657
2010-11-15 16:02:17 +00:00
Nils Wallménius
dfac9503eb libtremor: tweak a hot function for codebook decoding, mostly moving pointer lookups outside the loop. Speeds up decoding by 3-6% on Coldfire and a small speedup on arm too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28419 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 14:48:40 +00:00
Nils Wallménius
78b2711e58 libtremor: introduce asm optimized version of the channel_couple function for Coldfire and optimize the arm as version, speedup ~1% on Coldfire and PortalPlayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28405 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 08:19:19 +00:00
Nils Wallménius
c1bfe4eb62 libtremor: tiny optimization 0.5%-1.5% on coldfire and PP
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28285 a1c6a512-1295-4272-9138-f99709370657
2010-10-16 09:58:21 +00:00
Nils Wallménius
d660e9655c Move ffmpeg functions to their own file to avoid mixing code under different liceses in the same file. Licensing is fun!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27859 a1c6a512-1295-4272-9138-f99709370657
2010-08-22 20:14:25 +00:00
Nils Wallménius
8b5f3cabcc forgot comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27858 a1c6a512-1295-4272-9138-f99709370657
2010-08-22 19:54:17 +00:00
Nils Wallménius
ca47ed6cba libtremor: use render_line from ffmpeg (libavcodec/vorbis.c), speedup ~1% on both arm and coldfire, output unchanged.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27857 a1c6a512-1295-4272-9138-f99709370657
2010-08-22 19:50:26 +00:00
Nils Wallménius
13d0eca71d libtremor: fix possible memoryleak when playing several ogg vorbis files in sequence, hopefully fixes FS#11533
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27776 a1c6a512-1295-4272-9138-f99709370657
2010-08-12 07:50:29 +00:00
Nils Wallménius
01f91ed14d Factor out sane code list bisection code and use instead of insane code, clean up some tests for readability's sake. Gives a small speedup on h300 (coldfire, 0.1-0.6MHz) and a tiny speedup on gigabeat s (armv6 0.1-0.2MHz), no real difference on PP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27223 a1c6a512-1295-4272-9138-f99709370657
2010-07-01 20:31:07 +00:00
Nils Wallménius
7c716d6eac Clean up a leftover preprocessor symbol and improve the workaround for the 'arm-elf and static functions in iram' quirk so it doesn't affect builds with eabi toolchain (only affects nano2g).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27176 a1c6a512-1295-4272-9138-f99709370657
2010-06-29 14:57:52 +00:00
Thomas Martitz
35e8b1429a Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently).
The simulator defines PLATFORM_HOSTED, as RaaA will do (RaaA will not define SIMULATOR).
The new define is to (de-)select code to compile on hosted platforms generally.

Should be no functional change to targets or the simulator.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27019 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 16:53:00 +00:00
Nils Wallménius
3d2b1cfa6e ARMv6 vector mutiplication asm, speeds up vorbis decoding about 0.1MHz on gigabeat S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26892 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:49:39 +00:00
Nils Wallménius
b6c17c2c82 Delete some duplicate inline asm macros since they now live in the codeclib.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26891 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:01:20 +00:00
Andree Buschmann
6805448195 Correction to clobber lists of several codec's inline assembly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26376 a1c6a512-1295-4272-9138-f99709370657
2010-05-29 15:00:10 +00:00
Nils Wallménius
889b4a8ce8 Two tiny tweaks to some arm asm
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25993 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 09:44:05 +00:00
Nils Wallménius
85f0873682 Simplify special case function, speedup of about 0.2MHz on both coldfire and pp decoding the files in the test set
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25977 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 22:41:17 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc 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-06 21:04:40 +00:00
Michael Giacomelli
70ac57b95b Change various CPU_ARM defines to _ARM_ASSEM_ to be more consistent with the rest of Tremor.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25214 a1c6a512-1295-4272-9138-f99709370657
2010-03-16 04:47:24 +00:00
Nils Wallménius
c7f4773cf6 Simplify makefile
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25084 a1c6a512-1295-4272-9138-f99709370657
2010-03-09 03:20:14 +00:00
Andree Buschmann
fb70ec6ff9 Use larger IRAM for M5/X5 in vorbis.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25061 a1c6a512-1295-4272-9138-f99709370657
2010-03-07 21:02:55 +00:00
Nils Wallménius
b382d8334b Fix broken whitespace after r24862
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25031 a1c6a512-1295-4272-9138-f99709370657
2010-03-05 09:48:07 +00:00
Nils Wallménius
a4c3913afd Remove leftover unused buffer from the mdctexp branch
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25022 a1c6a512-1295-4272-9138-f99709370657
2010-03-04 06:31:34 +00:00