rust/compiler/rustc_mir_transform/src
bors 5462da52ba Auto merge of #99946 - tmiasko:elide-storage-makers, r=oli-obk
Elide superfluous storage markers

Follow the existing strategy of omitting the storage markers for temporaries
introduced for internal usage when elaborating derefs and deref projections.

Those temporaries are simple scalars which are used immediately after being
defined and never have their address taken. There is no benefit from storage
markers from either liveness analysis or code generation perspective.
2022-08-24 23:51:06 +00:00
..
coverage Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
inline consistently use VTable over Vtable (matching stable stdlib API RawWakerVTable) 2022-07-20 17:12:07 -04:00
abort_unwinding_calls.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
add_call_guards.rs Move predecessors from Body to BasicBlocks 2022-07-07 08:11:49 +02:00
add_moves_for_packed_drops.rs Adopt let else in more places 2022-02-19 17:27:43 +01:00
add_retag.rs has_deref: simpler comparison, ty fix 2022-07-22 17:35:28 +03:00
check_const_item_mutation.rs lint: LintDiagnosticBuilder into rustc_errors 2022-07-05 16:00:20 +01:00
check_packed_ref.rs Remove erroneous E0133 code from an error message. 2022-07-26 12:54:24 +10:00
check_unsafety.rs update comment 2022-08-02 18:55:43 -04:00
cleanup_post_borrowck.rs Add option to mir::MutVisitor to not invalidate CFG. 2022-08-09 01:51:10 -07:00
const_debuginfo.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
const_goto.rs enhance ConstGoto mir-opt by moving up StorageDead statements 2022-04-06 15:17:41 +08:00
const_prop.rs Rollup merge of #100229 - RalfJung:extra-const-ub-checks, r=lcnr 2022-08-12 20:39:11 +05:30
const_prop_lint.rs Add bound_impl_subject and bound_return_ty 2022-08-03 01:02:46 -04:00
dead_store_elimination.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
deaggregator.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
deduplicate_blocks.rs Remove in_band_lifetimes from rustc_mir_transform 2021-12-07 21:04:40 -08:00
deref_separator.rs Elide storage markers when elaborating deref projections 2022-08-23 10:08:48 +02:00
dest_prop.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
dump_mir.rs Inline on_mir_pass and add inline to dump_mir 2021-10-14 15:26:59 -05:00
early_otherwise_branch.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
elaborate_box_derefs.rs Elide storage markers when elaborating box derefs 2022-08-23 10:08:48 +02:00
elaborate_drops.rs optimize un_derefer 2022-07-24 14:40:43 +03:00
ffi_unwind_calls.rs Add a explanation about required panic strategy computation 2022-06-09 16:51:08 +01:00
function_item_references.rs Refactor call terminator to always hold a destination place 2022-05-23 17:49:04 -04:00
generator.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
inline.rs Elide storage markers for internal locals when inlining 2022-08-23 10:08:48 +02:00
instcombine.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
lib.rs Adjust cfgs 2022-08-12 16:28:15 -04:00
lower_intrinsics.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
lower_slice_len.rs lint: add bad opt access internal lint 2022-07-27 11:24:27 +01:00
marker.rs Add pass for simple phase change 2021-12-02 17:31:38 -08:00
match_branches.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
multiple_return_terminators.rs Update passes with new interface 2021-12-02 17:31:38 -08:00
normalize_array_len.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
nrvo.rs Add option to mir::MutVisitor to not invalidate CFG. 2022-08-09 01:51:10 -07:00
pass_manager.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
remove_false_edges.rs Separate RemoveFalseEdges from SimplifyBranches 2021-11-30 17:14:48 -08:00
remove_noop_landing_pads.rs Avoid invalidating the CFG in MirPatch. 2022-08-02 18:57:54 -07:00
remove_storage_markers.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
remove_uninit_drops.rs Auto merge of #99667 - ouz-a:some_branch, r=oli-obk 2022-07-29 07:11:50 +00:00
remove_unneeded_drops.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
remove_zsts.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
required_consts.rs Rename the ConstS::val field as kind. 2022-06-14 13:06:44 +10:00
reveal_all.rs Add option to mir::MutVisitor to not invalidate CFG. 2022-08-09 01:51:10 -07:00
separate_const_switch.rs add new rval, pull deref early 2022-07-12 14:26:41 +03:00
shim.rs consistently use VTable over Vtable (matching stable stdlib API RawWakerVTable) 2022-07-20 17:12:07 -04:00
simplify.rs Add option to mir::MutVisitor to not invalidate CFG. 2022-08-09 01:51:10 -07:00
simplify_branches.rs Auto merge of #91279 - scottmcm:small-refactor, r=nagisa 2021-12-06 13:04:18 +00:00
simplify_comparison_integral.rs fix most compiler/ doctests 2022-05-02 17:40:30 -07:00
simplify_try.rs Rename debugging_opts to unstable_opts 2022-07-13 17:47:06 -05:00
uninhabited_enum_branching.rs Remove unused StableMap and StableSet types from rustc_data_structures 2022-07-20 13:11:39 +02:00
unreachable_prop.rs Fix typo in UnreachableProp 2022-08-23 08:18:18 +02:00