rust/tests/mir-opt/pre-codegen
DianQK c16c22cc9c
Simplify the canonical clone method to copy
The optimized clone method ends up as the following MIR:

```
_2 = copy ((*_1).0: i32);
_3 = copy ((*_1).1: u64);
_4 = copy ((*_1).2: [i8; 3]);
_0 = Foo { a: move _2, b: move _3, c: move _4 };
```

We can transform this to:

```
_0 = copy (*_1);
```
2024-09-14 13:30:35 +08:00
..
chained_comparison.bitand.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
chained_comparison.naive.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
chained_comparison.returning.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
chained_comparison.rs
checked_ops.checked_shl.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
checked_ops.checked_shl.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
checked_ops.rs
checked_ops.step_forward.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
checked_ops.step_forward.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
clone_as_copy.clone_as_copy.PreCodegen.after.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
clone_as_copy.enum_clone_as_copy.PreCodegen.after.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
clone_as_copy.rs Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
derived_ord.{impl#0}-partial_cmp.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07: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
issue_117368_print_invalid_constant.main.GVN.32bit.panic-abort.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-abort.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
issue_117368_print_invalid_constant.rs ignore/fix layout-sensitive tests 2024-08-31 23:56:45 +02:00
loops.filter_mapped.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
loops.int_range.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
loops.mapped.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -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 Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
mem_replace.manual_replace.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
mem_replace.mem_replace.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
mem_replace.mem_replace.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
mem_replace.rs
no_inlined_clone.{impl#0}-clone.PreCodegen.after.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
no_inlined_clone.rs
optimizes_into_variable.main.GVN.32bit.panic-abort.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.GVN.32bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.GVN.64bit.panic-abort.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.GVN.64bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
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 Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-abort.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-unwind.diff Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
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
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
ptr_offset.rs
range_iter.forward_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
range_iter.forward_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
range_iter.inclusive_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
range_iter.inclusive_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
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 Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
range_iter.range_iter_next.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
range_iter.rs
README.md
simple_option_map.ezmap.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
simple_option_map.rs
slice_filter.rs
slice_filter.variant_a-{closure#0}.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_filter.variant_b-{closure#0}.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.rs Update mir-opt filechecks 2024-08-18 15:52:23 -07:00
slice_index.slice_get_mut_usize.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_get_mut_usize.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_get_unchecked_mut_range.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_get_unchecked_mut_range.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -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 Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_index_usize.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.range_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.range_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.rs
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-abort.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-abort.mir
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-unwind.mir
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 Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
spans.outer.PreCodegen.after.panic-unwind.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
spans.rs
try_identity.new.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
try_identity.old.PreCodegen.after.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
try_identity.rs
vec_deref.rs
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-abort.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-unwind.mir Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00

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.