aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
diff options
context:
space:
mode:
authorPeng Liu <winner245@hotmail.com>2025-02-19 11:36:45 -0500
committerGitHub <noreply@github.com>2025-02-19 11:36:45 -0500
commitab3d793982acb946afc2028ca41304913879c6c9 (patch)
tree0e2400808108a5cc3ac2df709d25fb9627f87c8d /clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
parent70e693c77f0044643f3a301a0b7bc334a6e558c9 (diff)
downloadllvm-ab3d793982acb946afc2028ca41304913879c6c9.zip
llvm-ab3d793982acb946afc2028ca41304913879c6c9.tar.gz
llvm-ab3d793982acb946afc2028ca41304913879c6c9.tar.bz2
[libc++] Optimize ranges::move{,_backward} for vector<bool>::iterator (#121109)
As a follow-up to #121013 (which optimized `ranges::copy`) and #121026 (which optimized `ranges::copy_backward`), this PR enhances the performance of `std::ranges::{move, move_backward}` for `vector<bool>::iterator`, addressing a subtask outlined in issue #64038. The optimizations bring performance improvements analogous to those achieved for the `{copy, copy_backward}` algorithms: up to 2000x for aligned moves and 60x for unaligned moves. Moreover, comprehensive tests covering up to 4 storage words (256 bytes) with odd and even bit sizes are provided, which validate the proposed optimizations in this patch.
Diffstat (limited to 'clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions