From 2ea62857a3fbdf091ba38cbb62e98dc76b198e2e Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 10 Dec 2020 21:57:42 +0000 Subject: [PATCH] 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. --- libstdc++-v3/include/std/bit | 4 ---- 1 file changed, 4 deletions(-) diff --git a/libstdc++-v3/include/std/bit b/libstdc++-v3/include/std/bit index 1d99c80..6f47f89 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); } -- 2.7.4