Fix unintended regression for Freeze + Copy types · model-checking/verify-rust-std@78eaad5 (original) (raw)

File tree

1 file changed

lines changed

1 file changed

lines changed

Original file line number Diff line number Diff line change
@@ -146,7 +146,9 @@ impl<T: FreezeMarker + CopyMarker> UnstableSmallSortFreezeTypeImpl for T {
146 146 if has_efficient_in_place_swap::<T>()
147 147 && (mem::size_of::<T>() * SMALL_SORT_NETWORK_SCRATCH_LEN) <= MAX_STACK_ARRAY_SIZE
148 148 {
149 -SMALL_SORT_NETWORK_SCRATCH_LEN
149 +SMALL_SORT_NETWORK_THRESHOLD
150 +} else if (mem::size_of::<T>() * SMALL_SORT_GENERAL_SCRATCH_LEN) <= MAX_STACK_ARRAY_SIZE {
151 +SMALL_SORT_GENERAL_THRESHOLD
150 152 } else {
151 153 SMALL_SORT_FALLBACK_THRESHOLD
152 154 }
@@ -161,6 +163,8 @@ impl<T: FreezeMarker + CopyMarker> UnstableSmallSortFreezeTypeImpl for T {
161 163 && (mem::size_of::<T>() * SMALL_SORT_NETWORK_SCRATCH_LEN) <= MAX_STACK_ARRAY_SIZE
162 164 {
163 165 small_sort_network(v, is_less);
166 +} else if (mem::size_of::<T>() * SMALL_SORT_GENERAL_SCRATCH_LEN) <= MAX_STACK_ARRAY_SIZE {
167 +small_sort_general(v, is_less);
164 168 } else {
165 169 small_sort_fallback(v, is_less);
166 170 }