diff options
author | Stefan Liebler <stli@linux.ibm.com> | 2019-12-11 15:09:18 +0100 |
---|---|---|
committer | Stefan Liebler <stli@linux.ibm.com> | 2019-12-11 15:12:15 +0100 |
commit | ae3577f607b50bf3ce9b0877e43ad2508c9da61b (patch) | |
tree | b284b10fc26c0454a71be353759f3d2f892b06e0 /sysdeps/generic | |
parent | 36e9acbd5cb2c330c0d53195db4a0ee31f2c3097 (diff) | |
download | glibc-ae3577f607b50bf3ce9b0877e43ad2508c9da61b.tar.gz glibc-ae3577f607b50bf3ce9b0877e43ad2508c9da61b.tar.xz glibc-ae3577f607b50bf3ce9b0877e43ad2508c9da61b.zip |
Use GCC builtins for nearbyint functions if desired.
This patch is using the corresponding GCC builtin for nearbyintf, nearbyint, nearbintl and nearbyintf128 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/generic')
-rw-r--r-- | sysdeps/generic/math-use-builtins.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sysdeps/generic/math-use-builtins.h b/sysdeps/generic/math-use-builtins.h new file mode 100644 index 0000000000..e12490ed41 --- /dev/null +++ b/sysdeps/generic/math-use-builtins.h @@ -0,0 +1,29 @@ +/* Using math gcc builtins instead of generic implementation. Generic version. + Copyright (C) 2019 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 + +/* 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 + +#endif /* math-use-builtins.h */ |