[opus] [PATCH v1] armv7: celt_pitch_xcorr: Introduce ARM neon intrinsics

Timothy B. Terriberry tterribe at xiph.org
Thu Dec 25 14:47:12 PST 2014


I went ahead and made a few minor changes and committed this.
The minor changes were:

1. Capitalize NEON in the commit message.
2. Remove the CELT_PITCH_XCORR_IMPL table when OPUS_ARM_NEON_INTR is not 
defined in floating-point mode. There's no reason to want to use it in 
that case (since there's no accelerated versions), and it got rid of a 
little #ifdef ugliness. It's not possible to get in such a configuration 
via the default build system, but if someone manages on their own, it 
will now produce a link failure to tell them they're doing something 
wrong, which is a good thing.
3. Slightly simplified the while-loop at the end of 
xcorr_kernel_neon_float().
4. Cleaned up the float32_t/float confusion I mentioned earlier (these 
types are _not_ compatible in all compiler versions).
5. Added some double-quoting in the configure changes to match usage 
elsewhere.

Overall this represents an 11.6% reduction in running time for 96 kbps 
CELT mode encode+decode on a Cortex A8.


More information about the opus mailing list