1
Fork 0
rust/compiler
bors cc8da78a03 Auto merge of #127288 - lqd:typelen-cache, r=compiler-errors
cache type sizes in type-size limit visitor

This is basically https://github.com/rust-lang/rust/pull/125507#issuecomment-2206813779 as lcnr can't open the PR now.

Locally it reduces the `itertools` regression by quite a bit, to "only +50%" compared to nightly (that includes overhead from the local lack of artifact post-processing, and is just a data point to compare to the 10-20x timings without the cache).

```console
Benchmark 1: cargo +stage1 build --release
  Time (mean ± σ):      2.721 s ±  0.009 s    [User: 2.446 s, System: 0.325 s]
  Range (min … max):    2.710 s …  2.738 s    10 runs

Benchmark 2: cargo +nightly build --release
  Time (mean ± σ):      1.784 s ±  0.005 s    [User: 1.540 s, System: 0.279 s]
  Range (min … max):    1.778 s …  1.792 s    10 runs

Summary
  cargo +nightly build --release ran
    1.52 ± 0.01 times faster than cargo +stage1 build --release
```

On master, it's from 34s to the 2.7s above.

r? compiler-errors
2024-07-04 21:17:19 +00:00
..
rustc Change SIGPIPE ui from #[unix_sigpipe = "..."] to -Zon-broken-pipe=... 2024-05-02 19:48:29 +02:00
rustc_abi Rollup merge of #123043 - GoldsteinE:fix/repr-c-dead-branches, r=oli-obk 2024-07-04 18:16:22 +02:00
rustc_arena Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_ast Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_ast_ir Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_ast_lowering Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_ast_passes Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_ast_pretty Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_attr Use a dedicated type instead of a reference for the diagnostic context 2024-06-18 15:42:11 +00:00
rustc_baked_icu_data Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_borrowck Auto merge of #127326 - matthiaskrgr:rollup-kz7vd3w, r=matthiaskrgr 2024-07-04 16:37:39 +00:00
rustc_builtin_macros Rollup merge of #127283 - dingxiangfei2009:check-repr-transparent, r=davidtwco 2024-07-04 18:16:23 +02:00
rustc_codegen_cranelift Fix spans 2024-07-02 15:48:48 -04:00
rustc_codegen_gcc Fix spans 2024-07-02 15:48:48 -04:00
rustc_codegen_llvm Rollup merge of #126803 - tgross35:verbose-asm, r=Amanieu 2024-07-03 17:26:53 +02:00
rustc_codegen_ssa Auto merge of #126094 - petrochenkov:libsearch, r=michaelwoerister 2024-07-03 14:15:31 +00:00
rustc_const_eval Auto merge of #125507 - compiler-errors:type-length-limit, r=lcnr 2024-07-03 11:56:36 +00:00
rustc_data_structures Auto merge of #127226 - mat-1:optimize-siphash-round, r=nnethercote 2024-07-04 04:03:45 +00:00
rustc_driver Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_driver_impl Move codegen_and_build_linker from Queries to Linker 2024-07-01 11:00:49 +00:00
rustc_error_codes Auto merge of #126319 - workingjubilee:rollup-lendnud, r=workingjubilee 2024-06-12 11:10:50 +00:00
rustc_error_messages Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_errors Properly handle removal suggestion rendering 2024-07-04 05:04:48 +00:00
rustc_expand Shrink parser positions from usize to u32. 2024-07-02 17:03:53 +10:00
rustc_feature add rustc_dump_def_parents attribute 2024-06-30 19:31:21 +01:00
rustc_fluent_macro Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_fs_util Remove useless tidy-alphabetical markers. 2024-06-20 09:23:20 +10:00
rustc_graphviz Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_hir Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_hir_analysis Rollup merge of #127319 - oli-obk:fail2taint, r=compiler-errors 2024-07-04 18:16:26 +02:00
rustc_hir_pretty implement new effects desugaring 2024-06-28 10:57:35 +00:00
rustc_hir_typeck Rollup merge of #127319 - oli-obk:fail2taint, r=compiler-errors 2024-07-04 18:16:26 +02:00
rustc_incremental Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_index Auto merge of #127170 - bjorn3:no_specialize_index_borrowck, r=michaelwoerister 2024-07-04 14:24:43 +00:00
rustc_index_macros Remove usage of specialization from newtype_index! 2024-06-30 16:42:53 +00:00
rustc_infer Use shorter span for float literal suggestion 2024-07-04 05:19:35 +00:00
rustc_interface Rollup merge of #127184 - bjorn3:interface_refactor2, r=Nadrieril 2024-07-03 23:30:07 +02:00
rustc_lexer Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_lint Instance::resolve -> Instance::try_resolve, and other nits 2024-07-02 17:28:03 -04:00
rustc_lint_defs Ensure out_of_scope_macro_calls lint is registered 2024-07-01 00:25:25 +01:00
rustc_llvm Rename the asm-comments compiler flag to verbose-asm 2024-07-02 21:42:01 -04:00
rustc_log Bump tracing-tree and allow rendering lines again 2024-06-12 10:11:41 +00:00
rustc_macros Remove redundant argument from subdiagnostic method 2024-06-18 15:42:11 +00:00
rustc_metadata Auto merge of #120639 - fee1-dead-contrib:new-effects-desugaring, r=oli-obk 2024-06-29 20:08:10 +00:00
rustc_middle Auto merge of #127288 - lqd:typelen-cache, r=compiler-errors 2024-07-04 21:17:19 +00:00
rustc_mir_build Auto merge of #125507 - compiler-errors:type-length-limit, r=lcnr 2024-07-03 11:56:36 +00:00
rustc_mir_dataflow Auto merge of #127036 - cjgillot:sparse-state, r=oli-obk 2024-07-03 18:52:04 +00:00
rustc_mir_transform Auto merge of #127293 - ldm0:ldm_coroutine, r=saethlin 2024-07-04 06:18:55 +00:00
rustc_monomorphize Fix spans 2024-07-02 15:48:48 -04:00
rustc_next_trait_solver Rollup merge of #127145 - compiler-errors:as_lang_item, r=lcnr 2024-07-03 17:26:54 +02:00
rustc_parse Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_parse_format Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_passes Rollup merge of #127092 - compiler-errors:rtn-dots-redux, r=estebank 2024-07-03 23:30:07 +02:00
rustc_pattern_analysis Replace f16 and f128 pattern matching stubs with real implementations 2024-06-23 04:28:42 -05:00
rustc_privacy Do not ICE in privacy when type inference fails. 2024-06-17 10:09:27 +00:00
rustc_query_impl Allow tracing through item_bounds query invocations on opaques 2024-06-19 08:47:55 +00:00
rustc_query_system Auto merge of #126326 - eggyal:ununsafe-StableOrd, r=michaelwoerister 2024-06-25 15:51:35 +00:00
rustc_resolve Auto merge of #127127 - notriddle:notriddle/pulldown-cmark-0.11, r=GuillaumeGomez 2024-07-04 01:50:31 +00:00
rustc_sanitizers Split out IntoIterator and non-Iterator constructors for AliasTy/AliasTerm/TraitRef/projection 2024-06-24 11:28:21 -04:00
rustc_serialize chore: remove duplicate words 2024-07-02 11:25:31 +08:00
rustc_session Rename the asm-comments compiler flag to verbose-asm 2024-07-02 21:42:01 -04:00
rustc_smir Instance::resolve -> Instance::try_resolve, and other nits 2024-07-02 17:28:03 -04:00
rustc_span add rustc_dump_def_parents attribute 2024-06-30 19:31:21 +01:00
rustc_symbol_mangling Fix FnMut/Fn shim for coroutine-closures that capture references 2024-06-29 17:38:02 -04:00
rustc_target Use the aligned size for alloca at args when the pass mode is cast. 2024-07-02 06:33:35 +08:00
rustc_trait_selection Auto merge of #125507 - compiler-errors:type-length-limit, r=lcnr 2024-07-03 11:56:36 +00:00
rustc_traits Use tidy to sort crate attributes for all compiler crates. 2024-06-12 15:49:10 +10:00
rustc_transmute safe transmute: support non-ZST, variantful, uninhabited enums 2024-06-14 21:11:08 +00:00
rustc_ty_utils Auto merge of #125507 - compiler-errors:type-length-limit, r=lcnr 2024-07-03 11:56:36 +00:00
rustc_type_ir Auto merge of #127170 - bjorn3:no_specialize_index_borrowck, r=michaelwoerister 2024-07-04 14:24:43 +00:00
rustc_type_ir_macros Uplift TraitPredicate 2024-05-11 18:20:00 -04:00
stable_mir Add method to get all attributes on a definition 2024-06-28 13:24:41 +08:00