rust/tests/mir-opt/pre-codegen
Scott McMurray 61517dbbe6 Avoid a cast in `ptr::slice_from_raw_parts(_mut)`
Casting to `*const ()` or `*mut ()` just bloats the MIR, so let's not.

If ACP#362 goes through we can keep calling `ptr::from_raw_parts(_mut)` in these also without the cast, but that hasn't had any libs-api attention yet, so I'm not waiting on it.
2024-05-06 01:53:54 -07:00
..
README.md Add mir-opt tests to track MIR quality. 2023-04-23 17:10:53 +00:00
chained_comparison.bitand.PreCodegen.after.mir Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
chained_comparison.naive.PreCodegen.after.mir update tests that are ignored by debug 2023-09-01 04:01:54 +08:00
chained_comparison.returning.PreCodegen.after.mir update tests that are ignored by debug 2023-09-01 04:01:54 +08: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 Make `checked` ops emit *unchecked* LLVM operations where feasible 2024-04-18 18:11:21 -07:00
checked_ops.checked_shl.PreCodegen.after.panic-unwind.mir Make `checked` ops emit *unchecked* LLVM operations where feasible 2024-04-18 18:11:21 -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 Ensure `[rust] debuginfo-level-std` doesn't change core's MIR 2024-04-18 09:35:36 -07:00
checked_ops.step_forward.PreCodegen.after.panic-unwind.mir Ensure `[rust] debuginfo-level-std` doesn't change core's MIR 2024-04-18 09:35:36 -07: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 At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -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 Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-abort.diff At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
issue_117368_print_invalid_constant.main.GVN.32bit.panic-unwind.diff At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-abort.diff At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
issue_117368_print_invalid_constant.main.GVN.64bit.panic-unwind.diff At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
issue_117368_print_invalid_constant.rs Make ui into mir-opt test. 2023-11-01 16:49:18 +00:00
loops.filter_mapped.PreCodegen.after.mir Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00:00
loops.int_range.PreCodegen.after.mir Remove MIR unsafe check 2024-04-03 08:50:12 +00:00
loops.mapped.PreCodegen.after.mir Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00: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 make MIR less verbose 2023-08-24 14:26:26 +02: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/fix tests 2024-02-08 19:56:30 -05:00
mem_replace.manual_replace.PreCodegen.after.panic-unwind.mir Bless/fix tests 2024-02-08 19:56:30 -05:00
mem_replace.mem_replace.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
mem_replace.mem_replace.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
mem_replace.rs Enable more mir-opt tests in debug builds 2024-03-22 20:14:39 -04:00
optimizes_into_variable.main.GVN.32bit.panic-abort.diff Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00:00
optimizes_into_variable.main.GVN.32bit.panic-unwind.diff Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00:00
optimizes_into_variable.main.GVN.64bit.panic-abort.diff Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00:00
optimizes_into_variable.main.GVN.64bit.panic-unwind.diff Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +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 Reorder early post-inlining passes. 2024-01-07 01:42:57 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.panic-unwind.diff Reorder early post-inlining passes. 2024-01-07 01:42:57 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-abort.diff Reorder early post-inlining passes. 2024-01-07 01:42:57 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.panic-unwind.diff Reorder early post-inlining passes. 2024-01-07 01:42:57 +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 [AUTO_GENERATED] Migrate compiletest to use `ui_test`-style `//@` directives 2024-02-22 16:04:04 +00:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-abort.mir Update tests after 123949 2024-04-21 11:24:54 -07:00
ptr_offset.demo_byte_add_fat.PreCodegen.after.panic-unwind.mir Update tests after 123949 2024-04-21 11:24:54 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-abort.mir Update tests after 123949 2024-04-21 11:24:54 -07:00
ptr_offset.demo_byte_add_thin.PreCodegen.after.panic-unwind.mir Update tests after 123949 2024-04-21 11:24:54 -07:00
ptr_offset.rs Add a mir-opt test for `byte_add` on pointers 2024-04-21 11:08:36 -07:00
range_iter.forward_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.forward_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.inclusive_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.inclusive_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.range_inclusive_iter_next.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.range_iter_next.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.range_iter_next.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
range_iter.rs Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04:00
simple_option_map.ezmap.PreCodegen.after.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -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 Merge borrowed locals too. 2024-04-20 19:20:38 +00:00
slice_filter.variant_b-{closure#0}.PreCodegen.after.mir Ignore less tests in debug builds 2024-02-23 18:04:01 -05:00
slice_index.rs New slice indexing pre-codegen MIR test 2024-04-21 11:08:36 -07:00
slice_index.slice_get_mut_usize.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_get_mut_usize.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_get_unchecked_mut_range.PreCodegen.after.panic-abort.mir Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -07:00
slice_index.slice_get_unchecked_mut_range.PreCodegen.after.panic-unwind.mir Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -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 Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
slice_index.slice_index_usize.PreCodegen.after.panic-unwind.mir Bless tests 2023-06-23 18:36:25 +01:00
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-abort.mir Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -07:00
slice_index.slice_ptr_get_unchecked_range.PreCodegen.after.panic-unwind.mir Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.enumerated_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.forward_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.range_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.range_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-abort.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.reverse_loop.PreCodegen.after.panic-unwind.mir At debuginfo=0, don't inline debuginfo when inlining 2024-04-18 09:35:35 -07:00
slice_iter.rs Enable more mir-opt tests in debug builds 2024-03-22 20:14:39 -04:00
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-abort.mir Turn copy into moves during DSE. 2023-07-19 09:59:12 +00:00
slice_iter.slice_iter_mut_next_back.PreCodegen.after.panic-unwind.mir Turn copy into moves during DSE. 2023-07-19 09:59:12 +00: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 Allow to run filecheck in mir-opt tests. 2023-10-19 15:51:52 +00:00
spans.outer.PreCodegen.after.panic-unwind.mir Allow to run filecheck in mir-opt tests. 2023-10-19 15:51:52 +00: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 Enable by default. 2024-02-09 21:13:51 +00:00
try_identity.old.PreCodegen.after.mir Sandwich MIR optimizations between DSE. 2024-01-11 09:58:19 +00:00
try_identity.rs Remove some only- clauses from mir-opt tests 2024-03-18 10:07:43 -04: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 Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -07:00
vec_deref.vec_deref_to_slice.PreCodegen.after.panic-unwind.mir Avoid a cast in `ptr::slice_from_raw_parts(_mut)` 2024-05-06 01:53:54 -07:00

README.md

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.