SIMDRegister: Add native double support for ARM Neon since aarch64 supports it

I just wanted implement some custom SIMD stuff directly using ARM Neon intrinsics on a juce::dsp::SIMDRegister<double> and was surprised to find out that the internal vSIMDType is not float64x2_t as I would expect but a struct of two plain doubles.

The comment says that it is not available, which is only true for aarch32. With nowadays M1 Macs and mobile targets, I think it would be a good think if the actually available instructions could be used when building for modern ARM CPUs. Could you add that and only keep the workaround if targeting old 32 Bit ARMs?

1 Like