rust/compiler
Nicholas Nethercote 6f228e3420 Inline before merging CGUs.
Because CGU merging relies on CGU sizes, but the CGU sizes before
inlining aren't accurate.

This requires tweaking how the sizes are updated during merging: if CGU
A and B both have an inlined function F, then `size(A + B)` will be a
little less than `size(A) + size(B)`, because `A + B` will only have one
copy of F. Also, the minimum CGU size is increased because it now has to
account for inlined functions.

This change doesn't have much effect on compile perf, but it makes
follow-on changes that involve more sophisticated reasoning about CGU
sizes much easier.
2023-06-22 08:10:29 +10:00
..
rustc
rustc_abi Auto merge of #112062 - lukas-code:unsized-layout, r=wesleywiser 2023-06-13 22:34:59 +00:00
rustc_apfloat
rustc_arena Extend unused_must_use to cover block exprs 2023-06-15 17:59:13 +08:00
rustc_ast Syntatically accept become expressions 2023-06-19 12:54:34 +00:00
rustc_ast_lowering Syntatically accept become expressions 2023-06-19 12:54:34 +00:00
rustc_ast_passes Syntatically accept become expressions 2023-06-19 12:54:34 +00:00
rustc_ast_pretty Syntatically accept become expressions 2023-06-19 12:54:34 +00:00
rustc_attr Ensure Fluent messages are in alphabetical order 2023-05-25 23:49:35 +00:00
rustc_baked_icu_data Regen baked data 2023-05-02 10:45:16 -07:00
rustc_borrowck Rollup merge of #112772 - compiler-errors:clauses-1, r=lcnr 2023-06-21 07:37:01 +02:00
rustc_builtin_macros Rollup merge of #112790 - WaffleLapkin:syntactically, r=Nilstrieb 2023-06-21 07:37:02 +02:00
rustc_codegen_cranelift Rollup merge of #112232 - fee1-dead-contrib:match-eq-const-msg, r=b-naber 2023-06-19 17:53:33 -07:00
rustc_codegen_gcc Rollup merge of #112499 - tgross35:py-ruff-fixes, r=Mark-Simulacrum 2023-06-19 17:53:34 -07:00
rustc_codegen_llvm Store generator field names in GeneratorLayout. 2023-06-19 16:50:52 +00:00
rustc_codegen_ssa Rollup merge of #112830 - nnethercote:more-codegen-cleanups, r=oli-obk 2023-06-21 07:37:03 +02:00
rustc_const_eval address most easy comments 2023-06-20 20:55:31 +08:00
rustc_data_structures Make closure_saved_names_of_captured_variables a query. 2023-06-19 16:50:52 +00:00
rustc_driver fix spelling error 2023-06-05 16:01:09 +02:00
rustc_driver_impl Remove Queries::ongoing_codegen. 2023-06-21 11:29:45 +10:00
rustc_error_codes Implement custom diagnostic for ConstParamTy 2023-06-01 18:21:42 +00:00
rustc_error_messages Use translatable diagnostics in rustc_const_eval 2023-06-01 14:45:18 +00:00
rustc_errors s/drain_filter/extract_if/ for Vec, Btree{Map,Set} and LinkedList 2023-06-14 09:28:54 +02:00
rustc_expand Fix msg passed to span_bug 2023-06-21 16:54:54 +05:30
rustc_feature Rollup merge of #112853 - GuillaumeGomez:type_alias_type, r=oli-obk 2023-06-21 15:45:16 +02:00
rustc_fluent_macro Remove unused synstructure dep 2023-04-22 22:03:33 +01:00
rustc_fs_util Add try_canonicalize to rustc_fs_util and use it over fs::canonicalize 2023-03-16 21:50:23 +01:00
rustc_graphviz enable rust_2018_idioms for doctests 2023-05-07 00:12:29 +03:00
rustc_hir Auto merge of #100036 - DrMeepster:box_free_free_box, r=oli-obk 2023-06-17 16:10:57 +00:00
rustc_hir_analysis Rollup merge of #112853 - GuillaumeGomez:type_alias_type, r=oli-obk 2023-06-21 15:45:16 +02:00
rustc_hir_pretty Separate AnonConst from ConstBlock in HIR. 2023-06-02 21:25:18 +00:00
rustc_hir_typeck Rollup merge of #112772 - compiler-errors:clauses-1, r=lcnr 2023-06-21 07:37:01 +02:00
rustc_incremental Removed stable/unstable sort arg from into_sorted_stable_ord, fixed a few misc issues, added collect to UnordItems 2023-06-08 00:38:50 -04:00
rustc_index Auto merge of #111925 - Manishearth:rollup-z6z6l2v, r=Manishearth 2023-05-25 00:33:43 +00:00
rustc_infer Rollup merge of #112772 - compiler-errors:clauses-1, r=lcnr 2023-06-21 07:37:01 +02:00
rustc_interface Remove Queries::ongoing_codegen. 2023-06-21 11:29:45 +10:00
rustc_lexer Don't try to eat non-existent decimal digits. 2023-05-15 18:33:12 +10:00
rustc_lint s/Clause/ClauseKind 2023-06-19 14:57:42 +00:00
rustc_lint_defs Private-in-public lints implementation 2023-06-12 01:02:19 +03:00
rustc_llvm Add SafeStack support to rustc 2023-05-26 15:18:54 -04:00
rustc_log Stabilize IsTerminal 2023-04-10 17:24:23 +09:00
rustc_macros Use translatable diagnostics in rustc_const_eval 2023-06-01 14:45:18 +00:00
rustc_metadata Rollup merge of #112772 - compiler-errors:clauses-1, r=lcnr 2023-06-21 07:37:01 +02:00
rustc_middle Inline before merging CGUs. 2023-06-22 08:10:29 +10:00
rustc_mir_build Rollup merge of #112759 - cjgillot:closure-names, r=oli-obk 2023-06-21 07:37:01 +02:00
rustc_mir_dataflow merge BorrowKind::Unique into BorrowKind::Mut 2023-06-20 20:55:31 +08:00
rustc_mir_transform Auto merge of #112834 - oli-obk:mir_opts_considered_unsound, r=cjgillot 2023-06-21 10:53:30 +00:00
rustc_monomorphize Inline before merging CGUs. 2023-06-22 08:10:29 +10:00
rustc_parse Syntatically accept become expressions 2023-06-19 12:54:34 +00:00
rustc_parse_format Fix typos in compiler 2023-04-10 22:02:52 +02:00
rustc_passes Rollup merge of #112790 - WaffleLapkin:syntactically, r=Nilstrieb 2023-06-21 07:37:02 +02:00
rustc_plugin_impl Add rustc_fluent_macro to decouple fluent from rustc_macros 2023-04-18 18:56:22 +00:00
rustc_privacy Fully fledged Clause type 2023-06-19 15:46:08 +00:00
rustc_query_impl Make queries traceable again 2023-06-21 10:25:25 +00:00
rustc_query_system Rollup merge of #112333 - Zoxc:try_collect_active_jobs-deadlock, r=cjgillot 2023-06-08 12:36:18 +02:00
rustc_resolve Revert "Rollup merge of #112758 - bvanjoi:clean-up-resolve, r=petrochenkov" 2023-06-20 22:47:50 +08:00
rustc_serialize Fix the FileEncoder buffer size. 2023-05-15 08:59:11 +10:00
rustc_session add -Z flag 2023-06-19 09:01:37 +01:00
rustc_smir Rollup merge of #112232 - fee1-dead-contrib:match-eq-const-msg, r=b-naber 2023-06-19 17:53:33 -07:00
rustc_span Rollup merge of #112853 - GuillaumeGomez:type_alias_type, r=oli-obk 2023-06-21 15:45:16 +02:00
rustc_symbol_mangling Add AliasKind::Weak for type aliases. 2023-06-16 19:39:48 +00:00
rustc_target loongarch64-none*: Remove environment component from llvm target 2023-06-13 20:24:22 +08:00
rustc_trait_selection Rollup merge of #112772 - compiler-errors:clauses-1, r=lcnr 2023-06-21 07:37:01 +02:00
rustc_traits s/Clause/ClauseKind 2023-06-19 14:57:42 +00:00
rustc_transmute Safe Transmute: Refactor error handling and Answer type 2023-06-12 16:56:21 -07:00
rustc_ty_utils Rollup merge of #112759 - cjgillot:closure-names, r=oli-obk 2023-06-21 07:37:01 +02:00
rustc_type_ir Add AliasKind::Weak for type aliases. 2023-06-16 19:39:48 +00:00