[libcxx-commits] [libcxx] [libc++] Optimize bitset::to_string (PR #128832)

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Wed May 14 09:59:29 PDT 2025


================
@@ -389,6 +395,22 @@ __bitset<_N_words, _Size>::to_ullong(true_type, true_type) const {
   return __r;
 }
 
+template <size_t _N_words, size_t _Size>
+template <bool _Spare, class _CharT, class _Traits, class _Allocator>
+_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 basic_string<_CharT, _Traits, _Allocator>
+__bitset<_N_words, _Size>::__to_string(_CharT __zero, _CharT __one) const {
+  basic_string<_CharT, _Traits, _Allocator> __r(_Size, __zero);
----------------
ldionne wrote:

```suggestion
  basic_string<_CharT, _Traits, _Allocator> __r(_Size, _Sparse ? __zero : __one);
```

https://github.com/llvm/llvm-project/pull/128832


More information about the libcxx-commits mailing list