- Status Closed
- Percent Complete
- Task Type Patches
- Category Codecs
- Assigned To No-one
- Operating System All players
- Severity Low
- Priority Very Low
- Reported Version Release 3.4
- Due in Version Undecided
-
Due Date
Undecided
- Votes
- Private
FS#11235 - libmad asm tweaks for ARM9 and above
libmad is full of code that doesn’t take into account pipeline interlocks on ARM9 and above. This fixes a bit of it, and gives a ~200kHz improvement.
Additionally, I noticed some of the ASM defines (PROD_ODDBACK_A, etc) are never used. Looking at the SVN logs, they probably never should have been committed. Anyone have an idea about them?
Closed by saratoga
2010-11-29 22:41
Reason for closing: Accepted
Additional comments about closing: Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407
2010-11-29 22:41
Reason for closing: Accepted
Additional comments about closing: Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407
Committed in r28624 and r28710. ASM is
now fairly close to optimal for arm9.
Further improvements will require
algorithmic changes, see: FS#11759.
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
Merged against r25938.
Edit: Tested on PP502x → 0.1 MHz slower. Sounds like we need compile options for ⇐ARMV4 and >ARMV4.
What if you use r12 instead of r5 ; does that improve anything on PP502x?
Dave, interestingly decoding is exactly as fast as svn when using r12 instead of r5.
Committed libmadasmv3.patch.
New patch performs the above scheduling on all of synth_full_arm.S. Saves about 2 MHz on arm9. Still needs some clean up and testing.
Edit: verified on amsv1, amsv2, and nano2g. 2MHz speed up on each.