llvm-project/libcxx/test/std
Nikolas Klauser 2c3bbac0c7 [libc++] Implement ranges::move{, _backward}
This patch also adds a new optimization to `std::move`. It unwraps three `reverse_iterator`s if the wrapped iterator is a `contiguous_iterator` and the iterated type is trivially_movable. This allows us to simplify `ranges::move_backward` to a forward to `std::move` without any pessimization.

Reviewed By: var-const, #libc

Spies: libcxx-commits, mgorny

Differential Revision: https://reviews.llvm.org/D126616
2022-06-23 13:52:49 +02:00
..
algorithms [libc++] Implement ranges::move{, _backward} 2022-06-23 13:52:49 +02:00
atomics [libc++] Remove macros for IBM compiler 2022-06-14 09:15:41 -04:00
concepts [libc++] Remove unused __functional includes 2022-05-28 10:12:39 +02:00
containers [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
depr [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
diagnostics [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
experimental [libc++] Implement std::boyer_moore{, _horspool}_searcher 2022-06-17 19:09:40 +02:00
input.output [libc++] Make the Debug mode a configuration-time only option 2022-06-07 16:33:53 -04:00
iterators [libc++] Remove unused __functional includes 2022-05-28 10:12:39 +02:00
language.support [libc++] Implement P0154R1 (Hardware inference size) 2022-06-23 01:31:09 +02:00
library/description/conventions [libc++] Implement ranges::move{, _backward} 2022-06-23 13:52:49 +02:00
localization [libc++][CI] AIX does not have alternative for time_put_byname 2022-05-31 14:20:34 -04:00
namespace [runtimes] Rename various libcpp-has-no-XYZ Lit features to just no-XYZ 2022-05-27 15:24:45 -04:00
numerics [NFC][libcxx] Check def of __LONG_DOUBLE_IEEE128__ 2022-06-14 13:41:31 -04:00
ranges [libc++] fix views::all hard error on lvalue move only views instead of SFINAE 2022-06-22 09:50:16 +01:00
re [libc++] Granularize <iterator> includes 2022-06-10 22:43:57 +02:00
strings [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
thread [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
time [runtimes] Rename various libcpp-has-no-XYZ Lit features to just no-XYZ 2022-05-27 15:24:45 -04:00
utilities [libc++] Complete the implementation of N4190 2022-06-22 10:13:03 +02:00
pstl