[libcxx-commits] [libcxx] [libc++] Speed up vector<bool> copy/move-ctors [1/3] (PR #120132)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Sat Dec 21 12:30:13 PST 2024


philnik777 wrote:

> Thank you for your feedback. If I understand correctly, you are suggesting that I work on the general `std::copy` algorithm (and possibly std::move and others) for the `__bit_iterator` overload. I am a bit confused. Isn't this overload already implemented in `libcxx/include/__bit_reference`?

Yes, basically. The overload is implemented there, but is currently not called from the copy constructor because that (indirectly) uses the internal `__copy` version, which isn't optimized. To fix that, we should do something similar to what I've done in https://reviews.llvm.org/D156956. That way we also optimize `ranges::copy` as a nice side effect.

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


More information about the libcxx-commits mailing list