[committed] libstdc++: Remove redundant branches in countl_one and countr_one [PR 98226]
Jonathan Wakely
jwakely@redhat.com
Thu Dec 10 22:00:23 GMT 2020
There's no need to explicitly check for the maximum value, because the
function we call handles it correctly anyway.
libstdc++-v3/ChangeLog:
PR libstdc++/98226
* include/std/bit (__countl_one, __countr_one): Remove redundant
branches.
Tested powerpc64le-linux. Committed to trunk.
-------------- next part --------------
commit 2ea62857a3fbdf091ba38cbb62e98dc76b198e2e
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Thu Dec 10 21:57:42 2020
libstdc++: Remove redundant branches in countl_one and countr_one [PR 98226]
There's no need to explicitly check for the maximum value, because the
function we call handles it correctly anyway.
libstdc++-v3/ChangeLog:
PR libstdc++/98226
* include/std/bit (__countl_one, __countr_one): Remove redundant
branches.
diff --git a/libstdc++-v3/include/std/bit b/libstdc++-v3/include/std/bit
index 1d99c807c4a..6f47f89ab03 100644
--- a/libstdc++-v3/include/std/bit
+++ b/libstdc++-v3/include/std/bit
@@ -141,8 +141,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr int
__countl_one(_Tp __x) noexcept
{
- if (__x == __gnu_cxx::__int_traits<_Tp>::__max)
- return __gnu_cxx::__int_traits<_Tp>::__digits;
return std::__countl_zero<_Tp>((_Tp)~__x);
}
@@ -184,8 +182,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr int
__countr_one(_Tp __x) noexcept
{
- if (__x == __gnu_cxx::__int_traits<_Tp>::__max)
- return __gnu_cxx::__int_traits<_Tp>::__digits;
return std::__countr_zero((_Tp)~__x);
}
More information about the Gcc-patches
mailing list