
As reported in https://reviews.llvm.org/D151953#4472195, the std::move algorithm (and various other functions that relied on it) stopped working after starting to use `__constexpr_memmove` in its implementation. This patch fixes the underlying issue in `__constexpr_memmove` and adds tests for various related algorithms and functions that were not exercising trivial move-only types. Differential Revision: https://reviews.llvm.org/D154613