summaryrefslogtreecommitdiff
path: root/apps/recorder/jpeg_idct_arm.S (follow)
Commit message (Collapse)AuthorAge
* FS#11335 by me: make ARM assembly functions thumb-friendlyRafaël Carré2010-06-11
| | | | | | | | | | | | | 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
* Fix a typo in jpeg_idct8h which could cause display corruption on ARMv5+Rob Purchase2009-08-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22577 a1c6a512-1295-4272-9138-f99709370657
* Remove ldrd from ARMv5 JPEG IDCT, remove old debug code selecting ARMv5 code ↵Andrew Mahone2009-07-17
| | | | | | for one function even when building for ARMv6. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21917 a1c6a512-1295-4272-9138-f99709370657
* Add new asmdefs mechanism for exporting information only available to the C ↵Andrew Mahone2009-07-13
| | | | | | compiler for use in asm files, and use it in arm jpeg idct. See apps/apps.make, apps/core_asmdefs.c, and apps/recorder/jpeg_idct_arm.S for details. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21831 a1c6a512-1295-4272-9138-f99709370657
* JPEG IDCT8 ARMv6 assembly, slight speedup vs ARMv5.Andrew Mahone2009-07-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21620 a1c6a512-1295-4272-9138-f99709370657
* Core JPEG IDCT8 optimizations for ARMv5+, small optimizations for ARMv4.Andrew Mahone2009-07-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21612 a1c6a512-1295-4272-9138-f99709370657
* Use hand-written constants table on ARMv5+ for JPEG IDCT, and load four ↵Andrew Mahone2009-06-28
| | | | | | 16-bit constants at a time with ldrd. Not useful for ARMv4, since one load per constant would still be needed, and limited range of ldrsh would force multiple copies of table. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21535 a1c6a512-1295-4272-9138-f99709370657
* ARM assembly 8-point IDCT, both passes. No ARMv5/6 optimizations yet, aside ↵Andrew Mahone2009-06-27
| | | | | | from usat for final output. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21526 a1c6a512-1295-4272-9138-f99709370657
* Fix a typo in jpeg_idct4h which caused garbled JPEGs on ARMv5.Rob Purchase2009-06-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21520 a1c6a512-1295-4272-9138-f99709370657
* 2-point and 1-point JPEG IDCT ARM assembly, remove comment in jpeg_load.c ↵Andrew Mahone2009-06-19
| | | | | | about inline asm, change loop condition to be a bit safer in case of bad values being passed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21349 a1c6a512-1295-4272-9138-f99709370657
* Core JPEG decoder improvements:Andrew Mahone2009-06-19
For >8-point vertical IDCT, transpose the coefficients while decoding them, so that the vertical IDCT can read in rows rather than columns. This improves speed a bit for this size even using the C IDCT. Remove inline ARM asm, replacing it with an external file containing pure asm IDCT functions. Add jpeg_ prefix to JPEG IDCT functions since some of them will now be visible globally. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21345 a1c6a512-1295-4272-9138-f99709370657