rust/compiler/rustc_mir_transform/src
Zalathar 229d0983b5 coverage: Simplify the loop that combines blocks into BCBs
The old loop had two separate places where it would flush the acumulated list
of straight-line blocks into a new BCB. One occurred at the start of the loop
body when the current block couldn't be chained into, and the other occurred at
the end of the loop body when the current block couldn't be chained from.

The latter check can be hoisted to the start of the loop body by making it
examine the previous block (which has added itself to the list) instead of the
current block. With that done, we can combine the two separate flushes into one
flush with two possible trigger conditions.
2024-01-14 12:11:25 +11:00
..
coverage coverage: Simplify the loop that combines blocks into BCBs 2024-01-14 12:11:25 +11:00
inline subst -> instantiate 2023-09-26 09:37:55 +02:00
abort_unwinding_calls.rs remove redundant imports 2023-12-10 10:56:22 +08:00
add_call_guards.rs remove redundant imports 2023-12-10 10:56:22 +08:00
add_moves_for_packed_drops.rs remove redundant imports 2023-12-10 10:56:22 +08:00
add_retag.rs remove redundant imports 2023-12-10 10:56:22 +08:00
add_subtyping_projections.rs remove redundant imports 2023-12-10 10:56:22 +08:00
check_alignment.rs remove redundant imports 2023-12-10 10:56:22 +08:00
check_const_item_mutation.rs Fix clippy::needless_borrow in the compiler 2023-11-21 20:13:40 +01:00
check_packed_ref.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
check_unsafety.rs Stabilize THIR unsafeck 2024-01-05 10:00:59 +00:00
cleanup_post_borrowck.rs rename BorrowKind::Shallow to Fake 2023-11-08 22:55:28 +01:00
const_debuginfo.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
const_goto.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
const_prop.rs Replace legacy ConstProp by GVN. 2023-12-24 20:08:57 +00:00
const_prop_lint.rs rustc_mir_transform: Enforce rustc::potential_query_instability lint 2024-01-06 19:09:04 +01:00
copy_prop.rs remove redundant imports 2023-12-10 10:56:22 +08:00
coroutine.rs Auto merge of #119499 - cjgillot:dtm-opt, r=nnethercote 2024-01-06 11:54:15 +00:00
cost_checker.rs Re-format code with new rustfmt 2023-11-15 21:45:48 -05:00
cross_crate_inline.rs Fix cases where std accidentally relied on inline(never) 2023-12-14 08:30:36 -05:00
ctfe_limit.rs Fix clippy::needless_borrow in the compiler 2023-11-21 20:13:40 +01:00
dataflow_const_prop.rs NFC don't convert types to identical types 2023-12-15 23:56:24 +01:00
dead_store_elimination.rs Preserve DebugInfo in DeadStoreElimination. 2023-10-06 15:46:11 +00:00
deduce_param_attrs.rs deduce_param_attrs: explain a read-only case 2023-10-30 10:29:08 +01:00
deduplicate_blocks.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
deref_separator.rs remove redundant imports 2023-12-10 10:56:22 +08:00
dest_prop.rs rustc_mir_transform: Make DestinationPropagation stable for queries 2024-01-05 20:55:32 +01:00
dump_mir.rs Write to stdout if - is given as output file 2023-06-06 17:53:29 -04:00
early_otherwise_branch.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
elaborate_box_derefs.rs remove redundant imports 2023-12-10 10:56:22 +08:00
elaborate_drops.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
errors.rs Remove DiagnosticBuilderState. 2024-01-08 16:18:54 +11:00
ffi_unwind_calls.rs s/Generator/Coroutine/ 2023-10-20 21:10:38 +00:00
function_item_references.rs Fix clippy::needless_borrow in the compiler 2023-11-21 20:13:40 +01:00
gvn.rs Auto merge of #116012 - cjgillot:gvn-const, r=oli-obk 2023-12-30 03:45:58 +00:00
inline.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
instsimplify.rs remove redundant imports 2023-12-10 10:56:22 +08:00
jump_threading.rs Skip threading over no-op SetDiscriminant. 2024-01-07 00:28:20 +00:00
large_enums.rs Fix some comments 2023-12-28 12:23:14 +08:00
lib.rs coverage: Indicate whether a block's successors allow BCB chaining 2024-01-14 12:11:25 +11:00
lint.rs Migrate memory overlap check from validator to lint 2024-01-04 23:32:22 +01:00
lower_intrinsics.rs remove redundant imports 2023-12-10 10:56:22 +08:00
lower_slice_len.rs remove redundant imports 2023-12-10 10:56:22 +08:00
match_branches.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
multiple_return_terminators.rs remove redundant imports 2023-12-10 10:56:22 +08:00
normalize_array_len.rs remove redundant imports 2023-12-10 10:56:22 +08:00
nrvo.rs add some comments explaining why MIR opts are marked as unsound 2023-10-10 11:17:27 +02:00
pass_manager.rs Fix validation and linting of injected MIR 2024-01-04 23:06:42 +01:00
prettify.rs remove redundant imports 2023-12-10 10:56:22 +08:00
promote_consts.rs Make match exhaustive. 2024-01-08 22:42:07 +00:00
ref_prop.rs Don't require owned data in MaybeStorageDead 2023-12-21 12:58:39 +01:00
remove_noop_landing_pads.rs remove redundant imports 2023-12-10 10:56:22 +08:00
remove_place_mention.rs remove redundant imports 2023-12-10 10:56:22 +08:00
remove_storage_markers.rs remove redundant imports 2023-12-10 10:56:22 +08:00
remove_uninit_drops.rs remove redundant imports 2023-12-10 10:56:22 +08:00
remove_unneeded_drops.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
remove_zsts.rs remove redundant imports 2023-12-10 10:56:22 +08:00
required_consts.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
reveal_all.rs remove redundant imports 2023-12-10 10:56:22 +08:00
separate_const_switch.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
shim.rs Movability doesn't need to be a query anymore 2023-12-28 16:35:01 +00:00
simplify.rs Merge dead bb pruning and unreachable bb deduplication. 2024-01-07 15:12:10 +00:00
simplify_branches.rs remove redundant imports 2023-12-10 10:56:22 +08:00
simplify_comparison_integral.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
sroa.rs remove redundant imports 2023-12-10 10:56:22 +08:00
ssa.rs Inline dominator check. 2023-12-31 00:37:45 +00:00
uninhabited_enum_branching.rs Fix clippy::needless_borrow in the compiler 2023-11-21 20:13:40 +01:00
unreachable_prop.rs rustc_mir_transform: Enforce rustc::potential_query_instability lint 2024-01-06 19:09:04 +01:00