bors ae8ffa663c Auto merge of #111850 - the8472:external-step-by, r=scottmcm
Specialize `StepBy<Range<{integer}>>`

OLD

    iter::bench_range_step_by_fold_u16      700.00ns/iter +/- 10.00ns
    iter::bench_range_step_by_fold_usize    519.00ns/iter  +/- 6.00ns
    iter::bench_range_step_by_loop_u32      555.00ns/iter  +/- 7.00ns
    iter::bench_range_step_by_sum_reducible  37.00ns/iter  +/- 0.00ns

NEW

    iter::bench_range_step_by_fold_u16       49.00ns/iter +/- 0.00ns
    iter::bench_range_step_by_fold_usize    194.00ns/iter +/- 1.00ns
    iter::bench_range_step_by_loop_u32       98.00ns/iter +/- 0.00ns
    iter::bench_range_step_by_sum_reducible   1.00ns/iter +/- 0.00ns

NEW + `-Ctarget-cpu=x86-64-v3`

    iter::bench_range_step_by_fold_u16      22.00ns/iter +/- 0.00ns
    iter::bench_range_step_by_fold_usize    80.00ns/iter +/- 1.00ns
    iter::bench_range_step_by_loop_u32      41.00ns/iter +/- 0.00ns
    iter::bench_range_step_by_sum_reducible  1.00ns/iter +/- 0.00ns

I have only optimized for walltime of those methods, I haven't tested whether it eliminates bounds checks when indexing into slices via things like `(0..slice.len()).step_by(16)`.
2023-06-26 00:28:30 +00:00
..
2023-04-16 11:38:52 +00:00
2023-06-23 00:17:34 +02:00
2023-06-14 15:21:15 -04:00
2023-04-26 02:10:22 -04:00
2023-04-16 11:38:52 +00:00
2023-04-16 11:38:52 +00:00
2023-04-16 11:38:52 +00:00
2023-04-16 11:38:52 +00:00
2023-05-30 08:00:10 -04:00
2023-04-16 11:38:52 +00:00
2023-04-16 11:38:52 +00:00
2023-05-30 08:00:10 -04:00
2023-05-30 08:00:10 -04:00
2023-04-16 11:38:52 +00:00
2023-04-16 11:38:52 +00:00