aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/fpu
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-06-04 14:32:17 +0000
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-06-22 11:09:45 -0300
commite80501a5c971c13f9bd72fe7b34a83aa36ec6541 (patch)
tree1fe929a28af22a2b07831094a1d8ad51adaec4e9 /sysdeps/powerpc/fpu
parentc013d5d3aae97c09e10c7b73a72af6086e6e1b98 (diff)
downloadglibc-e80501a5c971c13f9bd72fe7b34a83aa36ec6541.zip
glibc-e80501a5c971c13f9bd72fe7b34a83aa36ec6541.tar.gz
glibc-e80501a5c971c13f9bd72fe7b34a83aa36ec6541.tar.bz2
math: Decompose math-use-builtins.h
Each symbol definitions are moved on a separated file and it cover all symbol type definitions (float, double, long double, and float128). It allows to set support for architectures without the boiler place of copying default values. Checked with a build on the affected ABIs.
Diffstat (limited to 'sysdeps/powerpc/fpu')
-rw-r--r--sysdeps/powerpc/fpu/math-use-builtins-fma.h9
-rw-r--r--sysdeps/powerpc/fpu/math-use-builtins.h77
2 files changed, 9 insertions, 77 deletions
diff --git a/sysdeps/powerpc/fpu/math-use-builtins-fma.h b/sysdeps/powerpc/fpu/math-use-builtins-fma.h
new file mode 100644
index 0000000..5652e55
--- /dev/null
+++ b/sysdeps/powerpc/fpu/math-use-builtins-fma.h
@@ -0,0 +1,9 @@
+#define USE_FMA_BUILTIN 1
+#define USE_FMAF_BUILTIN 1
+#define USE_FMAL_BUILTIN 0
+/* This is not available for P8 or BE targets. */
+#ifdef __FP_FAST_FMAF128
+# define USE_FMAF128_BUILTIN 1
+#else
+# define USE_FMAF128_BUILTIN 0
+#endif
diff --git a/sysdeps/powerpc/fpu/math-use-builtins.h b/sysdeps/powerpc/fpu/math-use-builtins.h
deleted file mode 100644
index 72e28ec..0000000
--- a/sysdeps/powerpc/fpu/math-use-builtins.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Using math gcc builtins instead of generic implementation. PowerPC version.
- Copyright (C) 2019-2020 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#ifndef MATH_USE_BUILTINS_H
-#define MATH_USE_BUILTINS_H 1
-
-#include <features.h> /* For __GNUC_PREREQ. */
-
-/* Define these macros to 1 to use __builtin_xyz instead of the
- generic implementation. */
-#define USE_NEARBYINT_BUILTIN 0
-#define USE_NEARBYINTF_BUILTIN 0
-#define USE_NEARBYINTL_BUILTIN 0
-#define USE_NEARBYINTF128_BUILTIN 0
-
-#define USE_RINT_BUILTIN 0
-#define USE_RINTF_BUILTIN 0
-#define USE_RINTL_BUILTIN 0
-#define USE_RINTF128_BUILTIN 0
-
-#define USE_FLOOR_BUILTIN 0
-#define USE_FLOORF_BUILTIN 0
-#define USE_FLOORL_BUILTIN 0
-#define USE_FLOORF128_BUILTIN 0
-
-#define USE_CEIL_BUILTIN 0
-#define USE_CEILF_BUILTIN 0
-#define USE_CEILL_BUILTIN 0
-#define USE_CEILF128_BUILTIN 0
-
-#define USE_TRUNC_BUILTIN 0
-#define USE_TRUNCF_BUILTIN 0
-#define USE_TRUNCL_BUILTIN 0
-#define USE_TRUNCF128_BUILTIN 0
-
-#define USE_ROUND_BUILTIN 0
-#define USE_ROUNDF_BUILTIN 0
-#define USE_ROUNDL_BUILTIN 0
-#define USE_ROUNDF128_BUILTIN 0
-
-#define USE_COPYSIGNL_BUILTIN 1
-#if __GNUC_PREREQ (7, 0)
-# define USE_COPYSIGNF128_BUILTIN 1
-#else
-# define USE_COPYSIGNF128_BUILTIN 0
-#endif
-
-#define USE_SQRT_BUILTIN 0
-#define USE_SQRTF_BUILTIN 0
-
-#define USE_FMA_BUILTIN 1
-#define USE_FMAF_BUILTIN 1
-#define USE_FMAL_BUILTIN 0
-
-/* This is not available for P8 or BE targets. */
-#ifdef __FP_FAST_FMAF128
-# define USE_FMAF128_BUILTIN 1
-#else
-# define USE_FMAF128_BUILTIN 0
-#endif
-
-#endif