diff options
| author | kadmin <julianknodt@gmail.com> | 2020-11-18 22:59:47 +0000 |
|---|---|---|
| committer | kadmin <julianknodt@gmail.com> | 2020-11-22 22:22:03 +0000 |
| commit | a9915581d7cb73e7c8fb8193f48dbef36a7d09ac (patch) | |
| tree | 1ee97f767f67417a36f9d3789a3bb555ec9a7b8a /src/test/codegen | |
| parent | a1a13b2bc4fa6370b9501135d97c5fe0bc401894 (diff) | |
| download | rust-a9915581d7cb73e7c8fb8193f48dbef36a7d09ac.tar.gz rust-a9915581d7cb73e7c8fb8193f48dbef36a7d09ac.zip | |
Change slice::to_vec to not use extend_from_slice
This also required adding a loop guard in case clone panics Add specialization for copy There is a better version for copy, so I've added specialization for that function and hopefully that should speed it up even more. Switch FromIter<slice::Iter> to use `to_vec` Test different unrolling version for to_vec Revert to impl From benchmarking, it appears this version is faster
Diffstat (limited to 'src/test/codegen')
| -rw-r--r-- | src/test/codegen/to_vec.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/test/codegen/to_vec.rs b/src/test/codegen/to_vec.rs new file mode 100644 index 00000000000..60dc4efcb62 --- /dev/null +++ b/src/test/codegen/to_vec.rs @@ -0,0 +1,10 @@ +// compile-flags: -O + +#![crate_type = "lib"] + +// CHECK-LABEL: @copy_to_vec +#[no_mangle] +fn copy_to_vec(s: &[u64]) -> Vec<u64> { + s.to_vec() + // CHECK: call void @llvm.memcpy +} |
