diff options
Diffstat (limited to 'include/psimd.h')
-rw-r--r-- | include/psimd.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/psimd.h b/include/psimd.h index b7cb65d..1aa1014 100644 --- a/include/psimd.h +++ b/include/psimd.h @@ -28,7 +28,7 @@ #define PSIMD_INTRINSIC static #endif -#if defined(__GNUC__) || defined(__clang__) +#if defined(__GNUC__) #if defined(__ARM_NEON__) || defined(__ARM_NEON) #include <arm_neon.h> #endif @@ -78,7 +78,7 @@ #include <stdint.h> #endif -#if defined(__GNUC__) || defined(__clang__) +#if defined(__GNUC__) #define PSIMD_HAVE_F64 0 #define PSIMD_HAVE_F32 1 #define PSIMD_HAVE_U8 1 @@ -664,10 +664,10 @@ #if defined(__aarch64__) || defined(__ARM_NEON__) && defined(__ARM_FEATURE_FMA) return (psimd_f32) vfmaq_f32((float32x4_t) a, (float32x4_t) b, (float32x4_t) c); #elif (defined(__x86_64__) || defined(__i386__) || defined(__i686__)) && defined(__FMA__) - return (psimd_f32) _mm_fmadd_ps((__m128) b, (__m128) c, (__m128) a); + return (psimd_f32) _mm_fmadd_ps((__m128) c, (__m128) a, (__m128) b); #elif (defined(__x86_64__) || defined(__i386__) || defined(__i686__)) && defined(__FMA4__) - return (psimd_f32) _mm_macc_ps((__m128) b, (__m128) c, (__m128) a); - #elif defined(__wasm__) && defined(__wasm_simd128__) && defined(__clang__) && PSIMD_ENABLE_WASM_QFMA + return (psimd_f32) _mm_macc_ps((__m128) c, (__m128) a, (__m128) b); + #elif defined(__wasm__) && defined(__wasm_simd128__) && defined(__clang__) return (psimd_f32) __builtin_wasm_qfma_f32x4(a, b, c); #else return a + b * c; |