about summary refs log tree commit diff
path: root/src/libstd/path.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2017-06-28 14:33:00 +0000
committerbors <bors@rust-lang.org>2017-06-28 14:33:00 +0000
commit47faf1d51952ecd9d4c8a7325332fba34fbe00bd (patch)
tree48daed35be898e6aa9b342b3f6fb796b571c04e4 /src/libstd/path.rs
parentc16930762a4a7762b26579f7d44273d3bab4c11e (diff)
parent47fa016193a729091aef9c531df9385548ad46ab (diff)
downloadrust-47faf1d51952ecd9d4c8a7325332fba34fbe00bd.tar.gz
rust-47faf1d51952ecd9d4c8a7325332fba34fbe00bd.zip
Auto merge of #42819 - scottmcm:swap-nonoverlapping, r=sfackler
Reuse the mem::swap optimizations to speed up slice::rotate

This is most helpful for compound types where LLVM didn't vectorize the loop.  Highlight: bench slice::rotate_medium_by727_strings gets 38% faster.

Exposes the swapping logic from PR https://github.com/rust-lang/rust/pull/40454 as `pub unsafe fn ptr::swap_nonoverlapping` under library feature `swap_nonoverlapping` https://github.com/rust-lang/rust/issues/42818.

(The new method seemed plausible, and was the simplest way to share the logic.  I'm not attached to it, though, so let me know if a different way would be better.)
Diffstat (limited to 'src/libstd/path.rs')
0 files changed, 0 insertions, 0 deletions