rust/tests
Matthias Krüger 81cc29a425
Rollup merge of #145354 - cache-proc-derive-macros, r=petrochenkov
Cache derive proc macro expansion with incremental query

This is a revival of https://github.com/rust-lang/rust/pull/129102, originally implemented by @futile. Since it looks like they are not active currently, I'd like to push this work forward.

The first commit is squashed and rebased work from the original PR, with author attribution to futile. The rest of the commits are some additional comments that I created mostly for myself to understand what happens here. I also did some cleanups based on Vadim's review comments on the original PR, plus I refactored the TLS access a bit using `scoped_tls`.

The biggest issue, as usually, are tests... I tried using `#[rustc_clean(..., loaded_from_disk = "derive_macro_expansion")]`, but the problem is that since this query cannot recover the original key from its hash, and thus its fingerprintstyle is `FingerprintStyle::Opaque`, [this](2fef0a30ae/compiler/rustc_incremental/src/persist/dirty_clean.rs (L388)) crashes when I try to use `loaded_from_disk`. Any suggestions from someone who actually understands the query system would be welcome 😅

TODO: document the new unstable flag

On a no-op change re-check of `octocrab 0.49` (which has a ton of `serde` derive proc macro invocations), this saves ~0.6s out of ~6s (so a ~10% win) on my PC.

r? @petrochenkov
2026-01-16 13:57:45 +01:00
..
assembly-llvm Rollup merge of #150826 - s390x-asm-f16-vector, r=uweigand,tgross35 2026-01-13 09:01:29 +01:00
auxiliary Rollup merge of #150368 - minicore-ordering, r=workingjubilee 2026-01-11 09:56:38 +01:00
codegen-llvm Rollup merge of #150607 - dispatch-ptr-intrinsic, r=workingjubilee 2026-01-15 19:35:46 -05:00
codegen-units address review comments; fix CI 2026-01-01 19:17:11 -05:00
coverage Create place and value indices on-demand. 2025-12-14 16:33:24 +00:00
coverage-run-rustdoc
crashes Bless other tests 2026-01-07 09:33:40 +08:00
debuginfo Run dummy_span.rs test with SimplifyComparisonIntegral 2026-01-14 18:57:17 +08:00
incremental Implement incremental caching for derive macro expansions 2026-01-16 07:36:36 +01:00
mir-opt Auto merge of #151155 - Zalathar:str, r=Nadrieril 2026-01-16 06:30:36 +00:00
pretty Explicitly export core and std macros 2026-01-13 08:47:48 +01:00
run-make Rollup merge of #151036 - issue-151026, r=mati865 2026-01-14 11:05:40 +01:00
run-make-cargo tests/run-make-cargo/same-crate-name-and-macro-name: New regression test 2025-12-17 11:21:27 +01:00
rustdoc-gui Reduce rustdoc GUI flakyness, take 2 2026-01-14 22:47:53 +01:00
rustdoc-html Rollup merge of #150586 - intra-doc-assoc-alias, r=GuillaumeGomez 2026-01-14 22:29:55 +01:00
rustdoc-js Auto merge of #149370 - Zalathar:rollup-6fkk5x4, r=Zalathar 2025-11-27 07:30:25 +00:00
rustdoc-js-std Explicitly export core and std macros 2026-01-13 08:47:48 +01:00
rustdoc-json
rustdoc-ui Rollup merge of #150934 - move-doc-attr-checks, r=JonathanBrouwer 2026-01-13 09:01:31 +01:00
ui Auto merge of #151155 - Zalathar:str, r=Nadrieril 2026-01-16 06:30:36 +00:00
ui-fulldeps Rollup merge of #151096 - rm-providers-deref, r=oli-obk 2026-01-14 11:05:42 +01:00
COMPILER_TESTS.md