about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--library/core/benches/iter.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/library/core/benches/iter.rs b/library/core/benches/iter.rs
index 05fec0c4b9d..c1cec5e6d3c 100644
--- a/library/core/benches/iter.rs
+++ b/library/core/benches/iter.rs
@@ -392,6 +392,19 @@ fn bench_skip_then_zip(b: &mut Bencher) {
 }
 
 #[bench]
+fn bench_skip_trusted_random_access(b: &mut Bencher) {
+    let v: Vec<u64> = black_box(vec![42; 10000]);
+    let mut sink = [0; 10000];
+
+    b.iter(|| {
+        for (val, idx) in v.iter().skip(8).zip(0..10000) {
+            sink[idx] += val;
+        }
+        sink
+    });
+}
+
+#[bench]
 fn bench_filter_count(b: &mut Bencher) {
     b.iter(|| (0i64..1000000).map(black_box).filter(|x| x % 3 == 0).count())
 }