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 |
|
Jens Arnold
|
0030ae28b5
|
Get rid of .rept in inline asm() blocks where possible. Using .rept causes gcc to wrongly estimate the size of the asm(), leading to (potential) compilation problems. This is necessary for the upcoming restructuring, and should fix ARMv6+ sim builds as well. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25004 a1c6a512-1295-4272-9138-f99709370657
|
2010-03-03 20:52:02 +00:00 |
|
Jens Arnold
|
1cc4bd8f86
|
APE: Fused vector math for the filters on ARMv6. Speedup is ~2.5% for -c2000, ~7% for -c3000 and higher.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24569 a1c6a512-1295-4272-9138-f99709370657
|
2010-02-08 21:59:24 +00:00 |
|
Jens Arnold
|
66c0cf2eb1
|
Tweak the ARMv6 filter assembly a bit further.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19198 a1c6a512-1295-4272-9138-f99709370657
|
2008-11-24 18:40:43 +00:00 |
|
Jens Arnold
|
2a5053f58c
|
Several tweaks and cleanups: * Use .rept instead of repeated macros for repeating blocks. * Use MUL (variant) instead of MLA (variant) in the first step of the ARM scalarproduct() if there's no loop. * Unroll ARM assembler functions to 32 where not already done, plus the generic scalarproduct().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19144 a1c6a512-1295-4272-9138-f99709370657
|
2008-11-19 21:31:33 +00:00 |
|
Jens Arnold
|
dd7cacdc88
|
Another minor improvement: better pipelining and one less register used in vector addition/ subtraction.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18739 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-07 20:52:42 +00:00 |
|
Jens Arnold
|
6b84f60046
|
APE: Further ARMv6 filter optimisations: Save 4 'ror's per round by utilising the shift feature of the 'pack halfword' instructions in the unaligned vector addition/ subtraction, better pipelining in the aligned scalarproduct(), and a new method to calculate the unaligned scalarproduct().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18736 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-07 19:40:17 +00:00 |
|
Jens Arnold
|
d456460707
|
Further speedup for ARMv6 by better pipelining in scalarproduct().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18697 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-03 12:30:18 +00:00 |
|
Jens Arnold
|
67554591d9
|
Fix static noise on armv6.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18694 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-03 10:09:57 +00:00 |
|
Jens Arnold
|
46bf6bd493
|
Add preliminary ARMv5te optimisations (verified working, but can probably be sped up further), and fix a comment in the ARMv6 code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18693 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-03 09:33:36 +00:00 |
|
Jens Arnold
|
6fcf2765dd
|
Add armv6 specific asm code for the APE filters, speeding up -c2000..-c5000 a bit on Gigabeat S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18692 a1c6a512-1295-4272-9138-f99709370657
|
2008-10-03 08:54:34 +00:00 |
|