Closed Bug 608166 Opened 11 years ago Closed 11 years ago

Add ARM assembly optimizations for libtheora


(Core :: Audio/Video, defect)

Not set



Tracking Status
fennec 2.0b3+ ---


(Reporter: derf, Assigned: derf)



(1 file, 2 obsolete files)

Attached patch Update libtheora to r17576. (obsolete) — Splinter Review
The recent libtheora 1.2alpha1 release included optimized assembly routines for ARM, which will help video playback for Fennec, as well as some significant general decoder optimizations. The attached patch updates the in-tree libtheora to current svn (r17576), which include also includes some additional minor fixes and general decoder optimizations.
Attachment #486826 - Flags: review?(chris.double)
Attachment #486826 - Flags: review?(chris.double) → review+
Attached patch Update libtheora to r17578. (obsolete) — Splinter Review
This version of the patch adds a manual __linux__ #define for Android (to enable the CPU detection method needed for the build to succeed), fixes a potential double-free uncovered by fuzzing, and cleans up some warnings (again on Android, where __GNUC_PREREQ wasn't being #defined).

Carrying forward r=doublec
Assignee: nobody → tterribe
Attachment #486826 - Attachment is obsolete: true
Attachment #486843 - Flags: review+
Comment on attachment 486843 [details] [diff] [review]
Update libtheora to r17578.

r+.  Two nits: There's a bunch of inconsistent comment spacing just like the other patch, and I'd rather not add a lot of hard tabs, but it's up to you whether it's worse to have a file with a bunch of tabs or a file that's half tabs and half spaces.
Attachment #486843 - Flags: review+
tracking-fennec: --- → ?
Addressed comments from review. I actually went the route of removing the tabs from the Makefile I modified entirely (except those required by make, of course).

This version of the patch also cleans up config.h some more (sed was leaving " 1" on a line by itself in there). It turns out we weren't using this at all (-DHAVE_CONFIG_H is never set), and there is no real reason why we should start (the only flags used by the library itself are for the custom assembly and disabling the encoder, which we set manually; all the remaining ones are for the example programs, which we don't build), but there's no reason to leave syntax errors in the file.

Carrying forward r=doublec,khuey
Attachment #486843 - Attachment is obsolete: true
tracking-fennec: ? → 2.0b3+
Closed: 11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.