rust/tests/mir-opt/pre-codegen
Scott McMurray 23c8ed14c9 Avoid MIR bloat in inlining
In 126578 we ended up with more binary size increases than expected.

This change attempts to avoid inlining large things into small things, to avoid that kind of increase, in cases when top-down inlining will still be able to do that inlining later.
2024-07-01 05:17:13 -07:00
..
chained_comparison.bitand.PreCodegen.after.mir
chained_comparison.naive.PreCodegen.after.mir
chained_comparison.returning.PreCodegen.after.mir
chained_comparison.rs
checked_ops.checked_shl.PreCodegen.after.panic-abort.mir
checked_ops.checked_shl.PreCodegen.after.panic-unwind.mir
checked_ops.rs
checked_ops.step_forward.PreCodegen.after.panic-abort.mir Also get add nuw from uN::checked_add 2024-06-23 13:29:06 -07:00
checked_ops.step_forward.PreCodegen.after.panic-unwind.mir Also get add nuw from uN::checked_add 2024-06-23 13:29:06 -07:00
derived_ord.{impl#0}-partial_cmp.PreCodegen.after.mir Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" 2024-05-31 00:22:40 +00:00
derived_ord.rs
duplicate_switch_targets.rs
duplicate_switch_targets.ub_if_b.PreCodegen.after.mir
intrinsics.f_u64.PreCodegen.after.mir
intrinsics.f_unit.PreCodegen.after.mir
intrinsics.rs rustfmt tests/mir-opt. 2024-06-03 14:17:16 +10:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-abort.diff Add SingleUseConsts mir-opt pass 2024-06-10 00:06:02 -07:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-unwind.diff
issue_117368_print_invalid_constant.main.GVN.64bit.panic-abort.diff Add SingleUseConsts mir-opt pass 2024-06-10 00:06:02 -07:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-unwind.diff
issue_117368_print_invalid_constant.rs
loops.filter_mapped.PreCodegen.after.mir
loops.int_range.PreCodegen.after.mir
loops.mapped.PreCodegen.after.mir Give inlining bonuses to things that optimize out 2024-06-19 21:35:37 -07:00
loops.rs
loops.vec_move.PreCodegen.after.mir
matches_macro.issue_77355_opt.PreCodegen.after.mir
matches_macro.rs
mem_replace.manual_replace.PreCodegen.after.panic-abort.mir
mem_replace.manual_replace.PreCodegen.after.panic-unwind.mir
mem_replace.mem_replace.PreCodegen.after.panic-abort.mir
mem_replace.mem_replace.PreCodegen.after.panic-unwind.mir
mem_replace.rs
optimizes_into_variable.main.GVN.32bit.panic-abort.diff
optimizes_into_variable.main.GVN.32bit.panic-unwind.diff
optimizes_into_variable.main.GVN.64bit.panic-abort.diff
optimizes_into_variable.main.GVN.64bit.panic-unwind.diff
optimizes_into_variable.main.PreCodegen.after.32bit.panic-abort.mir
optimizes_into_variable.main.PreCodegen.after.32bit.panic-unwind.mir
optimizes_into_variable.main.PreCodegen.after.64bit.panic-abort.mir
optimizes_into_variable.main.PreCodegen.after.64bit.panic-unwind.mir
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-abort.diff
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-unwind.diff
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-abort.diff
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-unwind.diff
optimizes_into_variable.main.SimplifyLocals-final.after.32bit.panic-abort.mir
optimizes_into_variable.main.SimplifyLocals-final.after.32bit.panic-unwind.mir
optimizes_into_variable.main.SimplifyLocals-final.after.64bit.panic-abort.mir
optimizes_into_variable.main.SimplifyLocals-final.after.64bit.panic-unwind.mir
optimizes_into_variable.rs rustfmt tests/mir-opt. 2024-06-03 14:17:16 +10:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-abort.mir Enable GVN for AggregateKind::RawPtr & UnOp::PtrMetadata 2024-06-06 00:25:58 -07:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-unwind.mir Enable GVN for AggregateKind::RawPtr & UnOp::PtrMetadata 2024-06-06 00:25:58 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-abort.mir Enable GVN for AggregateKind::RawPtr & UnOp::PtrMetadata 2024-06-06 00:25:58 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-unwind.mir Enable GVN for AggregateKind::RawPtr & UnOp::PtrMetadata 2024-06-06 00:25:58 -07:00
ptr_offset.rs
range_iter.forward_loop.PreCodegen.after.panic-abort.mir Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" 2024-05-31 00:22:40 +00:00
range_iter.forward_loop.PreCodegen.after.panic-unwind.mir Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" 2024-05-31 00:22:40 +00:00
range_iter.inclusive_loop.PreCodegen.after.panic-abort.mir
range_iter.inclusive_loop.PreCodegen.after.panic-unwind.mir
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-abort.mir
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-unwind.mir
range_iter.range_iter_next.PreCodegen.after.panic-abort.mir
range_iter.range_iter_next.PreCodegen.after.panic-unwind.mir
range_iter.rs
README.md
simple_option_map.ezmap.PreCodegen.after.mir
simple_option_map.rs
slice_filter.rs
slice_filter.variant_a-{closure#0}.PreCodegen.after.mir
slice_filter.variant_b-{closure#0}.PreCodegen.after.mir
slice_index.rs Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_index.slice_get_mut_usize.PreCodegen.after.panic-abort.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_index.slice_get_mut_usize.PreCodegen.after.panic-unwind.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_index.slice_get_unchecked_mut_range.PreCodegen.after.panic-abort.mir More GVN for PtrMetadata 2024-06-20 22:16:59 -07:00
slice_index.slice_get_unchecked_mut_range.PreCodegen.after.panic-unwind.mir More GVN for PtrMetadata 2024-06-20 22:16:59 -07:00
slice_index.slice_index_range.PreCodegen.after.panic-abort.mir
slice_index.slice_index_range.PreCodegen.after.panic-unwind.mir
slice_index.slice_index_usize.PreCodegen.after.panic-abort.mir
slice_index.slice_index_usize.PreCodegen.after.panic-unwind.mir
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-abort.mir Redo SliceIndex implementations 2024-06-15 17:39:25 -07:00
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-unwind.mir Redo SliceIndex implementations 2024-06-15 17:39:25 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-abort.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-unwind.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-abort.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-unwind.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.range_loop.PreCodegen.after.panic-abort.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.range_loop.PreCodegen.after.panic-unwind.mir Replace NormalizeArrayLen with GVN 2024-06-20 22:16:59 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-abort.mir Avoid MIR bloat in inlining 2024-07-01 05:17:13 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-unwind.mir Avoid MIR bloat in inlining 2024-07-01 05:17:13 -07:00
slice_iter.rs Make MIR inlining costs in build-std independent of config.toml 2024-06-23 01:48:41 -07:00
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-abort.mir GVN away PtrToPtr-then-Transmute when possible 2024-06-22 20:34:09 -07:00
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-unwind.mir GVN away PtrToPtr-then-Transmute when possible 2024-06-22 20:34:09 -07:00
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-abort.mir Avoid MIR bloat in inlining 2024-07-01 05:17:13 -07:00
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-unwind.mir Avoid MIR bloat in inlining 2024-07-01 05:17:13 -07:00
slice_iter.slice_iter_next.PreCodegen.after.panic-abort.mir
slice_iter.slice_iter_next.PreCodegen.after.panic-unwind.mir
spans.outer.PreCodegen.after.panic-abort.mir
spans.outer.PreCodegen.after.panic-unwind.mir
spans.rs
try_identity.new.PreCodegen.after.mir
try_identity.old.PreCodegen.after.mir
try_identity.rs rustfmt tests/mir-opt. 2024-06-03 14:17:16 +10:00
vec_deref.rs
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-abort.mir
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-unwind.mir

The goal of this directory is to track the quality of MIR that is given to codegen in a standard -O condiguration.

As such, feel free to --bless whatever changes you get here, so long as doing so doesn't add substantially more MIR.