rust/library
Dylan DPC 176a89f496
Rollup merge of #103689 - saethlin:libtest-startup, r=thomcc
Do fewer passes and generally be more efficient when filtering tests

Follow-on of the work I started with this PR: https://github.com/rust-lang/rust/pull/99939

Basically, the startup code for libtest is really inefficient, but that's not usually a problem because it is distributed in release and workloads are small. But under Miri which can be 100x slower than a debug build, these inefficiencies explode.

Most of the diff here is making test filtering single-pass. There are a few other small optimizations as well, but they are more straightforward.

With this PR, the startup time of the `iced` tests with `--features=code_asm,mvex` drops from 17 to 2 minutes (I think Miri has gotten slower under this workload since #99939). The easiest way to try this out is to set `MIRI_LIB_SRC` to a checkout of this branch when running `cargo +nightly miri test --features=code_asm,mvex`.

r? `@thomcc`
2022-10-30 11:50:27 +05:30
..
alloc ptr::eq: clarify that comparing dyn Trait is fragile 2022-10-26 11:15:14 +02:00
backtrace@07872f28cd
core Rollup merge of #103715 - tshepang:consistency, r=Dylan-DPC 2022-10-30 00:09:25 +02:00
panic_abort
panic_unwind Fix alloc size 2022-10-23 20:30:16 +01:00
portable-simd
proc_macro Stabilize proc_macro::Span::source_text 2022-10-18 17:13:41 +02:00
profiler_builtins
rtstartup
rustc-std-workspace-alloc
rustc-std-workspace-core
rustc-std-workspace-std
std fix typo in hashmap and hashset try_reserve method 2022-10-29 11:01:06 +02:00
stdarch@790411f93c
test Do fewer passes and generally be more efficient when filtering tests 2022-10-27 21:34:56 -04:00
unwind