rust/tests/mir-opt/pre-codegen
Scott McMurray 0cc14b688d transmute should also assume non-null pointers
Previously it only did integer-ABI things, but this way it does data pointers too.  That gives more information in general to the backend, and allows slightly simplifying one of the helpers in slice iterators.
2025-02-12 23:01:27 -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 [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
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 Make checked ops emit *unchecked* LLVM operations where feasible 2024-04-18 18:11:21 -07:00
checked_ops.step_forward.PreCodegen.after.panic-abort.mir Export likely(), unlikely() and cold_path() in std::hint 2025-01-15 21:42:47 +01:00
checked_ops.step_forward.PreCodegen.after.panic-unwind.mir Export likely(), unlikely() and cold_path() in std::hint 2025-01-15 21:42:47 +01: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 Mark simplify_aggregate_to_copy mir-opt as unsound 2024-10-31 13:48:06 +08:00
deref_nested_borrows.rs comment out the old tests instead of adjusting them 2024-11-25 20:39:45 +01:00
deref_nested_borrows.src.GVN.panic-abort.diff Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
deref_nested_borrows.src.GVN.panic-unwind.diff Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
deref_nested_borrows.src.PreCodegen.after.panic-abort.mir Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
deref_nested_borrows.src.PreCodegen.after.panic-unwind.mir Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
derived_ord.rs Add a MIR pre-codegen test for derived PartialOrd 2024-03-23 23:06:44 -07:00
derived_ord.{impl#0}-partial_cmp.PreCodegen.after.mir Bless *all* the mir-opt tests 2024-08-18 16:07:33 -07:00
duplicate_switch_targets.rs Enable more mir-opt tests in debug builds 2024-03-22 20:14:39 -04:00
duplicate_switch_targets.ub_if_b.PreCodegen.after.mir Remove MIR unsafe check 2024-04-03 08:50:12 +00:00
intrinsics.f_u64.PreCodegen.after.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
intrinsics.f_unit.PreCodegen.after.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
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 Update NonZero and NonNull to not field-project (per MCP807) 2024-12-03 11:13:34 -08:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-unwind.diff Update NonZero and NonNull to not field-project (per MCP807) 2024-12-03 11:13:34 -08:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-abort.diff Update NonZero and NonNull to not field-project (per MCP807) 2024-12-03 11:13:34 -08:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-unwind.diff Update NonZero and NonNull to not field-project (per MCP807) 2024-12-03 11:13:34 -08: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 Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04:00
loops.vec_move.PreCodegen.after.mir Perform instsimplify before inline to eliminate some trivial calls 2024-07-29 18:14:35 +08:00
matches_macro.issue_77355_opt.PreCodegen.after.mir Remove ConstGoto and SeparateConstSwitch. 2024-02-09 21:13:53 +00:00
matches_macro.rs Remove ConstGoto and SeparateConstSwitch. 2024-02-09 21:13:53 +00:00
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 tests: ignore-debug -> ignore-std-debug-assertions 2024-10-31 17:33:42 +08:00
no_inlined_clone.rs Perform instsimplify before inline to eliminate some trivial calls 2024-07-29 18:14:35 +08:00
no_inlined_clone.{impl#0}-clone.PreCodegen.after.mir Mark simplify_aggregate_to_copy mir-opt as unsound 2024-10-31 13:48:06 +08:00
optimizes_into_variable.main.GVN.32bit.panic-abort.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.GVN.32bit.panic-unwind.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.GVN.64bit.panic-abort.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.GVN.64bit.panic-unwind.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.PreCodegen.after.32bit.panic-abort.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.PreCodegen.after.32bit.panic-unwind.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.PreCodegen.after.64bit.panic-abort.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.PreCodegen.after.64bit.panic-unwind.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-abort.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-unwind.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-abort.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-unwind.diff Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
optimizes_into_variable.main.SimplifyLocals-final.after.32bit.panic-abort.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.SimplifyLocals-final.after.32bit.panic-unwind.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.SimplifyLocals-final.after.64bit.panic-abort.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.main.SimplifyLocals-final.after.64bit.panic-unwind.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
optimizes_into_variable.rs Use -Zdump-mir-exclude-alloc-bytes in some mir-opt tests 2024-06-26 15:05:01 -07:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-abort.mir Bless mir-opt tests 2024-10-07 11:18:37 -04:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-unwind.mir Bless mir-opt tests 2024-10-07 11:18:37 -04:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-abort.mir Bless mir-opt tests 2024-10-07 11:18:37 -04:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-unwind.mir Bless mir-opt tests 2024-10-07 11:18:37 -04:00
ptr_offset.rs tests: ignore-debug -> ignore-std-debug-assertions 2024-10-31 17:33:42 +08:00
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 std::range 2025-01-30 20:37:56 -07:00
range_iter.inclusive_loop.PreCodegen.after.panic-unwind.mir std::range 2025-01-30 20:37:56 -07:00
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-abort.mir std::range 2025-01-30 20:37:56 -07:00
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-unwind.mir std::range 2025-01-30 20:37:56 -07:00
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 Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04:00
README.md Add mir-opt tests to track MIR quality. 2023-04-23 17:10:53 +00:00
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 Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04:00
slice_filter.rs Ignore less tests in debug builds 2024-02-23 18:04:01 -05:00
slice_filter.variant_a-{closure#0}.PreCodegen.after.mir Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
slice_filter.variant_b-{closure#0}.PreCodegen.after.mir Do not unify dereferences in GVN. 2024-11-25 20:19:08 +01:00
slice_index.rs Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00: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 At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_index.slice_index_range.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_index.slice_index_usize.PreCodegen.after.panic-abort.mir Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
slice_index.slice_index_usize.PreCodegen.after.panic-unwind.mir Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00: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 Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.enumerated_loop.PreCodegen.after.panic-unwind.mir Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.forward_loop.PreCodegen.after.panic-abort.mir Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.forward_loop.PreCodegen.after.panic-unwind.mir Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.range_loop.PreCodegen.after.panic-abort.mir Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
slice_iter.range_loop.PreCodegen.after.panic-unwind.mir Reapply "Auto merge of #133734 - scottmcm:lower-indexing-to-ptrmetadata, r=davidtwco,RalfJung" 2025-01-27 23:42:47 +00:00
slice_iter.reverse_loop.PreCodegen.after.panic-abort.mir Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.reverse_loop.PreCodegen.after.panic-unwind.mir Update tests for std::simd subtree sync 2025-01-18 21:44:41 -05:00
slice_iter.rs tests: ignore-debug -> ignore-std-debug-assertions 2024-10-31 17:33:42 +08:00
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-abort.mir transmute should also assume non-null pointers 2025-02-12 23:01:27 -08:00
slice_iter.slice_iter_generic_is_empty.PreCodegen.after.panic-unwind.mir transmute should also assume non-null pointers 2025-02-12 23:01:27 -08: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 Turn copy into moves during DSE. 2023-07-19 09:59:12 +00:00
slice_iter.slice_iter_next.PreCodegen.after.panic-unwind.mir Turn copy into moves during DSE. 2023-07-19 09:59:12 +00:00
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 At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
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 Mark simplify_aggregate_to_copy mir-opt as unsound 2024-10-31 13:48:06 +08:00
try_identity.rs rustfmt tests/mir-opt. 2024-06-03 14:17:16 +10:00
vec_deref.rs Add a MIR pre-codegen test for Vec::deref 2024-04-21 11:08:36 -07:00
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-abort.mir [mir-opt] GVN some more transmute cases 2025-01-08 18:46:30 -08:00
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-unwind.mir [mir-opt] GVN some more transmute cases 2025-01-08 18:46:30 -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.