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.
This commit is contained in:
Jonathan Wakely 2020-12-10 21:57:42 +00:00
parent 7f359556a7
commit 2ea62857a3

View File

@ -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);
}