|
1 |
| -diff --git a/library/alloc/src/alloc/tests.rs b/library/alloc/src/alloc/tests.rs |
2 |
| -index b2f0194599b..1a5938fd34c 100644 |
3 |
| ---- a/library/alloc/src/alloc/tests.rs |
4 |
| -+++ b/library/alloc/src/alloc/tests.rs |
5 |
| -@@ -22,7 +22,6 @@ fn allocate_zeroed() { |
6 |
| - } |
7 |
| - |
8 |
| - #[bench] |
9 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
10 |
| - fn alloc_owned_small(b: &mut Bencher) { |
11 |
| - b.iter(|| { |
12 |
| - let _: Box<_> = Box::new(10); |
13 |
| -diff --git a/library/alloc/src/collections/btree/node/tests.rs b/library/alloc/src/collections/btree/node/tests.rs |
14 |
| -index aadb0dc9c40..64bce0ff8c0 100644 |
15 |
| ---- a/library/alloc/src/collections/btree/node/tests.rs |
16 |
| -+++ b/library/alloc/src/collections/btree/node/tests.rs |
17 |
| -@@ -94,6 +94,7 @@ fn test_partial_eq() { |
18 |
| - |
19 |
| - #[test] |
20 |
| - #[cfg(target_arch = "x86_64")] |
21 |
| -+#[cfg_attr(miri, ignore)] // We'd like to run Miri with layout randomization |
22 |
| - fn test_sizes() { |
23 |
| - assert_eq!(core::mem::size_of::<LeafNode<(), ()>>(), 16); |
24 |
| - assert_eq!(core::mem::size_of::<LeafNode<i64, i64>>(), 16 + CAPACITY * 2 * 8); |
25 |
| -diff --git a/library/alloc/src/collections/vec_deque/tests.rs b/library/alloc/src/collections/vec_deque/tests.rs |
26 |
| -index 1f2daef213c..a103531a20f 100644 |
27 |
| ---- a/library/alloc/src/collections/vec_deque/tests.rs |
28 |
| -+++ b/library/alloc/src/collections/vec_deque/tests.rs |
29 |
| -@@ -3,7 +3,6 @@ |
30 |
| - use super::*; |
31 |
| - |
32 |
| - #[bench] |
33 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
34 |
| - fn bench_push_back_100(b: &mut test::Bencher) { |
35 |
| - let mut deq = VecDeque::with_capacity(101); |
36 |
| - b.iter(|| { |
37 |
| -@@ -16,7 +15,6 @@ fn bench_push_back_100(b: &mut test::Bencher) { |
38 |
| - } |
39 |
| - |
40 |
| - #[bench] |
41 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
42 |
| - fn bench_push_front_100(b: &mut test::Bencher) { |
43 |
| - let mut deq = VecDeque::with_capacity(101); |
44 |
| - b.iter(|| { |
45 |
| -@@ -29,12 +27,15 @@ fn bench_push_front_100(b: &mut test::Bencher) { |
46 |
| - } |
47 |
| - |
48 |
| - #[bench] |
49 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
50 |
| - fn bench_pop_back_100(b: &mut test::Bencher) { |
51 |
| -- let mut deq = VecDeque::<i32>::with_capacity(101); |
52 |
| -+ let size = 100; |
53 |
| -+ let mut deq = VecDeque::<i32>::with_capacity(size+1); |
54 |
| -+ // We'll mess with private state to pretend like `deq` is filled. |
55 |
| -+ // Make sure the buffer is initialized so that we don't read uninit memory. |
56 |
| -+ unsafe { deq.ptr().write_bytes(0u8, size+1) }; |
57 |
| - |
58 |
| - b.iter(|| { |
59 |
| -- deq.head = 100; |
60 |
| -+ deq.head = size; |
61 |
| - deq.tail = 0; |
62 |
| - while !deq.is_empty() { |
63 |
| - test::black_box(deq.pop_back()); |
64 |
| -@@ -43,9 +44,9 @@ fn bench_pop_back_100(b: &mut test::Bencher) { |
65 |
| - } |
66 |
| - |
67 |
| - #[bench] |
68 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
69 |
| - fn bench_retain_whole_10000(b: &mut test::Bencher) { |
70 |
| -- let v = (1..100000).collect::<VecDeque<u32>>(); |
71 |
| -+ let size = if cfg!(miri) { 1000 } else { 100000 }; |
72 |
| -+ let v = (1..size).collect::<VecDeque<u32>>(); |
73 |
| - |
74 |
| - b.iter(|| { |
75 |
| - let mut v = v.clone(); |
76 |
| -@@ -54,9 +55,9 @@ fn bench_retain_whole_10000(b: &mut test::Bencher) { |
77 |
| - } |
78 |
| - |
79 |
| - #[bench] |
80 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
81 |
| - fn bench_retain_odd_10000(b: &mut test::Bencher) { |
82 |
| -- let v = (1..100000).collect::<VecDeque<u32>>(); |
83 |
| -+ let size = if cfg!(miri) { 1000 } else { 100000 }; |
84 |
| -+ let v = (1..size).collect::<VecDeque<u32>>(); |
85 |
| - |
86 |
| - b.iter(|| { |
87 |
| - let mut v = v.clone(); |
88 |
| -@@ -65,23 +66,26 @@ fn bench_retain_odd_10000(b: &mut test::Bencher) { |
89 |
| - } |
90 |
| - |
91 |
| - #[bench] |
92 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
93 |
| - fn bench_retain_half_10000(b: &mut test::Bencher) { |
94 |
| -- let v = (1..100000).collect::<VecDeque<u32>>(); |
95 |
| -+ let size = if cfg!(miri) { 1000 } else { 100000 }; |
96 |
| -+ let v = (1..size).collect::<VecDeque<u32>>(); |
97 |
| - |
98 |
| - b.iter(|| { |
99 |
| - let mut v = v.clone(); |
100 |
| -- v.retain(|x| *x > 50000) |
101 |
| -+ v.retain(|x| *x > size/2) |
102 |
| - }) |
103 |
| - } |
104 |
| - |
105 |
| - #[bench] |
106 |
| --#[cfg_attr(miri, ignore)] // isolated Miri does not support benchmarks |
107 |
| - fn bench_pop_front_100(b: &mut test::Bencher) { |
108 |
| -- let mut deq = VecDeque::<i32>::with_capacity(101); |
109 |
| -+ let size = 100; |
110 |
| -+ let mut deq = VecDeque::<i32>::with_capacity(size+1); |
111 |
| -+ // We'll mess with private state to pretend like `deq` is filled. |
112 |
| -+ // Make sure the buffer is initialized so that we don't read uninit memory. |
113 |
| -+ unsafe { deq.ptr().write_bytes(0u8, size+1) }; |
114 |
| - |
115 |
| - b.iter(|| { |
116 |
| -- deq.head = 100; |
117 |
| -+ deq.head = size; |
118 |
| - deq.tail = 0; |
119 |
| - while !deq.is_empty() { |
120 |
| - test::black_box(deq.pop_front()); |
0 commit comments