diff options
author | Nikolas Klauser <nikolasklauser@berlin.de> | 2022-06-23 12:23:41 +0200 |
---|---|---|
committer | Nikolas Klauser <nikolasklauser@berlin.de> | 2022-06-23 13:52:49 +0200 |
commit | 2c3bbac0c7154cd6a286e0e05aa62308836a3655 (patch) | |
tree | 82d2545f794f194773cc91fd406868e14bf816c8 /llvm/lib/CodeGen/MachineBasicBlock.cpp | |
parent | ea3874437274e5d37e51819dd0109a66b087c251 (diff) | |
download | llvm-2c3bbac0c7154cd6a286e0e05aa62308836a3655.zip llvm-2c3bbac0c7154cd6a286e0e05aa62308836a3655.tar.gz llvm-2c3bbac0c7154cd6a286e0e05aa62308836a3655.tar.bz2 |
[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
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
0 files changed, 0 insertions, 0 deletions