aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/mixer.c
diff options
context:
space:
mode:
Diffstat (limited to 'Alc/mixer.c')
-rw-r--r--Alc/mixer.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/Alc/mixer.c b/Alc/mixer.c
index 0ee1edd6..5442954e 100644
--- a/Alc/mixer.c
+++ b/Alc/mixer.c
@@ -113,6 +113,10 @@ static inline ResamplerFunc SelectResampler(enum Resampler resampler)
case PointResampler:
return Resample_point32_C;
case LinearResampler:
+#ifdef HAVE_NEON
+ if((CPUCapFlags&CPU_CAP_NEON))
+ return Resample_lerp32_Neon;
+#endif
#ifdef HAVE_SSE4_1
if((CPUCapFlags&CPU_CAP_SSE4_1))
return Resample_lerp32_SSE41;
@@ -123,6 +127,10 @@ static inline ResamplerFunc SelectResampler(enum Resampler resampler)
#endif
return Resample_lerp32_C;
case FIR4Resampler:
+#ifdef HAVE_NEON
+ if((CPUCapFlags&CPU_CAP_NEON))
+ return Resample_fir4_32_Neon;
+#endif
#ifdef HAVE_SSE4_1
if((CPUCapFlags&CPU_CAP_SSE4_1))
return Resample_fir4_32_SSE41;
@@ -133,6 +141,10 @@ static inline ResamplerFunc SelectResampler(enum Resampler resampler)
#endif
return Resample_fir4_32_C;
case FIR8Resampler:
+#ifdef HAVE_NEON
+ if((CPUCapFlags&CPU_CAP_NEON))
+ return Resample_fir8_32_Neon;
+#endif
#ifdef HAVE_SSE4_1
if((CPUCapFlags&CPU_CAP_SSE4_1))
return Resample_fir8_32_SSE41;
@@ -143,6 +155,10 @@ static inline ResamplerFunc SelectResampler(enum Resampler resampler)
#endif
return Resample_fir8_32_C;
case BSincResampler:
+#ifdef HAVE_NEON
+ if((CPUCapFlags&CPU_CAP_NEON))
+ return Resample_bsinc32_Neon;
+#endif
#ifdef HAVE_SSE
if((CPUCapFlags&CPU_CAP_SSE))
return Resample_bsinc32_SSE;