diff options
author | Oleg Endo <olegendo@gcc.gnu.org> | 2013-10-06 13:44:47 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2013-10-06 13:44:47 +0000 |
commit | c3ddbdce59b5a4b42f191406d8152879b6735937 (patch) | |
tree | c9426afa8ad359c8da4840b1c09a02c1ed85a138 /libstdc++-v3 | |
parent | ac6d694723db17022ace0bf2f5f093ba63e40195 (diff) | |
download | gcc-c3ddbdce59b5a4b42f191406d8152879b6735937.zip gcc-c3ddbdce59b5a4b42f191406d8152879b6735937.tar.gz gcc-c3ddbdce59b5a4b42f191406d8152879b6735937.tar.bz2 |
re PR libstdc++/58625 (std::signbit always converts to double)
2013-10-06 Oleg Endo <olegendo@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/58625
* include/c_global/cmath (signbit): Use __builtin_signbitf and
__builtin_signbitl.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r203228
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 7 | ||||
-rw-r--r-- | libstdc++-v3/include/c_global/cmath | 5 |
2 files changed, 10 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b02593a..4a00019 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2013-10-06 Oleg Endo <olegendo@gcc.gnu.org> + Paolo Carlini <paolo.carlini@oracle.com> + + PR libstdc++/58625 + * include/c_global/cmath (signbit): Use __builtin_signbitf and + __builtin_signbitl. + 2013-10-03 Tim Shen <timshen91@gmail.com> * include/bits/regex_executor.tcc (_DFSExecutor<>::_M_dfs): Fix wrong diff --git a/libstdc++-v3/include/c_global/cmath b/libstdc++-v3/include/c_global/cmath index b438585..2641118 100644 --- a/libstdc++-v3/include/c_global/cmath +++ b/libstdc++-v3/include/c_global/cmath @@ -650,9 +650,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION isnormal(_Tp __x) { return __x != 0 ? true : false; } + // The front-end doesn't provide a type generic builtin (libstdc++/58625). constexpr bool signbit(float __x) - { return __builtin_signbit(__x); } + { return __builtin_signbitf(__x); } constexpr bool signbit(double __x) @@ -660,7 +661,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION constexpr bool signbit(long double __x) - { return __builtin_signbit(__x); } + { return __builtin_signbitl(__x); } template<typename _Tp> constexpr typename __gnu_cxx::__enable_if<__is_integer<_Tp>::__value, |