aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/x86_64/fpu/multiarch/s_fmaf.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/x86_64/fpu/multiarch/s_fmaf.c')
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_fmaf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sysdeps/x86_64/fpu/multiarch/s_fmaf.c b/sysdeps/x86_64/fpu/multiarch/s_fmaf.c
index 5f4c2ec0be..d65aa9a16f 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_fmaf.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_fmaf.c
@@ -19,6 +19,7 @@
#include <config.h>
#include <math.h>
#include <init-arch.h>
+#include <x86-math-features.h>
#include <libm-alias-float.h>
extern float __fmaf_sse2 (float x, float y, float z) attribute_hidden;
@@ -40,8 +41,8 @@ __fmaf_fma4 (float x, float y, float z)
}
-libm_ifunc (__fmaf, HAS_ARCH_FEATURE (FMA_Usable)
- ? __fmaf_fma3 : (HAS_ARCH_FEATURE (FMA4_Usable)
+libm_ifunc (__fmaf, __x86_math_features () & x86_math_feature_fma
+ ? __fmaf_fma3 : (__x86_math_features () & x86_math_feature_fma4
? __fmaf_fma4 : __fmaf_sse2));
libm_alias_float (__fma, fma)