diff options
Diffstat (limited to 'libcxx/docs/ReleaseNotes')
-rw-r--r-- | libcxx/docs/ReleaseNotes/22.rst | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libcxx/docs/ReleaseNotes/22.rst b/libcxx/docs/ReleaseNotes/22.rst index ec23ba9..0fd7e53 100644 --- a/libcxx/docs/ReleaseNotes/22.rst +++ b/libcxx/docs/ReleaseNotes/22.rst @@ -43,6 +43,7 @@ Implemented Papers - P3044R2: sub-``string_view`` from ``string`` (`Github <https://llvm.org/PR148140>`__) - P3223R2: Making ``std::istream::ignore`` less surprising (`Github <https://llvm.org/PR148178>`__) - P3060R3: Add ``std::views::indices(n)`` (`Github <https://llvm.org/PR148175>`__) +- P2835R7: Expose ``std::atomic_ref``'s object address (`Github <https://llvm.org/PR118377>`__) - P3168R2: Give ``std::optional`` Range Support (`Github <https://llvm.org/PR105430>`__) Improvements and New Features @@ -67,6 +68,12 @@ Improvements and New Features reduced debug information. - The performance of ``std::find`` has been improved by up to 2x for integral types +- The ``std::distance`` and ``std::ranges::distance`` algorithms have been optimized for segmented iterators (e.g., + ``std::join_view`` iterators), reducing the complexity from ``O(n)`` to ``O(n / segment_size)``. Benchmarks show + performance improvements of over 1600x in favorable cases with large segment sizes (e.g., 1024). +- The ``std::{fill, fill_n}`` and ``std::ranges::{fill, fill_n}`` algorithms have been optimized for segmented iterators, + resulting in a performance improvement of at least 10x for ``std::deque<int>`` iterators and + ``std::join_view<std::vector<std::vector<int>>>`` iterators. Deprecations and Removals ------------------------- |