--- openal-soft-1.20.0/common/alnumeric.h.orig 2019-11-28 09:45:08.000000000 +0100 +++ openal-soft-1.20.0/common/alnumeric.h 2019-12-04 05:28:38.843039338 +0100 @@ -191,7 +191,7 @@ */ inline int fastf2i(float f) noexcept { -#if defined(HAVE_SSE_INTRINSICS) +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE_MATH__) return _mm_cvt_ss2si(_mm_set_ss(f)); #elif defined(_MSC_VER) && defined(_M_IX86_FP) @@ -222,7 +222,7 @@ /** Converts float-to-int using standard behavior (truncation). */ inline int float2int(float f) noexcept { -#if defined(HAVE_SSE_INTRINSICS) +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE_MATH__) return _mm_cvtt_ss2si(_mm_set_ss(f)); #elif ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__)) && \ @@ -257,7 +257,7 @@ /** Converts double-to-int using standard behavior (truncation). */ inline int double2int(double d) noexcept { -#if defined(HAVE_SSE_INTRINSICS) +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE_MATH__) return _mm_cvttsd_si32(_mm_set_sd(d)); #elif ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__)) && \ --- openal-soft-1.20.0/core/fpu_ctrl.cpp.orig 2019-11-28 09:45:08.000000000 +0100 +++ openal-soft-1.20.0/core/fpu_ctrl.cpp 2019-12-04 18:37:09.810067181 +0100 @@ -209,7 +209,7 @@ { if(this->in_mode) return; -#if defined(HAVE_SSE_INTRINSICS) +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE_MATH__) this->sse_state = _mm_getcsr(); unsigned int sseState = this->sse_state; sseState |= 0x8000; /* set flush-to-zero */ @@ -236,7 +236,7 @@ { if(!this->in_mode) return; -#if defined(HAVE_SSE_INTRINSICS) +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE_MATH__) _mm_setcsr(this->sse_state); #elif defined(__GNUC__) && defined(HAVE_SSE) --- openal-soft-1.21.0/alc/effects/convolution.cpp.orig 2020-11-04 11:00:35.000000000 +0100 +++ openal-soft-1.21.0/alc/effects/convolution.cpp 2020-11-05 06:23:28.093700396 +0100 @@ -1,7 +1,7 @@ #include "config.h" -#ifdef HAVE_SSE_INTRINSICS +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE__) #include #endif @@ -108,7 +108,7 @@ void apply_fir(al::span dst, const float *RESTRICT src, const float *RESTRICT filter) { -#ifdef HAVE_SSE_INTRINSICS +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE__) for(float &output : dst) { __m128 r4{_mm_setzero_ps()}; --- openal-soft-1.21.0/core/uhjfilter.cpp.orig 2020-11-04 11:00:35.000000000 +0100 +++ openal-soft-1.21.0/core/uhjfilter.cpp 2020-11-05 06:29:14.128492431 +0100 @@ -3,7 +3,7 @@ #include "uhjfilter.h" -#ifdef HAVE_SSE_INTRINSICS +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE__) #include #endif @@ -75,7 +75,7 @@ void allpass_process(al::span dst, const float *RESTRICT src) { -#ifdef HAVE_SSE_INTRINSICS +#if defined(HAVE_SSE_INTRINSICS) && defined(__SSE__) size_t pos{0}; if(size_t todo{dst.size()>>1}) {