Jonathan Lennox
2016-Jul-08 22:38 UTC
[opus] Fix ARM cpu selection if Intrinsics are enabled but not asm
The ARM implementation of opus_select_arch wants to verify that a given CPU architecture also implies all lower-capability architectures. Unfortunately, the ARM opus_cpu_capabilities function only currently checks for those architectures that are enabled in the configuration, and thus —disable-asm — or a floating-point build — doesn’t check for Media or EDSP. Thus, RTCD for these configurations doesn’t end up taking advantage of Neon Intrinsics support. The attached patch should fix this, by checking for a CPU feature if the feature or any higher feature is enabled in the configuration. -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Fix-RTCD-on-ARM-with-Neon-Intrinsics-but-not-ASM-not.patch Type: application/octet-stream Size: 2197 bytes Desc: 0001-Fix-RTCD-on-ARM-with-Neon-Intrinsics-but-not-ASM-not.patch URL: <http://lists.xiph.org/pipermail/opus/attachments/20160708/0d8c03c4/attachment.obj>
Timothy B. Terriberry
2016-Jul-08 23:48 UTC
[opus] Fix ARM cpu selection if Intrinsics are enabled but not asm
Jonathan Lennox wrote:> The attached patch should fix this, by checking for a CPU feature if the feature or any higher feature is enabled in the configuration.Applied, with the corrections to the priority of EDSP and Media we discussed on IRC, and also line breaks. https://git.xiph.org/?p=opus.git;a=commitdiff;h=1a94b2b8797a