1
Fork 0
rust/compiler/rustc_mir_transform/src
Zalathar 6da319f635 coverage: Store all of a function's mappings in function coverage info
Previously, mappings were attached to individual coverage statements in MIR.
That necessitated special handling in MIR optimizations to avoid deleting those
statements, since otherwise codegen would be unable to reassemble the original
list of mappings.

With this change, a function's list of mappings is now attached to its MIR
body, and survives intact even if individual statements are deleted by
optimizations.
2023-10-18 23:42:39 +11:00
..
coverage coverage: Store all of a function's mappings in function coverage info 2023-10-18 23:42:39 +11:00
inline subst -> instantiate 2023-09-26 09:37:55 +02:00
abort_unwinding_calls.rs when terminating during unwinding, show the reason why 2023-08-24 13:28:26 +02:00
add_call_guards.rs when terminating during unwinding, show the reason why 2023-08-24 13:28:26 +02:00
add_moves_for_packed_drops.rs Remove DesugaringKind::Replace. 2023-05-25 17:40:46 +00:00
add_retag.rs cleanup misinformation regarding has_deref 2023-08-06 17:29:09 +03:00
add_subtyping_projections.rs move subtyper change reveal_all 2023-10-05 18:56:30 +03:00
check_alignment.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
check_const_item_mutation.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
check_packed_ref.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
check_unsafety.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
cleanup_post_borrowck.rs Actually keep PlaceMention if requested. 2023-04-21 21:34:59 +00:00
const_debuginfo.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
const_goto.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
const_prop.rs Auto merge of #116688 - compiler-errors:rustfmt-up, r=WaffleLapkin,Nilstrieb 2023-10-15 13:23:55 +00:00
const_prop_lint.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
copy_prop.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
cross_crate_inline.rs Automatically enable cross-crate inlining for small functions 2023-10-17 19:53:51 -04:00
ctfe_limit.rs Simplify back-edge logic. 2023-05-17 12:18:55 +00:00
dataflow_const_prop.rs const-eval: make misalignment a hard error 2023-09-26 15:32:55 +02:00
dead_store_elimination.rs Preserve DebugInfo in DeadStoreElimination. 2023-10-06 15:46:11 +00:00
deduce_param_attrs.rs Normalize before checking if local is freeze in deduced_param_attrs 2023-08-17 14:33:24 -07:00
deduplicate_blocks.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
deref_separator.rs Remove mir::LocalDecl::internal. 2023-10-04 17:55:15 +00:00
dest_prop.rs when terminating during unwinding, show the reason why 2023-08-24 13:28:26 +02: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 add some comments explaining why MIR opts are marked as unsound 2023-10-10 11:17:27 +02:00
elaborate_box_derefs.rs Remove mir::LocalDecl::internal. 2023-10-04 17:55:15 +00:00
elaborate_drops.rs Remove mir::LocalDecl::internal. 2023-10-04 17:55:15 +00:00
errors.rs Do not construct def_path_str for MustNotSuspend. 2023-09-23 13:14:57 +00:00
ffi_unwind_calls.rs feat: riscv-interrupt-{m,s} calling conventions 2023-08-08 18:09:56 -07:00
function_item_references.rs inline format!() args from rustc_codegen_llvm to the end (4) 2023-07-25 23:20:28 +02:00
generator.rs Remove mir::LocalDecl::internal. 2023-10-04 17:55:15 +00:00
gvn.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
inline.rs Automatically enable cross-crate inlining for small functions 2023-10-17 19:53:51 -04:00
instsimplify.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
large_enums.rs add some comments explaining why MIR opts are marked as unsound 2023-10-10 11:17:27 +02:00
lib.rs Automatically enable cross-crate inlining for small functions 2023-10-17 19:53:51 -04:00
lower_intrinsics.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
lower_slice_len.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
match_branches.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
multiple_return_terminators.rs inline format!() args from rustc_codegen_llvm to the end (4) 2023-07-25 23:20:28 +02:00
normalize_array_len.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00: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 Generate MIR pass names for profiling on the fly and pass the body DefId as argument 2023-09-13 13:41:19 +02:00
prettify.rs make reorder BB pass use cached RPO 2023-06-14 20:08:04 +00:00
ref_prop.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
remove_noop_landing_pads.rs when terminating during unwinding, show the reason why 2023-08-24 13:28:26 +02:00
remove_place_mention.rs Actually keep PlaceMention if requested. 2023-04-21 21:34:59 +00:00
remove_storage_markers.rs Make MIR basic blocks field public 2022-07-07 08:11:49 +02:00
remove_uninit_drops.rs Rename MaybeUnreachable. 2023-08-16 18:12:18 +00:00
remove_unneeded_drops.rs inline format!() args from rustc_codegen_llvm to the end (4) 2023-07-25 23:20:28 +02:00
remove_zsts.rs Format all the let chains in compiler 2023-10-13 08:59:36 +00:00
required_consts.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
reveal_all.rs move subtyper change reveal_all 2023-10-05 18:56:30 +03:00
separate_const_switch.rs when terminating during unwinding, show the reason why 2023-08-24 13:28:26 +02:00
shim.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
simplify.rs coverage: Store all of a function's mappings in function coverage info 2023-10-18 23:42:39 +11:00
simplify_branches.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
simplify_comparison_integral.rs rename mir::Constant -> mir::ConstOperand, mir::ConstKind -> mir::Const 2023-09-21 08:12:30 +02:00
sroa.rs Refactor how MIR represents composite debuginfo. 2023-09-05 17:20:07 +00:00
ssa.rs Also consider call and yield as MIR SSA. 2023-10-08 16:05:26 +00:00
uninhabited_enum_branching.rs Simplify some mir passes by using let chains 2023-10-09 05:22:31 +02:00
unreachable_prop.rs Skip MIR pass UnreachablePropagation when coverage is enabled 2023-09-26 20:18:43 +10:00