JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, LV2 and AAX audio plug-ins.
Currently, on platforms that don't have an implementation of SIMDNativeOps, SIMDRegister is not available.
This PR makes functionality gracefully degrade by adding a fallback implementation of SIMDNativeOps that simply calls the fallback functions that already exist in SIMDFallbackOps.
On platforms that already support SIMD, nothing changes, but other platforms will now have implementations of SIMDRegister that use the fallback functions, so software that uses SIMDRegister will automatically support more platforms without any additional effort.
All unit tests pass on x86_64, aarch64, and ppc64le.
Currently, on platforms that don't have an implementation of
SIMDNativeOps
,SIMDRegister
is not available.This PR makes functionality gracefully degrade by adding a fallback implementation of
SIMDNativeOps
that simply calls the fallback functions that already exist inSIMDFallbackOps
.On platforms that already support SIMD, nothing changes, but other platforms will now have implementations of
SIMDRegister
that use the fallback functions, so software that usesSIMDRegister
will automatically support more platforms without any additional effort.All unit tests pass on
x86_64
,aarch64
, andppc64le
.