From 04008d9c3f8ad65d5242319c0864b3963eb6b2c9 Mon Sep 17 00:00:00 2001 From: Recep Aslantas Date: Mon, 19 Apr 2021 00:21:04 +0300 Subject: [PATCH] arm: fix fma for glm_vec4_muladds --- include/cglm/vec4.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/include/cglm/vec4.h b/include/cglm/vec4.h index 54d487f..2453b1b 100644 --- a/include/cglm/vec4.h +++ b/include/cglm/vec4.h @@ -590,8 +590,10 @@ glm_vec4_muladd(vec4 a, vec4 b, vec4 dest) { CGLM_INLINE void glm_vec4_muladds(vec4 a, float s, vec4 dest) { -#if defined(CGLM_SIMD) +#if defined( __SSE__ ) || defined( __SSE2__ ) glmm_store(dest, glmm_fmadd(glmm_load(a), _mm_set1_ps(s), glmm_load(dest))); +#elif defined(CGLM_NEON_FP) + glmm_store(dest, glmm_fmadd(glmm_load(a), vdupq_n_f32(s), glmm_load(dest))); #else dest[0] += a[0] * s; dest[1] += a[1] * s;