@@ -43,10 +43,7 @@ struct _LIBCPP_HIDDEN __traits_base<_Tp, __enable_if_t<sizeof(_Tp) <= sizeof(uin
4343 // /
4444 // / The algorithm is based on
4545 // / http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog10
46- // / Instead of using IntegerLogBase2 it uses __countl_zero. Previously, it
47- // / used __libcpp_clz. Since that function requires its input to have at
48- // / least one bit set the value of zero is set to one. This means the first
49- // / element of the lookup table is zero.
46+ // / Instead of using IntegerLogBase2 it uses __countl_zero.
5047 static _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI int __width (_Tp __v) {
5148 auto __t = (32 - std::__countl_zero (static_cast <type>(__v | 1 ))) * 1233 >> 12 ;
5249 return __t - (__v < __itoa::__pow10_32[__t ]) + 1 ;
@@ -69,10 +66,7 @@ struct _LIBCPP_HIDDEN __traits_base<_Tp, __enable_if_t<sizeof(_Tp) == sizeof(uin
6966 // /
7067 // / The algorithm is based on
7168 // / http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog10
72- // / Instead of using IntegerLogBase2 it uses __countl_zero. Previously, it
73- // / used __libcpp_clz. Since that function requires its input to have at
74- // / least one bit set the value of zero is set to one. This means the first
75- // / element of the lookup table is zero.
69+ // / Instead of using IntegerLogBase2 it uses __countl_zero.
7670 static _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI int __width (_Tp __v) {
7771 auto __t = (64 - std::__countl_zero (static_cast <type>(__v | 1 ))) * 1233 >> 12 ;
7872 return __t - (__v < __itoa::__pow10_64[__t ]) + 1 ;
@@ -96,10 +90,7 @@ struct _LIBCPP_HIDDEN __traits_base<_Tp, __enable_if_t<sizeof(_Tp) == sizeof(__u
9690 // /
9791 // / The algorithm is based on
9892 // / http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog10
99- // / Instead of using IntegerLogBase2 it uses __countl_zero. Previously, it
100- // / used __libcpp_clz. Since that function requires its input to have at
101- // / least one bit set the value of zero is set to one. This means the first
102- // / element of the lookup table is zero.
93+ // / Instead of using IntegerLogBase2 it uses __countl_zero.
10394 static _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI int __width (_Tp __v) {
10495 _LIBCPP_ASSERT_INTERNAL (
10596 __v > numeric_limits<uint64_t >::max (), " The optimizations for this algorithm fail when this isn't true." );
0 commit comments