about summary refs log tree commit diff
path: root/sysdeps/s390
diff options
context:
space:
mode:
authorStefan Liebler <stli@linux.ibm.com>2019-12-11 15:09:22 +0100
committerStefan Liebler <stli@linux.ibm.com>2019-12-11 15:12:17 +0100
commit1ac9c1cf87216bf9f8ac4f7c9754d025d9f2c4ae (patch)
tree8c87cea663ef68ef46470f8d96a0c0c833062428 /sysdeps/s390
parent62560ee84095274bab1050817f42e782df226a17 (diff)
downloadglibc-1ac9c1cf87216bf9f8ac4f7c9754d025d9f2c4ae.tar.gz
glibc-1ac9c1cf87216bf9f8ac4f7c9754d025d9f2c4ae.tar.xz
glibc-1ac9c1cf87216bf9f8ac4f7c9754d025d9f2c4ae.zip
Use GCC builtins for trunc functions if desired.
This patch is using the corresponding GCC builtin for truncf, trunc,
truncl and truncf128 if the USE_FUNCTION_BUILTIN macros are defined to one
in math-use-builtins.h.

This is the case for s390 if build with at least --march=z196 --mzarch.
Otherwise the generic implementation is used.  The code of the generic
implementation is not changed.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'sysdeps/s390')
-rw-r--r--sysdeps/s390/fpu/math-use-builtins.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/sysdeps/s390/fpu/math-use-builtins.h b/sysdeps/s390/fpu/math-use-builtins.h
index 5435cbb65f..a39715c612 100644
--- a/sysdeps/s390/fpu/math-use-builtins.h
+++ b/sysdeps/s390/fpu/math-use-builtins.h
@@ -42,16 +42,22 @@
 # define USE_CEILF_BUILTIN 1
 # define USE_CEILL_BUILTIN 1
 
+# define USE_TRUNC_BUILTIN 1
+# define USE_TRUNCF_BUILTIN 1
+# define USE_TRUNCL_BUILTIN 1
+
 # if __GNUC_PREREQ (8, 0)
 #  define USE_NEARBYINTF128_BUILTIN 1
 #  define USE_RINTF128_BUILTIN 1
 #  define USE_FLOORF128_BUILTIN 1
 #  define USE_CEILF128_BUILTIN 1
+#  define USE_TRUNCF128_BUILTIN 1
 # else
 #  define USE_NEARBYINTF128_BUILTIN 0
 #  define USE_RINTF128_BUILTIN 0
 #  define USE_FLOORF128_BUILTIN 0
 #  define USE_CEILF128_BUILTIN 0
+#  define USE_TRUNCF128_BUILTIN 0
 # endif
 
 #else
@@ -77,6 +83,11 @@
 # 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
+
 #endif /* ! HAVE_S390_MIN_Z196_ZARCH_ASM_SUPPORT  */
 
 #endif /* math-use-builtins.h */