rust/compiler
bors 9aa232ecc7 Auto merge of #120405 - cjgillot:gvn-pointer, r=oli-obk
Fold pointer operations in GVN

This PR proposes 2 combinations of cast operations in MIR GVN:
- a chain of `PtrToPtr` or `MutToConstPointer` casts can be folded together into a single `PtrToPtr` cast;
- we attempt to evaluate more ptr ops when there is no provenance.

In particular, this allows to read from static slices.

This is not yet sufficient to see through slice operations that use `PtrComponents` (because that's a union), but still a step forward.

r? `@ghost`
2024-02-11 04:24:40 +00:00
..
rustc
rustc_abi Fix rustc_abi build on stable 2024-01-16 21:15:31 +01:00
rustc_arena Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_ast Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_ast_lowering Remove unused fn 2024-02-10 03:52:13 +00:00
rustc_ast_passes Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_ast_pretty Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_attr Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_baked_icu_data
rustc_borrowck Auto merge of #120843 - matthiaskrgr:rollup-med37z5, r=matthiaskrgr 2024-02-09 15:34:48 +00:00
rustc_builtin_macros Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_codegen_cranelift Auto merge of #120843 - matthiaskrgr:rollup-med37z5, r=matthiaskrgr 2024-02-09 15:34:48 +00:00
rustc_codegen_gcc Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_codegen_llvm Remove unnecessary #![feature(min_specialization)] 2024-02-10 12:26:14 +11:00
rustc_codegen_ssa Rollup merge of #120865 - saethlin:missing-o-files, r=nnethercote 2024-02-10 13:12:31 +01:00
rustc_const_eval Auto merge of #120405 - cjgillot:gvn-pointer, r=oli-obk 2024-02-11 04:24:40 +00:00
rustc_data_structures Rollup merge of #120846 - petrochenkov:jobs, r=oli-obk 2024-02-10 00:58:38 +01:00
rustc_driver
rustc_driver_impl Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_error_codes unstably allow constants to refer to statics and read from immutable statics 2024-02-10 16:12:55 +01:00
rustc_error_messages Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_errors Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_expand Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_feature unstably allow constants to refer to statics and read from immutable statics 2024-02-10 16:12:55 +01:00
rustc_fluent_macro Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_fs_util Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_graphviz Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_hir Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_hir_analysis Rollup merge of #120870 - Zalathar:allow-min-spec, r=oli-obk 2024-02-10 13:12:31 +01:00
rustc_hir_pretty Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_hir_typeck Rollup merge of #120870 - Zalathar:allow-min-spec, r=oli-obk 2024-02-10 13:12:31 +01:00
rustc_incremental Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_index Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_index_macros Step all bootstrap cfgs forward 2024-02-08 07:44:34 -05:00
rustc_infer Rollup merge of #120870 - Zalathar:allow-min-spec, r=oli-obk 2024-02-10 13:12:31 +01:00
rustc_interface Rollup merge of #120828 - nnethercote:fix-stash-steal, r=oli-obk 2024-02-09 14:41:52 +01:00
rustc_lexer Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_lint Rollup merge of #120866 - Zalathar:no-min-spec, r=compiler-errors 2024-02-10 13:12:31 +01:00
rustc_lint_defs Remove unnecessary #![feature(min_specialization)] 2024-02-10 12:26:14 +11:00
rustc_llvm Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_log Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_macros Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_metadata Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_middle detect consts that reference extern statics 2024-02-10 16:13:48 +01:00
rustc_mir_build Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_mir_dataflow Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_mir_transform Auto merge of #120405 - cjgillot:gvn-pointer, r=oli-obk 2024-02-11 04:24:40 +00:00
rustc_monomorphize Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_next_trait_solver Add CoroutineClosure to TyKind, AggregateKind, UpvarArgs 2024-02-06 02:22:58 +00:00
rustc_parse Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_parse_format Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_passes Remove unnecessary #![feature(min_specialization)] 2024-02-10 12:26:14 +11:00
rustc_pattern_analysis Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_privacy Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_query_impl Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_query_system Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_resolve Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_serialize Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_session Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_smir Add a new debug_assertions instrinsic (compiler) 2024-02-08 11:49:08 -05:00
rustc_span unstably allow constants to refer to statics and read from immutable statics 2024-02-10 16:12:55 +01:00
rustc_symbol_mangling Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_target Remove unnecessary min_specialization after bootstrap 2024-02-10 18:15:11 +11:00
rustc_trait_selection Rollup merge of #120870 - Zalathar:allow-min-spec, r=oli-obk 2024-02-10 13:12:31 +01:00
rustc_traits Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_transmute Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_ty_utils Auto merge of #120712 - compiler-errors:async-closures-harmonize, r=oli-obk 2024-02-10 07:15:15 +00:00
rustc_type_ir Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
stable_mir Add a new debug_assertions instrinsic (compiler) 2024-02-08 11:49:08 -05:00