about summary refs log tree commit diff
diff options
context:
space:
mode:
authorYunQiang Su <syq@gcc.gnu.org>2024-06-04 09:31:19 +0800
committerAndreas K. Hüttel <dilfridge@gentoo.org>2024-06-24 19:43:57 +0200
commit9e06e4a43b58519991acbed1d7f33abc40249226 (patch)
treeef9657b0842bfa4328481d380c43ed10283fe1fa
parent6f8c0dca8c9b76db4c1621247259bd6ec7ecb9cf (diff)
downloadglibc-9e06e4a43b58519991acbed1d7f33abc40249226.tar.gz
glibc-9e06e4a43b58519991acbed1d7f33abc40249226.tar.xz
glibc-9e06e4a43b58519991acbed1d7f33abc40249226.zip
MIPSr6/math: Use builtin fma and fmaf
MIPSr6 has MADDF.s/MADDF.d instructions, which are fused.

In MIPS ISA, double support can be subsetted.  Only FMAF is enabled
for this case.

	* sysdeps/mips/fpu/math-use-builtins-fma.h

Signed-off-by: YunQiang Su <syq@gcc.gnu.org>
Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
-rw-r--r--sysdeps/mips/fpu/math-use-builtins-fma.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/sysdeps/mips/fpu/math-use-builtins-fma.h b/sysdeps/mips/fpu/math-use-builtins-fma.h
new file mode 100644
index 0000000000..af8c1f95ff
--- /dev/null
+++ b/sysdeps/mips/fpu/math-use-builtins-fma.h
@@ -0,0 +1,13 @@
+#if __mips_isa_rev >= 6
+# ifdef __mips_single_float
+#  define USE_FMA_BUILTIN 0
+# else
+#  define USE_FMA_BUILTIN 1
+# endif
+# define USE_FMAF_BUILTIN 1
+#else
+# define USE_FMA_BUILTIN 0
+# define USE_FMAF_BUILTIN 0
+#endif
+#define USE_FMAL_BUILTIN 0
+#define USE_FMAF128_BUILTIN 0