diff options
author | Timothy Arceri <[email protected]> | 2014-06-04 02:57:13 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2014-06-06 07:15:00 -0700 |
commit | fc0be88c0f8d3d8887edd2afac915840f4e3f5e4 (patch) | |
tree | dbe626f58eff02c0b34ddaa7ec09fa3de4c10f35 /Alc/ALu.c | |
parent | 3b2fcb3ef6f00d026f06ca154060b29ded3eb3fc (diff) |
Add SSE2 and SSE4.1 linear resamplers
Currently the only way SSE 4.1 is detected is by using __get_cpuid, i.e. with
GCC. Windows' IsProcessorFeaturePresent does not report SSE4.1 capabilities.
Diffstat (limited to 'Alc/ALu.c')
-rw-r--r-- | Alc/ALu.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -91,6 +91,14 @@ static ResamplerFunc SelectResampler(enum Resampler Resampler, ALuint increment) case PointResampler: return Resample_point32_C; case LinearResampler: +#ifdef HAVE_SSE4_1 + if((CPUCapFlags&CPU_CAP_SSE4_1)) + return Resample_lerp32_SSE41; +#endif +#ifdef HAVE_SSE2 + if((CPUCapFlags&CPU_CAP_SSE2)) + return Resample_lerp32_SSE2; +#endif return Resample_lerp32_C; case CubicResampler: return Resample_cubic32_C; |