rust/src/test/mir-opt
2022-07-12 16:02:17 +03:00
..
const_prop tweak names and output and bless 2022-07-09 07:43:56 -04:00
dead-store-elimination tweak names and output and bless 2022-07-09 07:43:56 -04:00
dest-prop tweak names and output and bless 2022-07-09 07:43:56 -04:00
inline add new rval, pull deref early 2022-07-12 14:26:41 +03:00
issues tweak names and output and bless 2022-07-09 07:43:56 -04:00
nll tweak names and output and bless 2022-07-09 07:43:56 -04:00
76803_regression.encode.SimplifyBranchSame.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
76803_regression.rs
address_of.address_of_reborrow.SimplifyCfg-initial.after.mir update mir dumps 2022-05-21 08:13:17 +02:00
address_of.borrow_and_cast.SimplifyCfg-initial.after.mir
address-of.rs
array_index_is_temporary.main.SimplifyCfg-elaborate-drops.after.32bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
array_index_is_temporary.main.SimplifyCfg-elaborate-drops.after.64bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
array-index-is-temporary.rs
asm_unwind_panic_abort.main.AbortUnwindingCalls.after.mir Add mir-opt test for asm_unwind + panic=abort 2022-05-18 23:15:00 -07:00
asm_unwind_panic_abort.rs Add mir-opt test for asm_unwind + panic=abort 2022-05-18 23:15:00 -07:00
basic_assignment.main.SimplifyCfg-initial.after.mir update mir dumps 2022-05-21 08:13:17 +02:00
basic_assignment.rs
bool_compare.opt1.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
bool_compare.opt2.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
bool_compare.opt3.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
bool_compare.opt4.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
bool_compare.rs
box_expr.main.ElaborateDrops.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
box_expr.rs
byte_slice.main.SimplifyCfg-elaborate-drops.after.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
byte_slice.rs
combine_array_len.norm2.InstCombine.32bit.diff
combine_array_len.norm2.InstCombine.64bit.diff
combine_array_len.rs
combine_clone_of_primitives.{impl#0}-clone.InstCombine.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
combine_clone_of_primitives.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
const_allocation2.main.ConstProp.after.32bit.mir manually bless 32-bit mir-opt tests 2022-06-14 16:09:06 +02:00
const_allocation2.main.ConstProp.after.64bit.mir implement valtrees as the type-system representation for constant values 2022-06-14 16:07:11 +02:00
const_allocation2.rs
const_allocation3.main.ConstProp.after.32bit.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_allocation3.main.ConstProp.after.64bit.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_allocation3.rs
const_allocation.main.ConstProp.after.32bit.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_allocation.main.ConstProp.after.64bit.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_allocation.rs
const_debuginfo.main.ConstDebugInfo.diff Add dead store elimination pass 2022-05-24 22:50:21 -04:00
const_debuginfo.rs
const_goto_const_eval_fail.f.ConstGoto.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
const_goto_const_eval_fail.rs
const_goto_storage.match_nested_if.ConstGoto.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
const_goto_storage.rs enhance ConstGoto mir-opt by moving up StorageDead statements 2022-04-06 15:17:41 +08:00
const_goto.issue_77355_opt.ConstGoto.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
const_goto.rs
const_promotion_extern_static.BAR-promoted[0].SimplifyCfg-elaborate-drops.after.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_promotion_extern_static.BAR.PromoteTemps.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
const_promotion_extern_static.BOP.mir_map.0.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
const_promotion_extern_static.FOO-promoted[0].SimplifyCfg-elaborate-drops.after.mir change mir::Constant in mir dumps 2022-02-22 09:38:07 +01:00
const_promotion_extern_static.FOO.PromoteTemps.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
const_prop_miscompile.bar.ConstProp.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
const_prop_miscompile.foo.ConstProp.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
const_prop_miscompile.rs
const-promotion-extern-static.rs
coverage_graphviz.bar.InstrumentCoverage.0.dot
coverage_graphviz.main.InstrumentCoverage.0.dot ./x.py test --bless 2021-09-18 00:00:00 +00:00
coverage_graphviz.rs Stabilize -Z instrument-coverage as -C instrument-coverage 2022-01-01 15:57:35 -08:00
deaggregator_test_enum_2.rs
deaggregator_test_enum_2.test1.Deaggregator.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
deaggregator_test_enum.bar.Deaggregator.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
deaggregator_test_enum.rs
deaggregator_test_multiple.rs
deaggregator_test_multiple.test.Deaggregator.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
deaggregator_test.bar.Deaggregator.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
deaggregator_test.rs
deduplicate_blocks.is_line_doc_comment_2.DeduplicateBlocks.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
deduplicate_blocks.rs
derefer_complex_case.main.Derefer.diff ignore wasm=32 & bless 2022-07-12 16:02:17 +03:00
derefer_complex_case.rs ignore wasm=32 & bless 2022-07-12 16:02:17 +03:00
derefer_inline_test.main.Derefer.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
derefer_inline_test.rs validate derefer, run derefer inside generator 2022-05-30 18:36:14 +03:00
derefer_terminator_test.main.Derefer.diff ignore wasm=32 & bless 2022-07-12 16:02:17 +03:00
derefer_terminator_test.rs ignore wasm=32 & bless 2022-07-12 16:02:17 +03:00
derefer_test_multiple.main.Derefer.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
derefer_test_multiple.rs support multiple derefs 2022-04-09 20:38:06 +03:00
derefer_test.main.Derefer.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
derefer_test.rs New mir-opt deref_separator 2022-04-04 18:51:32 +03:00
early_otherwise_branch_3_element_tuple.opt1.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch_3_element_tuple.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
early_otherwise_branch_68867.rs Update MIR opt tests with new name 2021-11-30 18:54:37 -08:00
early_otherwise_branch_68867.try_sum.EarlyOtherwiseBranch.before-SimplifyConstCondition-final.after.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
early_otherwise_branch_68867.try_sum.EarlyOtherwiseBranch.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
early_otherwise_branch_noopt.noopt1.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch_noopt.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
early_otherwise_branch_soundness.no_deref_ptr.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch_soundness.no_downcast.EarlyOtherwiseBranch.diff add new rval, pull deref early 2022-07-12 14:26:41 +03:00
early_otherwise_branch_soundness.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
early_otherwise_branch.opt1.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch.opt2.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch.opt3.EarlyOtherwiseBranch.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
early_otherwise_branch.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
enum_cast.bar.mir_map.0.mir Change enum->int casts to not go through MIR casts. 2022-06-30 07:47:07 +00:00
enum_cast.boo.mir_map.0.mir Change enum->int casts to not go through MIR casts. 2022-06-30 07:47:07 +00:00
enum_cast.droppy.mir_map.0.mir Change enum->int casts to not go through MIR casts. 2022-06-30 07:47:07 +00:00
enum_cast.foo.mir_map.0.mir Change enum->int casts to not go through MIR casts. 2022-06-30 07:47:07 +00:00
enum_cast.rs Change enum->int casts to not go through MIR casts. 2022-06-30 07:47:07 +00:00
equal_true.opt.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
equal_true.rs
exponential_or.match_tuple.SimplifyCfg-initial.after.mir Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
exponential-or.rs
fn_ptr_shim.core.ops-function-Fn-call.AddMovesForPackedDrops.before.mir
fn-ptr-shim.rs
funky_arms.float_to_exponential_common.ConstProp.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
funky_arms.rs
generator_drop_cleanup.main-{closure#0}.generator_drop.0.mir Shorten span for closures. 2022-07-07 09:27:42 +02:00
generator_storage_dead_unwind.main-{closure#0}.StateTransform.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
generator_tiny.main-{closure#0}.generator_resume.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
generator-drop-cleanup.rs
generator-storage-dead-unwind.rs
generator-tiny.rs
graphviz.main.mir_map.0.dot
graphviz.rs
if_condition_int.dont_opt_bool.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.dont_opt_floats.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.dont_remove_comparison.SimplifyComparisonIntegral.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
if_condition_int.opt_char.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.opt_i8.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.opt_multiple_ifs.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.opt_negative.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if_condition_int.opt_u32.SimplifyComparisonIntegral.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
if-condition-int.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
instrument_coverage.bar.InstrumentCoverage.diff
instrument_coverage.main.InstrumentCoverage.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
instrument_coverage.rs Stabilize -Z instrument-coverage as -C instrument-coverage 2022-01-01 15:57:35 -08:00
issue_38669.main.SimplifyCfg-initial.after.mir Only create scopes for if let 2022-06-14 18:45:33 -07:00
issue_41110.main.ElaborateDrops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_41110.test.ElaborateDrops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_41697.{impl#0}-{constant#0}.SimplifyCfg-promote-consts.after.32bit.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
issue_41697.{impl#0}-{constant#0}.SimplifyCfg-promote-consts.after.64bit.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
issue_41888.main.ElaborateDrops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_49232.main.mir_map.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_62289.test.ElaborateDrops.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_72181_1.f.mir_map.0.mir
issue_72181_1.main.mir_map.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_72181.bar.mir_map.0.32bit.mir
issue_72181.bar.mir_map.0.64bit.mir
issue_72181.foo.mir_map.0.32bit.mir
issue_72181.foo.mir_map.0.64bit.mir
issue_72181.main.mir_map.0.32bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_72181.main.mir_map.0.64bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_73223.main.PreCodegen.32bit.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_73223.main.PreCodegen.64bit.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_73223.main.SimplifyArmIdentity.32bit.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_73223.main.SimplifyArmIdentity.64bit.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_76432.rs
issue_76432.test.SimplifyComparisonIntegral.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
issue_78192.f.InstCombine.diff
issue-38669.rs
issue-41110.rs
issue-41697.rs
issue-41888.rs
issue-49232.rs
issue-62289.rs
issue-72181-1.rs
issue-72181.rs
issue-73223.rs
issue-78192.rs Run reveal_all on MIR more often. 2021-11-06 15:56:29 +01:00
loop_test.main.SimplifyCfg-promote-consts.after.mir Only create scopes for if let 2022-06-14 18:45:33 -07:00
loop_test.rs
lower_array_len.array_bound_mut.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_bound_mut.NormalizeArrayLen.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_bound_mut.SimplifyLocals.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_bound.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_bound.NormalizeArrayLen.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_bound.SimplifyLocals.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
lower_array_len.array_len_by_value.InstCombine.diff add MIR artifacts 2021-10-06 17:53:11 +02:00
lower_array_len.array_len_by_value.NormalizeArrayLen.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
lower_array_len.array_len_by_value.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
lower_array_len.array_len.InstCombine.diff add MIR artifacts 2021-10-06 17:53:11 +02:00
lower_array_len.array_len.NormalizeArrayLen.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
lower_array_len.array_len.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
lower_array_len.rs opt-level >= 4 2021-10-06 20:37:24 +02:00
lower_intrinsics.align_of.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.discriminant.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.f_u64.PreCodegen.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.f_unit.PreCodegen.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.forget.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.non_const.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.rs Extend the MIR validator to check many more things around rvalues. 2022-04-11 15:18:54 -04:00
lower_intrinsics.size_of.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.unreachable.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_intrinsics.wrapping.LowerIntrinsics.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_slice_len.bound.LowerSliceLenCalls.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
lower_slice_len.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
match_arm_scopes.complicated_match.SimplifyCfg-initial.after-ElaborateDrops.after.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
match_false_edges.full_tested_match2.PromoteTemps.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
match_false_edges.full_tested_match.PromoteTemps.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
match_false_edges.main.PromoteTemps.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
match_false_edges.rs Fully stabilize NLL 2022-06-03 17:16:41 -04:00
match_test.main.SimplifyCfg-initial.after.mir Change scope of temporaries in match guards 2021-09-05 18:50:55 +01:00
match_test.rs
match-arm-scopes.rs
matches_reduce_branches.bar.MatchBranchSimplification.32bit.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
matches_reduce_branches.bar.MatchBranchSimplification.64bit.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
matches_reduce_branches.foo.MatchBranchSimplification.32bit.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
matches_reduce_branches.foo.MatchBranchSimplification.64bit.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
matches_reduce_branches.foo.PreCodegen.before.32bit.mir
matches_reduce_branches.foo.PreCodegen.before.64bit.mir Only create scopes for if let 2022-06-14 18:45:33 -07:00
matches_reduce_branches.match_nested_if.MatchBranchSimplification.32bit.diff enhance ConstGoto mir-opt by moving up StorageDead statements 2022-04-06 15:17:41 +08:00
matches_reduce_branches.match_nested_if.MatchBranchSimplification.64bit.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
matches_reduce_branches.rs
matches_u8.exhaustive_match_i8.MatchBranchSimplification.32bit.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
matches_u8.exhaustive_match_i8.MatchBranchSimplification.64bit.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
matches_u8.exhaustive_match.MatchBranchSimplification.32bit.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
matches_u8.exhaustive_match.MatchBranchSimplification.64bit.diff Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
matches_u8.rs
multiple_return_terminators.rs
multiple_return_terminators.test.MultipleReturnTerminators.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
no_drop_for_inactive_variant.unwrap.SimplifyCfg-elaborate-drops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
no_spurious_drop_after_call.main.ElaborateDrops.before.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
no-drop-for-inactive-variant.rs
no-spurious-drop-after-call.rs
not_equal_false.opt.InstCombine.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
not_equal_false.rs
nrvo_simple.nrvo.RenameReturnPlace.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
nrvo-simple.rs Switch some tests over to new MIR opt unit tests 2022-04-16 18:23:59 -04:00
packed_struct_drop_aligned.main.SimplifyCfg-elaborate-drops.after.32bit.mir
packed_struct_drop_aligned.main.SimplifyCfg-elaborate-drops.after.64bit.mir
packed-struct-drop-aligned.rs
README.md
receiver_ptr_mutability.main.mir_map.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
receiver-ptr-mutability.rs
remove_fake_borrows.match_guard.CleanupNonCodegenStatements.diff Use FxIndexSet to avoid sorting fake borrows 2022-05-09 22:29:46 -04:00
remove_fake_borrows.rs
remove_never_const.no_codegen.PreCodegen.after.mir Stabilize const_panic 2021-10-04 02:33:33 -04:00
remove_storage_markers.main.RemoveStorageMarkers.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
remove_storage_markers.rs
remove_unneeded_drops.cannot_opt_generic.RemoveUnneededDrops.diff Only create a single expansion for each inline integration. 2022-02-27 19:05:56 +01:00
remove_unneeded_drops.dont_opt.RemoveUnneededDrops.diff Only create a single expansion for each inline integration. 2022-02-27 19:05:56 +01:00
remove_unneeded_drops.opt_generic_copy.RemoveUnneededDrops.diff validate derefer, run derefer inside generator 2022-05-30 18:36:14 +03:00
remove_unneeded_drops.opt.RemoveUnneededDrops.diff validate derefer, run derefer inside generator 2022-05-30 18:36:14 +03:00
remove_unneeded_drops.rs
remove_zsts_dont_touch_unions.get_union.RemoveZsts.after.mir Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
remove_zsts_dont_touch_unions.rs
remove-never-const.rs Stabilize const_panic 2021-10-04 02:33:33 -04:00
retag.{impl#0}-foo_shr.SimplifyCfg-elaborate-drops.after.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
retag.{impl#0}-foo.SimplifyCfg-elaborate-drops.after.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
retag.array_casts.SimplifyCfg-elaborate-drops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
retag.core.ptr-drop_in_place.Test.SimplifyCfg-make_shim.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
retag.main-{closure#0}.SimplifyCfg-elaborate-drops.after.mir Shorten span for closures. 2022-07-07 09:27:42 +02:00
retag.main.SimplifyCfg-elaborate-drops.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
retag.rs
return_an_array.rs
rustc.try_identity.DestinationPropagation.diff
separate_const_switch.identity.ConstProp.diff Remove inlining cost of Deinit statements 2022-04-11 10:23:33 -04:00
separate_const_switch.identity.PreCodegen.after.mir Remove inlining cost of Deinit statements 2022-04-11 10:23:33 -04:00
separate_const_switch.identity.SeparateConstSwitch.diff Remove inlining cost of Deinit statements 2022-04-11 10:23:33 -04:00
separate_const_switch.rs implemented separate_const_switch MIR opt 2021-06-22 23:18:26 +02:00
separate_const_switch.too_complex.ConstProp.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
separate_const_switch.too_complex.PreCodegen.after.mir Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
separate_const_switch.too_complex.SeparateConstSwitch.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simple_match.match_bool.mir_map.0.32bit.mir Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
simple_match.match_bool.mir_map.0.64bit.mir Fix debugger stepping behavior around match expressions 2021-08-25 15:17:22 -04:00
simple-match.rs
simplify_arm_identity.main.SimplifyArmIdentity.32bit.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_arm_identity.main.SimplifyArmIdentity.64bit.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_arm.id_result.SimplifyArmIdentity.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_arm.id_result.SimplifyBranchSame.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_arm.id_try.SimplifyArmIdentity.diff validate derefer, run derefer inside generator 2022-05-30 18:36:14 +03:00
simplify_arm.id_try.SimplifyBranchSame.diff validate derefer, run derefer inside generator 2022-05-30 18:36:14 +03:00
simplify_arm.id.SimplifyArmIdentity.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_arm.id.SimplifyBranchSame.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_cfg.main.SimplifyCfg-early-opt.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
simplify_cfg.main.SimplifyCfg-initial.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
simplify_cfg.rs Make simplify_cfg test more consistent 2021-08-03 07:06:19 -07:00
simplify_if.main.SimplifyConstCondition-after-const-prop.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
simplify_if.rs Update MIR opt tests with new name 2021-11-30 18:54:37 -08:00
simplify_locals_fixedpoint.foo.SimplifyLocals.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
simplify_locals_removes_unused_consts.main.SimplifyLocals.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
simplify_locals_removes_unused_discriminant_reads.map.SimplifyLocals.32bit.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals_removes_unused_discriminant_reads.map.SimplifyLocals.64bit.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.c.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.d1.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.d2.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.expose_addr.SimplifyLocals.diff Preserve unused pointer to address casts 2022-06-07 17:33:16 +02:00
simplify_locals.r.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.t1.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.t2.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.t3.SimplifyLocals.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_locals.t4.SimplifyLocals.diff
simplify_match.main.ConstProp.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
simplify_match.rs
simplify_try_if_let.{impl#0}-append.SimplifyArmIdentity.diff
simplify_try_if_let.rs
simplify_try.rs
simplify_try.try_identity.DestinationPropagation.diff Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify_try.try_identity.SimplifyArmIdentity.diff Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_try.try_identity.SimplifyBranchSame.after.mir Fix tests broken by deaggregation change 2022-04-11 09:26:26 -04:00
simplify_try.try_identity.SimplifyLocals.after.mir Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
simplify-arm-identity.rs
simplify-arm.rs
simplify-locals-fixedpoint.rs
simplify-locals-removes-unused-consts.rs
simplify-locals-removes-unused-discriminant-reads.rs
simplify-locals.rs Preserve unused pointer to address casts 2022-06-07 17:33:16 +02:00
slice_drop_shim.core.ptr-drop_in_place.[String].AddMovesForPackedDrops.before.32bit.mir
slice_drop_shim.core.ptr-drop_in_place.[String].AddMovesForPackedDrops.before.64bit.mir
slice-drop-shim.rs
spanview_block.main.mir_map.0.html
spanview_statement.main.mir_map.0.html
spanview_terminator.main.mir_map.0.html
spanview-block.rs
spanview-statement.rs
spanview-terminator.rs
storage_live_dead_in_statics.rs
storage_live_dead_in_statics.XXX.mir_map.0.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
storage_ranges.main.nll.0.mir Add an explicit Span field to OutlivesConstraint 2022-04-19 23:42:20 -04:00
storage_ranges.rs
tls_access.main.PreCodegen.after.mir Fix TLS access mir opt test and remove stale files 2022-05-30 16:29:36 -07:00
tls-access.rs Fix TLS access mir opt test and remove stale files 2022-05-30 16:29:36 -07:00
uniform_array_move_out.move_out_by_subslice.mir_map.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
uniform_array_move_out.move_out_from_end.mir_map.0.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
uniform_array_move_out.rs
uninhabited_enum_branching2.main.SimplifyCfg-after-uninhabited-enum-branching.after.mir bless mir-opt 2022-05-06 10:58:54 +02:00
uninhabited_enum_branching2.main.UninhabitedEnumBranching.diff bless mir-opt 2022-05-06 10:58:54 +02:00
uninhabited_enum_branching2.rs
uninhabited_enum_branching.main.SimplifyCfg-after-uninhabited-enum-branching.after.mir bless mir-opt 2022-05-06 10:58:54 +02:00
uninhabited_enum_branching.main.UninhabitedEnumBranching.diff bless mir-opt 2022-05-06 10:58:54 +02:00
uninhabited_enum_branching.rs
uninhabited_enum.process_never.SimplifyLocals.after.mir Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
uninhabited_enum.process_void.SimplifyLocals.after.mir Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
uninhabited_fallthrough_elimination.eliminate_fallthrough.UninhabitedEnumBranching.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
uninhabited_fallthrough_elimination.keep_fallthrough.UninhabitedEnumBranching.diff exp-stuff-dirty 2022-04-29 14:42:24 +03:00
uninhabited_fallthrough_elimination.rs Add test checking that fallthrough branches are correctly identified as dead 2022-02-18 09:33:52 -05:00
uninhabited-enum.rs
unreachable_diverging.main.UnreachablePropagation.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
unreachable_diverging.rs
unreachable.main.UnreachablePropagation.diff tweak names and output and bless 2022-07-09 07:43:56 -04:00
unreachable.rs
unusual_item_types.{impl#0}-ASSOCIATED_CONSTANT.mir_map.0.32bit.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
unusual_item_types.{impl#0}-ASSOCIATED_CONSTANT.mir_map.0.64bit.mir Shorten def_span for more items. 2022-07-01 17:39:19 +02:00
unusual_item_types.core.ptr-drop_in_place.Vec_i32_.AddMovesForPackedDrops.before.32bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
unusual_item_types.core.ptr-drop_in_place.Vec_i32_.AddMovesForPackedDrops.before.64bit.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
unusual_item_types.E-V-{constant#0}.mir_map.0.32bit.mir
unusual_item_types.E-V-{constant#0}.mir_map.0.64bit.mir
unusual_item_types.Test-X-{constructor#0}.mir_map.0.32bit.mir fix miri-opt tests 2022-07-06 19:09:50 +09:00
unusual_item_types.Test-X-{constructor#0}.mir_map.0.64bit.mir fix miri-opt tests 2022-07-06 19:09:50 +09:00
unusual-item-types.rs Fix/bless tests broken by DSE 2022-05-24 22:50:21 -04:00
while_let_loops.change_loop_body.ConstProp.32bit.diff Only create scopes for if let 2022-06-14 18:45:33 -07:00
while_let_loops.change_loop_body.ConstProp.64bit.diff Actually fix 2022-06-10 13:06:26 -07:00
while_let_loops.change_loop_body.PreCodegen.after.32bit.mir Only create scopes for if let 2022-06-14 18:45:33 -07:00
while_let_loops.change_loop_body.PreCodegen.after.64bit.mir Revert "More minimal changes" 2022-06-10 13:01:56 -07:00
while_let_loops.rs
while_storage.while_loop.PreCodegen.after.mir tweak names and output and bless 2022-07-09 07:43:56 -04:00
while-storage.rs

This folder contains tests for MIR optimizations.

The mir-opt test format emits MIR to extra files that you can automatically update by specifying --bless on the command line (just like ui tests updating .stderr files).

--blessable test format

By default 32 bit and 64 bit targets use the same dump files, which can be problematic in the presence of pointers in constants or other bit width dependent things. In that case you can add

// EMIT_MIR_FOR_EACH_BIT_WIDTH

to your test, causing separate files to be generated for 32bit and 64bit systems.

Emit a diff of the mir for a specific optimization

This is what you want most often when you want to see how an optimization changes the MIR.

// EMIT_MIR $file_name_of_some_mir_dump.diff

Emit mir after a specific optimization

Use this if you are just interested in the final state after an optimization.

// EMIT_MIR $file_name_of_some_mir_dump.after.mir

Emit mir before a specific optimization

This exists mainly for completeness and is rarely useful.

// EMIT_MIR $file_name_of_some_mir_dump.before.mir